Celebrating Drupal 10

Drupal 10: Top 10 New Features and Improvements

Drupal 10 release was on December 15, 2022

CKEditor 5 in Drupal 10

1. A new text editing experience with CKEditor 5

With Drupal 10 we're upgrading from CKEditor 4 to CKEditor 5. While the two versions are mostly very similar, version 5 looks more modern and refined. The interface is simplified, and certainly in UX design simplicity is the ultimate sophistication. Version 5 does not rely on right-click menus, making it more touch-device friendly than version 4.

When editing links and images in CKEditor 5 you have fewer options than in version 4. CKEditor 5 is clearly more specialized for the content editors' audience and not for the site-builders audience. If you ask us this is the way forward.

Olivero theme Drupal 10

2. A new look for Drupal 10: Meet Olivero theme

The Olivero theme takes on the important job of representing Drupal to new users and giving Drupal a face, and a brand. The theme looks more modern than its predecessor.

As Drupal core sets the standard for contrib it's great to see Olivero has excellent accessibility features. Unlike earlier Drupal core themes it has a clever dropdown menu system that ensures menu items don't disappear beyond the edges of the browser. Check out this Smashing Magazine article to learn more about these features.

The only thing we don't fancy is the RSS link that shows in the "Social bar" by default. Who still uses an RSS reader?

Claro admin theme

3. A modern admin theme: Claro

Perhaps more importantly, Drupal 10 also comes standard with another new theme that you'll actually be using. Whereas the Olivero theme is merely a placeholder in most projects, the new admin theme is where you'll be spending a lot of time at.

Verdict: Claro is a big upgrade both in user experience and in making Drupal look like a modern product. The "Seven" theme Claro replaces looks dated in 2022 and the new admin theme is a welcome change. Just look at the side-by-side comparison above.

Want to know a little secret? The team that designed claro maintains a sub-theme of Claro called "Gin". The Gin theme features cutting-edge modern features that are too hot for Drupal core. Check out the Gin project and see for yourself.

Claro admin theme

4. Find modules from inside your website with Project Browser

Another initiative where Drupal is looking out for small-business users is the project browser initiative. The project browser adds an interface to your Drupal website for discovering and installing contributed modules and themes. WordPress has had this functionality for a long time now but Drupal is trying to do a better job by checking for dependencies and incompatibilities automatically.

This would be a great win for Drupal since a major frustration for WordPress developers is the clashing and crashing of WordPress plugins. 

CMS Approval ratings * user experience level

5. Drupal 10 is easier out of the box

The chart above is based on a UX research project that showed Drupal has the lowest approval rating among new users but the highest rating among expert users. This prompted Drupal's founder Dries Buytaert to come up with an initiative to address the "beginners" audience.

The initiative bundles the three modules - Media, Layout Builder, Claro - that together, present a more user-friendly software to beginner users. These modules already existed in Drupal 9, but in Drupal 10 they are considered stable enough to be turned on by default.

Drupal automatic updates

6. Automatic Updates

Automatic updates have always been a controversial topic for Drupal. Big enterprise sites don't want it, small users don't want to endlessly spend time and money on weekly updates for Drupal core and the many additional modules that get added to a typical Drupal site.

This initiative is not going to be ready in time for the Drupal 10.0.0 release. This is probably the most complex Drupal 10 improvement both in terms of technology and in getting alignment in the Drupal community. Development of these features takes place in a contrib module that you can try today! Unfortunately, it's currently of limited use because it merely promises to update the Drupal core without breaking your site. Updating other modules and themes is still considered experimental.

Given the fact that many websites simply never install (security) updates, having automatic unattended updates could be a big security advantage for small-business Drupal websites. 

7. Easier migration from Drupal 9 to Drupal 10 with Drupal Rector

Major Drupal version updates used to be something to be feared. This is no longer the case. Part of the reason is that after the update from Drupal 7 to 8, the Drupal community decided to make updates easier in the future. The architecture in Drupal 8+ is sophisticated enough to make this possible.

The other part is Drupal rector. Drupal Rector was already available when Drupal 9 came out but the reason we include it here is that the tool has matured. Drupal rector is much more effective now and will automatically generate most of the changes needed to migrate your custom modules to Drupal 10. This will save precious developer hours and makes this major update smoother than ever.

The new starterkit theme we are working on is not going to serve as a base theme to be subthemed, but rather a theme to be copied on a new theme's creation.

Lauri Eskola, starterkit initiative lead

8. New workflow for theming Drupal 10

This is a big improvement for Drupal front-end developers, especially for developers who are new to Drupal. The first thing you want to do with a new CMS is to customize it to match your design and branding requirements. Yours truly has about 2 decades of experience customizing the front-end of CMS software and remembers when theming was a truly painful experience.

The change with Drupal 10 is that rather than sub-theming the Classy theme in Drupal 10 you are copying the starterkit theme and customizing it. That advantage is that you don't rely on a stuffy old base theme anymore that's frozen in Drupal core. I think it's also great for themers because they don't have to search the classy theme and copy files into their own theme, instead all the files are in their custom theme folder, in one convenient place.

Symfony 6 is just Symfony 5, without all the code that has been deprecated for two years. There is no new feature, no main change specific to version 6 because everything is already in Symfony 5.

Nicolas Grekas, Symfony core team

9. Better backend performance with PHP 8.2 and Symfony 6

Considering that the upgrade of the Symfony PHP platform is the reason we need to increment the major version number of Drupal 9 to Drupal 10 you'd expect some new features. Alas, Symfony 6 is just a spring cleanup.

Symfony 6 tosses out a lot of old deprecated code. This means we have to update our modules and themes that use dated Symfony APIs. Once we're all done with our spring cleaning our sites are taking advantage of the latest PHP and Symfony improvements and can be expected to perform better, providing a snappier experience to our end users. 

10. Work in progress: Better front-end performance by removing jQuery

Finally, Drupal is removing jQuery. For a long time, jQuery was a front-end developer's best friend. jQuery made Javascript less intimidating and let us do more heavy lifting with fewer lines of code.

Since jQuery's release in 2006, Javascript has improved tremendously, as one would expect after 16 years. jQuery is no longer needed because most of its features are incorporated into Javascript itself. Removing jQuery means that much of the heavy lifting it was doing will be done more efficiently by native functions.

The process of removing jQuery from Drupal 10 is ongoing. The core team is prioritizing the removal of jQuery plugins that are easy to remove before aiming for a complete cleaning out of jQuery code. Some of the progress that has been made:

  • "jQuery once" plugin removed
  • jQuery UI plugin is almost completely removed from core

Beyond removing plugins we have some challenges ahead, mainly replacing jQuery's event handling and AJAX features with plain javascript. Today in Drupal 10 it's already easy to not have jQuery load for your site's anonymous visitors, which is most important. Complete removal of jQuery for editors and site builders may take a few more years.

Author

DXPR Marketing Team