TL;DR
Strapi v4.0.0-beta.13 introduces significant enhancements to the admin UI with Typography system integration across multiple sections, improved GraphQL capabilities including subscriptions support, better filtering options, and several UX improvements. The release also adds a "Coming Soon" marketplace page, WYSIWYG Media Library integration, and fixes numerous bugs related to filters, components, and API functionality.
Highlight of the Release
- GraphQL subscriptions support for real-time data capabilities
- Typography system integration across multiple admin sections for consistent UI
- New content-type generator in CLI for improved developer experience
- WYSIWYG Media Library integration for better content editing
- Coming Soon marketplace page preview
- Enhanced filtering capabilities in GraphQL and Content Manager
- Improved error states and validation in components
Migration Guide
Upgrading from v4.0.0-beta.12 to v4.0.0-beta.13
GraphQL Changes
If you're using GraphQL, be aware that this version introduces subscriptions support (disabled by default) and fixes several filtering issues. To enable subscriptions:
// config/plugins.js
module.exports = {
graphql: {
config: {
subscriptions: true,
},
},
};
Typography System
This release continues the migration to the new Typography system. If you've built custom admin plugins that use the old Text components, consider updating them to use Typography components instead.
Database Options
New database options are available:
schema: Specify a database schema
forceMigration: Force database migrations
These can be configured in your database configuration file.
Content Manager Changes
The Content Manager now displays createdAt and updatedAt fields in list views and filters. If you've customized your Content Manager layouts, you might want to review these changes.
Upgrade Recommendations
This beta release contains significant improvements to the GraphQL functionality, UI consistency through Typography integration, and fixes several critical bugs. We recommend upgrading to this version if you:
- Use GraphQL in your project, especially if you've encountered filtering issues
- Need real-time data capabilities through GraphQL subscriptions
- Have experienced 500 errors with empty body requests
- Want access to the improved content editing experience with WYSIWYG Media Library integration
- Need better timestamp filtering in the Content Manager
As this is still a beta release, we recommend testing thoroughly in a development environment before deploying to production. Pay special attention to GraphQL queries and any custom admin extensions you may have developed.
Bug Fixes
GraphQL Fixes
- Fixed component filtering in GraphQL queries
- Fixed DynamicZone queries for GraphQL
- Fixed datetime filtering on GraphQL
- Fixed manually added timestamps in GraphQL types definition
UI and Form Fixes
- Fixed number input handling of falsy values
- Fixed spacing for multiple relations
- Fixed allowedTypes when undefined in file uploads
- Fixed headings in users and application pages
- Fixed label and chevron font-weight and color on hover/active states
- Fixed content box title font weight
Filter Fixes
- Fixed datetime in filters for Content Manager and Media Library
- Fixed date filtering by not treating date objects as operators groups
- Fixed filters for upload plugin
API and Data Fixes
- Fixed 500 errors when creating/updating with empty body
- Fixed missing default value for params in entity-service.load
- Fixed documentation plugin access issues
- Fixed CTB default values handling
- Fixed component validation for required minimum validation
New Features
GraphQL Subscriptions
Added support for GraphQL subscriptions, allowing real-time data updates. This feature is disabled by default but can be enabled through configuration.
Coming Soon Marketplace Page
Added a preview page for the upcoming marketplace functionality, giving users a glimpse of future plugin discovery and installation capabilities.
WYSIWYG Media Library Integration
Enhanced the WYSIWYG editor with direct Media Library integration, improving the content creation experience.
Content-Type Generator CLI
Improved the CLI with a dedicated content-type generator, making it easier to scaffold new content types.
Timestamps in Content Manager
Added createdAt and updatedAt fields back into the Content Manager layouts and filters, improving content management capabilities.
Empty States in Media Library
Added improved empty state visuals in the Media Library for better user experience when no media is present.
Local File Editing Before Upload
Added capability to edit local files before uploading them to the Media Library.
Access Token Query Parameter
Added support for access_token query parameter for authentication, providing more flexibility in API access.
Security Updates
User Information Sanitization
Enhanced sanitization of user information for email templates and throughout the system, improving data security.
First Admin Differentiation
Added functionality to differentiate the first admin user, improving security management capabilities.
CSP Policy Fix
Fixed Content Security Policy for the Media Library, enhancing security protections.
Performance Improvements
Database Improvements
Added support for schema option and forceMigration options, providing more control over database migrations and potentially improving performance during deployments.
Sanitization Enhancements
Improved sanitization processes for user information and event handling, which can lead to better performance and security.
Buffetjs Dependencies Removal
Removed all Buffetjs dependencies, streamlining the codebase and potentially improving load times.
Impact Summary
Strapi v4.0.0-beta.13 represents a significant step forward in the v4 beta journey, with a strong focus on UI consistency through Typography system integration across multiple admin sections. The addition of GraphQL subscriptions opens up new real-time data capabilities for developers, while improvements to filtering, error states, and component validation enhance the overall user experience.
Content editors will benefit from the WYSIWYG Media Library integration and improved error states, making content creation more intuitive. Developers gain access to better CLI tools with the new content-type generator and enhanced database options.
The preview of the upcoming marketplace functionality hints at Strapi's direction toward a more integrated plugin ecosystem. Combined with the numerous bug fixes and UI improvements, this release significantly enhances both developer and user experiences while maintaining backward compatibility with previous beta versions.
Full Release Notes
Changes
- New content-type generator CLI
- Documentation plugin Fix
createdAt and updatedAt in the CM list view
- Graphql filtering on id and timestampes
- Fix 500 errors on empty body
- Database support schema option and add forceMigration option
- Graphql component filtering
- Typography Fixes
- Default values fix
- Accordion Error state
- Empty states in the Media Library
- Coming soon marketplace page
- WYSIWYG Media Library