dotCMS R&D: A Look Back at 2022 and Ahead at What’s to ComeJan 19, 2023
Last year proved to be a big one for the growth of dotCMS. The R&D team doubled down on making the platform more performant, secure and easier to use, with more than 600 improvements made across nine releases. A few of our big accomplishments included:
- The Block Editor, our new flagship content field, simplifies rich content creation for traditional and headless implementations.
- The new Content Palette makes Edit Mode even easier.
- Configuration can be handled by environment variables instead of editing properties files, which simplifies administration in a container environment.
- All content is now stored as JSON, with no limit to the number of fields.
- We’ve built a new, more performant OSGi plugin framework.
- dotCDN is now a core feature.
- A smaller footprint: We’ve decreased our memory usage significantly!
- The Swagger-based API Playground allows quick reference to, and testing of, all API endpoints.
- Backing up assets and databases is now a simple, push-button operation.
- We’ve refactored our codebase into a monorepo, and updated many libraries and dependencies, including Gradle, Dojo, Angular, PrimeNG and Next.js.
And that’s far from all; we’ve also added new templating features, headless widgets capable of outputting JSON, a built-in app for Prerender.io support, countless optimizations and fixes, simpler integrations, and more.
Security Is Foundational
Earlier this year, we welcomed Mehdi Karimi, Ph.D. as our new director of cybersecurity to lead us in maintaining the highest levels of security in the industry. dotCMS (re)achieved SOC2 Type 2 certification with no exceptions for 2022. Most recently, we received authorization as a CVE Numbering Authority. In addition, we have a strong security roadmap in place for this year, including data privacy GDPR/CCPA certification, ISO 27001 certification, and setting up a formal vulnerability/bug bounty program that would allow us to publish and engage with security researchers. Moreover, we recently incorporated SonarQube into our workflow, making regular static code-security analysis an ongoing part of our development process.
The Roadmapping Process
We follow a tried and true methodology for our roadmap.
- Now: What is being worked on currently?
- Next: What is prioritized in the pipeline? Approx. 3-6 months away.
- Later: Ideas that still require more prioritization and planning. Approx. 9-12 months away.
You can view the complete roadmap here. We also welcome ideas and advocates, and public feedback via email: email@example.com.
23.01 - The Latest Agile Release
The latest version of dotCMS features updates to the Block Editor, new templating tools, and other content-related improvements.
Block Editor Goodness
We first rolled out the Block Editor in version 22.05, and it’s improved steadily since, quickly becoming one of the most important pieces in our content arsenal. The Block Editor offers rich editing for both headless and traditional implementations, the ability to embed and render user-created content in a variety of ways, simple image handling, and more.
Here’s what we’ve added to it in version 23.01 alone:
- New Table blocks for convenient data presentation
- More options for importing and handling images — drag and drop; paste a link and then import with a click; browse images through a new menu; and more
- Inline editing of Block Editor content within Edit Mode
- An interface to set whitelists of content or block types
- Expanded support for history operations (i.e., undo and redo)
When making edits using the Block Editor, content is stored as JSON objects under the hood. That JSON is then parsed and dropped into a component, and that component can deliver content in any way you see fit.
In the near future, we plan to introduce:
- New media and image controls
- Support for custom controls/blocks
- Inline image editing
Other 23.01 Improvements
- We’ve added a new Velocity playground for testing or debugging your code
- The new Dotcache Viewtool allows generic object caching
- File metadata is now accessible via API
- New REST API endpoints for “deep copying” of pages and content
- Categories menu now allows quick navigation between parent and child categories
“Browserless” Page Management
- Dedicated Page Manager screen
- “Star” pages as Favorites, with thumbnails
- One-click access to Edit Mode for Editors
Marketing teams accustomed to platforms like WordPress will be able to discover pages more easily and quickly edit, copy and generally streamline how they work within dotCMS.
Experiments and A/B Testing
- Page based
- Headless first
- Bayesian predictive results to improve relevancy with smaller data sets
- URL and event-based objectives
- UI currently being built
Modeled after best-of-breed systems, experiments and A/B testing will allow dotCMS users to add experiments to different pages to create and monitor variants without interrupting your flow.
An integration of integrations, this allows you to push content to Zapier as content moves through a workflow process. For example, push to Slack, Google Drive, or any 3rd party system. dotCMS users will also be able to Ingest content from Zapier, for example, add/edit content objects using Google sheets.
CI/CD: dotCMS CLI Binary
Version 2.0 of our CLI will be moved out of bash and into Quarkus. This microframework allows developers to write Java that can be compiled down to binaries that are executable on all platforms. Part of this process will include redefining some of our APIs.
Some of the other features that we hope to implement in the future are:
- SEO, A11y, and Page Speed: Built-in SEO and accessibility tests on your pages to ensure best practices when delivering pages and sites and measure actual page performance.
- Revamp Content Search/Edit
- Global Content Labels (was Tagegories)
- Multi-cloud Support for dotCMS Cloud on AWS and GCP
See a demo of some of these latest updates in our Fall Update Webinar: dotCMS Fall 2022 Product Update.