Menu
Guides
API Reference

Guides

CMS for FastStore storefronts

3 min read

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

AspectDescription
PerformanceRead-optimized data access for content consumption during storefront builds.
ReliabilityEvent-driven architecture with message queues ensuring no content updates are lost.
ScalabilityIndependent scaling of content authoring (write) and content delivery (read) workloads, enabled by a command-query separation (CQRS) model.
Developer experienceSchema-first configuration, CLI-based operations, and compatibility with source control systems.
CollaborationGit-like branching workflows, multi-user awareness, and content approval processes.
LocalizationBuilt-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, and landingPage.
  • Components: Reusable building blocks with metadata like $componentKey and $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 $extends keyword.

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.
  • 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 .jsonc files 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 editors continue from the current state of the store instead of an outdated copy.
  • Conflict resolution: When the same content was changed in both the branch and the main branch, the version in the branch is preserved.

For details on this behavior, see Collaboration workflows.

Multi-account content

Content management scales across several VTEX accounts through:

  • Content isolation: Each VTEX account has its own CMS instance, so content is isolated between accounts by default. An editor working in one account can't view or change content in another, and each market's team can manage its own content independently, without any additional configuration.
  • Shared schema structure: Schemas live in the storefront repository and must be published separately to each account's CMS. Publishing the same schema to every account keeps components consistent across stores. See Continuous integration for FastStore projects.
  • No content sharing: Pages and media that should appear identically in every market aren't copied between accounts automatically and have to be recreated in each one.

Next steps

Upgrading from Headless CMS (legacy) to CMS
Learn about the architectural and code-level changes when migrating from Headless CMS (legacy) to the CMS.