CMS for FastStore storefronts
For documentation about Headless CMS (legacy) used with FastStore versions earlier than
3, see the Headless CMS (legacy) track.
The CMS is a VTEX content management system for defining, storing, and delivering storefront content. It currently supports FastStore storefronts, with planned support for headless storefronts. It provides a structured approach to content modeling, collaborative editing, and reliable distribution, supporting both editorial teams and developers working on large-scale commerce experiences.
The system follows a decoupled architecture that separates content authoring from content consumption. This separation allows content management workflows and content delivery workloads to evolve and scale independently.
Technical overview
| Aspect | Description |
|---|---|
| Performance | Read-optimized data access for content consumption during storefront builds. |
| Reliability | Event-driven architecture with message queues ensuring no content updates are lost. |
| Scalability | Independent scaling of content authoring (write) and content delivery (read) workloads, enabled by a command-query separation (CQRS) model. |
| Developer experience | Schema-first configuration, CLI-based operations, and compatibility with source control systems. |
| Collaboration | Git-like branching workflows, multi-user awareness, and content approval processes. |
| Localization | Built-in support for multiple locales with automatic language fallback rules. |
Main features
Content modeling
Define content structures using JSON Schema with support for:
- Content Types: Page structures like
home,pdp,plp, andlandingPage. - Components: Reusable building blocks with metadata like
$componentKeyand$componentTitle. See Understanding components and sections for details. - Content referencing: Reference entries across multiple pages without duplication.
- Schema extension: Inherit properties from base schemas using the
$extendskeyword.
Content editing
Manage content through the VTEX Admin using:
- AI content generation: Generate and improve content with integrated AI services.
- Branching workflow: Create isolated branches, preview changes, and merge to publish.
- Version history: Track changes, compare versions, and restore previous content.
- Multi-user awareness: See when others are editing the same content.
- Scheduled publishing: Schedule content to go live at specific dates and times.
Media management
Organize and reuse media assets with:
- Media Gallery: Central repository for images and video references. See Media gallery for details.
- Image formats: PNG, JPG, JPEG, GIF, SVG, and WebP.
- Video embedding: Reference videos from YouTube, Vimeo, and other services.
Developer tools
Build and manage schemas with:
- Content plugin: Commands for schema generation, splitting, and uploading (
@vtex/cli-plugin-content). - Modular schemas: Individual
.jsoncfiles for components and Content Types. - Role-based permissions: Granular access control for editors, reviewers, and administrators.
Branch synchronization
Content branches stay synchronized with the main branch through:
- Automatic updates: While an editor works in a branch, new content published to the main branch is merged into that branch automatically, so they continue from the current state of the store instead of an outdated copy.
- Conflict resolution: When the same content is changed in both the branch and the main branch, the version in the branch is preserved.
For details on this behavior, see Versions and branches.
The CMS development and content journey
Going from a schema to a live storefront involves the following: developers shape and test the content structure, and content operators create and publish the content itself. See Getting started with CMS to find your track and where to start.