Apostrophe is an open-source Node.js headless content management system that delivers structured content through REST APIs while providing a visual in-context page editor for live editing. It is built on a module-based plugin architecture that extends CMS functionality through reusable modules, each encapsulating logic, configuration, and templates. The system uses schema-driven content modeling to define data structures and validation rules through configurable schemas and custom field types, with all content stored as flexible JSON-like documents in MongoDB.
The platform distinguishes itself through multi-site management capabilities that coordinate multiple websites and shared resources from a single installation, enabling centralized administration and resource sharing. It supports enterprise content governance with granular user roles and permissions for content approval, publishing, and site-wide administration across teams. The system provides multilingual content translation with automated AI-powered translation and locale management, alongside visual in-page editing that lets content creators modify text and media directly on live pages with a WYSIWYG interface and real-time preview at different breakpoints.
The CMS offers comprehensive content and media management including rich text editing, file uploads with cloud storage support, responsive breakpoint previews, and reusable widget types. It includes a REST API with automatic route generation, webhook registration for external integrations, and framework bridges for Astro and Gatsby frontends. The system supports both MongoDB and PostgreSQL database backends, with capabilities for batch content operations, draft publishing, content duplication, and permanent deletion.