content_packages
Content Packages provides a Git-friendly workflow for managing selected Drupal content as canonical package files with YAML front matter. It validates, imports, exports, and diffs package files against Drupal content entities so teams can review content changes in the same process as code and configuration.
Features
- Validate content package files before import.
- Import packages into Drupal content entities and upsert by UUID.
- Export Drupal content entities back to canonical package files.
- Diff package files against Drupal entity values to detect drift.
- Support legacy node Markdown packages and schema v2 content entity packages.
- Handle package-relative file/image assets, media references, Paragraphs/composite content, and explicit translations where supporting modules are installed.
Post-Installation
Enable the module, then use the Drush commands to validate, import, export, and diff package files. The default package type supports legacy node Markdown body packages. Generic schema v2 content entity packages can be used with the content_entity package type, and site-specific package type plugins can define bundle-specific mappings.
Additional Requirements
The module requires the CommonMark and HTML-to-Markdown PHP libraries through Composer. Optional integrations activate only when supporting modules such as Media, Entity Reference Revisions, and Paragraphs are installed.
Recommended modules/libraries
No additional modules are required for the core workflow. Media and Paragraphs support is available when those modules are installed for the site.
Similar projects
Single Content Sync is a better fit for broad site-wide entity synchronization and UI-driven workflows. Default Content is a better fit for install-time content shipped with modules, recipes, distributions, or install profiles. Content Packages focuses on selected content that should live in Git as reviewable package files.
Supporting this Module
Use the Drupal.org issue queue for bug reports, support requests, and feature discussions.
Community Documentation
See the project README for package formats, commands, and plugin examples.