Drupal as a no-code / low-code tool
As our managing director Iztok pointed out in a recent tweet, Drupal’s approach to site building, while long predating the terms “no code” and “low code”, has always been very close to these two concepts. As an enterprise-first CMS, it has always strived to cater to less technical users who needed to create more complex digital experiences.
Even older versions of the platform gave a lot of power to editors and site builders, but since version 8, each new release additionally prioritized the experience of this user group. In a sense, Drupal has thus become the ultimate no-code / low-code tool without ever being marketed as such.
In this article, we’ll take a deeper dive into the no-code / low-code site building features of Drupal, taking a look at how they have evolved throughout the platform’s history and what current developments are further establishing Drupal as a top no-code / low-code solution.
Website & content management
In essence, the key feature of a content management system is the ability to create websites and publish content either using very little code (low code) or no code at all.
Modern no-code and low-code tools are very much like traditional content management platforms, only with a greater focus on site building rather than content creation, and of course taking into account the more complex, multifaceted nature of today’s digital experiences.
With Drupal, the initial setup does require a certain level of technical expertise (as opposed to a CMS such as WordPress, for example), but after the website is set up, non-technical users are free to make custom configuration and create content.
Granted, with earlier versions of Drupal, a no-code approach yielded a very bare-bones result, with only the most basic pages and content types; a low-code approach was needed for richer, more complex experiences, where developers enabled additional customization by adding and configuring contributed modules.
With each recent major release, however, Drupal’s no-code / low-code capabilities have been improving, with more and more contributed modules passing into core functionality and with several strategic initiatives to make Drupal both more beginner-friendly and more usable for non-technical users.
One of these initiatives is Project Browser, which aims to greatly facilitate one of the key tasks site builders are faced with when working with Drupal – finding and installing contributed modules. The Project Browser initiative will enable easy access to and overview of contrib modules to users who aren’t as familiar with developer tooling and processes.
One of the key pieces of functionality of a no-code / low-code tool is the ability to easily create rich landing pages and insert custom elements into these pages. These vary from more basic media assets to more complex interactive components such as forms, a ubiquitous element of the web.
Especially sought after for site builders today is efficient drag and drop page building functionality, one of the biggest selling points for platforms such as Wix or Squarespace.
Drupal has long offered a very similar functionality. In Drupal 7, site builders and editors could make use of Panels to easily create sophisticated and interactive pages. Panels were very much alike modern-day low-code and no-code tools, even offering WYSIWYG (what you see is what you get) and drag-and-drop editing.
However, during the time of D7, this functionality didn’t fit any of the main user types, as it was somewhat too advanced for basic site building and content creation, and not advanced enough for developers.
On top of that, content created with Panels is pretty much impossible to efficiently migrate to a newer Drupal version without custom code, and as such the feature was neither well accepted nor further developed.
In Drupal 8 and beyond, the same functionality is provided via Blocks and Paragraphs. Blocks are less user-friendly and require more technical knowledge, and are as such a better fit for the administrator user types. They are typically reusable, have a more detailed logic and are closer to architectural elements than to content.
Paragraphs were intended as a more user-friendly version of Blocks, with a more intuitive user interface, and aimed primarily at content creators, editors and site builders. Unless specifically defined, they are one-off and not reusable. Putting it super bluntly: Blocks are closer to low-code tools, while Paragraphs are closer to no code.
More recently, site building with blocks has also been adopted by WordPress, the biggest open-source CMS, in the form of the Gutenberg block editor.
Interestingly, a successor of Panels, Layout Builder, is the Gutenberg equivalent in Drupal, offering editors an efficient way of working with blocks, specifically intended for the management of page layout and as such giving them more control over the presentation of their content.
The Layout Builder provides a user-friendly drag-and-drop interface as well as real-time content preview in the back end, two of the most essential features of no-code / low-code tools. Best of all, editors are able to leverage the Layout Builder in conjunction with Paragraphs, using the former for more complex and the latter for more basic content types.
Besides out-of-the-box Drupal functionality, there exist a number of custom site builder & editor tools in the Drupal ecosystem, such as the DXPR Builder, or Layout Paragraphs and the Mercury Editor built by Aten Design Group.
WYSIWYG and live preview
The default editor of Drupal is CKEditor (migrating to the latest version 5 with Drupal 10), an intuitive HTML editor with WYSIWYG functionality. It also allows previewing content (although not in real time) when using a coupled architecture.
For headless / decoupled content management systems (Drupal included), previewing is still the number one desired feature, typically only provided in decoupled-first CMS platforms. However, the NextJS & Drupal integration developed by Chapter Three, Next-Drupal, does enable live previewing, as does the GatsbyJS integration.
Drupal is for ambitious site builders
Drupal’s founder Dries Buytaert recently proposed that Drupal’s vision statement be adjusted from “Drupal is for ambitious digital experiences” to “Drupal is for ambitious site builders”. But what and who exactly is an ambitious site builder?
Ambitious site builders are users that want more than just creating simple landing pages and basic content types, who need to be empowered to create richer, more complex digital experiences without in-depth knowledge of a programming language or a development framework.
An equivalent term from the broader digital ecosystem is a citizen developer: someone who is digitally native, and is at once user and content creator. The expectation is that, with the rise and evolution of low-code and no-code tools, pretty much everyone will be able to become a citizen developer.
Due to the abundance of frameworks and other tools for creating digital content/experiences, Drupal has fallen out of favor with new generations of developers and content creators, with many not even ever having heard of the framework, and many more having only done so in a negative light.
Another major reason for this has been Drupal’s steep learning curve making it less user-friendly than equivalent tools – but recent strategic initiatives, such as the aforementioned Project Browser initiative, have been specifically designed to remedy this and bring Drupal closer to beginner / non-technical users.
Perhaps even more important here is the Easy out of the box initiative, the goal of which is to “attract new and novice users to Drupal by improving the editorial experience from the moment Drupal is installed.” It achieves this by providing the Media Library, the new admin theme Claro and the Layout Builder as system defaults.
Vendor lock-in & third-party integration
One of the main issues of modern no-code / low-code tools is lacking support for third-party integrations, as the functionality is very often limited to the core features of the platform.
However, since migrating your content off such a platform can be incredibly difficult and time consuming, this typically means that you’re dependent on the platform provider for new functionality, leading to vendor lock-in.
Not only does Drupal not have these problems with third-party integrations, it’s actually particularly streamlined for integrating with various third-party tools thanks to its strong API support.
On top of that, Drupal’s open-source nature means you have access to a wide range of freely available modules providing features not available in core (the number of which is diminishing thanks to all the recent optimizations to Drupal Core). It’s an API-first platform prioritizing integration, which has recently only become more pronounced thanks to its enterprise focus.
As we have shown throughout this article, Drupal is and has for a long time been offering the same features that the top low-code / no-code tools prioritize today. Just like with many other technology trends, no code and low code are little more than new buzzwords for something that has long been a part of the ecosystem.