Hello Apostrophe Community!
Apostrophe 4.26.0 introduces the new Styles module in open-source core, adds structured data support to the SEO module, and provides a new OpenAPI specification generator for custom API documentation.
Styles: Design Control for Everyone
We're excited to introduce the new Styles module in open-source ApostropheCMS. The feature is in beta for this initial release. This module provides visual style editing capabilities that were previously available only through our Pro Palette extension, and extends them with new per-widget styling functionality.
The Styles module allows content creators and designers to adjust colors, fonts, spacing, and other design elements directly from the frontend, with changes appearing instantly. Developers configure which CSS properties can be modified using familiar schema fields, and the module handles the rest.
What's new:
- Global Styles: Define site-wide design tokens that apply across your entire project
- Widget Styles: Create custom style variations for individual widget types, allowing editors to choose between predefined design options for each widget instance
- Zero Configuration: Access the styles interface from the admin bar without additional setup
For existing Palette users: Palette will continue to work, but we encourage migration to the new Global Styles feature. We've provided a migration task (migrate-to-styles) to help transition your existing palette configurations. While the new Styles feature is in beta this month, after Global Styles are declared stable the Palette module will be deprecated and receive only critical maintenance updates going forward.
Try it now: We've created styles-beta branches for both starter-kit-essentials and starter-kit-astro-essentials to make testing the new Global Styles module easy. You can also enable it in existing projects by following the documentation. We're actively seeking feedback on this new module, so please share your experience on our roadmap.
Structured Data for Enhanced SEO/AEO
The SEO module now includes JSON-LD structured data generation, helping your content appear in rich search results and improving discoverability by AI-powered answer engines.
This update adds comprehensive Schema.org markup for pages and pieces, with configurable structured data fields that give you control over how your content appears in search results. The module also generates anllms.txt files and updates robots.txt configurations to help AI systems better understand and reference your content.
Content managers can now configure organization information, article metadata, and other structured data directly through the familiar ApostropheCMS editing interface, without needing to understand JSON-LD syntax.
OpenAPI Documentation Generator
For developers building custom integrations and applications, we're releasing a new OpenAPI specification generator. This module automatically discovers all routes in your project—including custom piece types and Pro module endpoints—and generates comprehensive OpenAPI 3.1 documentation with zero configuration.
The generated specifications can be used to create client SDKs, test your APIs, and provide interactive documentation for your custom endpoints. This makes it significantly easier to build applications that integrate with your ApostropheCMS project's unique content model.
Additional Improvements
his release also includes several refinements to the editing experience:
- Enhanced Relationship Editing: Creating new content while editing relationships is now streamlined with a dedicated "New" button in the manager. Newly created documents are automatically selected for the relationship, reducing the number of steps needed to add related content.
- Rich Text Table Styling: Table styles are now available in the public build and can be customized through project-level stylesheets.
- Box Field Improvements: The box field type now displays units in the UI when provided and generates valid CSS properties.
These improvements are ready for you to explore! Update your projects with npm update and let us know what you think on our roadmap.
Want to test Global Styles? Check out the styles-beta branches in starter-kit-essentials and starter-kit-astro-essentials for pre-configured examples, or follow the documentation to enable it in your existing projects. Your feedback will help us refine this feature before we finalize it.
These improvements are ready for you to explore! Update your projects with npm update and let us know what you think on our roadmap.
🚀 Happy coding!