Is Drupal the right solution for my project?
Drupal is a Content Management System (CMS), but the community prefers to call it Content Management Framework because of its versatility and the wide range of use cases it can cover.
We will stay in the PHP world to answer this question.
- A blog, a single language site with a few pages. Consider Wordpress (opens in a new tab), also read this post from Dries Buytaert about the State of Drupal in 2017 (opens in a new tab) "Drupal is no longer for simple sites".
- A simple website with Developer Experience inspired from Drupal 7. Have a look at the Backdrop (opens in a new tab) fork of Drupal. If you come from Drupal 6 or 7 the list of modules (opens in a new tab) should look familiar.
- An e-commerce website. Consider Magento (opens in a new tab), or give Drupal Commerce a try.
- A community building site? Try Drupal Open Social (opens in a new tab).
- A decoupled frontend based on React (Gatsby, Next.js), Vue.js, ... Try Next.js for Drupal (opens in a new tab) or just install the Drupal core with JSON API (opens in a new tab) or GraphQL (opens in a new tab).
- An application focused on business logic. Consider Laravel (opens in a new tab).
- A marketing automation platform? Think about Mautic (opens in a new tab).
- A solution that plays well with CiviCRM (opens in a new tab) (e.g. webforms for events or mailing list, contact to user mapping, ...), an award website, a crowdfunding platform, a umbrella association website, ... . Your criteria are multi-user based, multilingual, web service capable, evolutive, secure, enterprise level and stable. Well, you are definitely on the right place to start with Drupal.
SaaS Solutions are all the rage since a few years (Contentful, Prismic, ...) so why should we use Drupal instead? Indeed, depending on the content model and requirement, that might be a good fit for your project.
Some key points are still making Drupal a good candidate for a decoupled CMS
- It is mature (to not say "boring") technology, there are more than 20 years of edge case debugging behind. This comes with the luxury of having a stable, well tested and predictable ecosystem
- Content is king
- Flexible content models is its strength, no matter which use case you throw at it, there is a solution
- Content moderation and complex Workflows are customizable easily
- Content can be delivered to several Drupal instances
- With JSON:API or GraphQL, you can deliver to any frontend
- The access control layer is one of the most fine grained and complete
- It is fully multilingual, and translation sync is possible at a field level
- It easily enables integration to translation jobs automation (machine translation, ...) or third party systems
- There is freedom of choice, with multiple editorial approaches (CKEditor 5, Layout Builder, Paragraphs, Gutenberg, ...)
- There is no licence to pay by user, page, ...
- It has a powerful migration system if you are coming from another solution
Drupal makes the difference with other systems on the following points.
They are exposed from a persona perspective.
Never get stucked again. If your Drupal projects grows in terms of features and data model, Drupal has the flexibility of a good friend.
- Fully multilingual
- Community features
Fine grained permission system and publication workflow.
- Third party integration
With web services, spread your content on several channels or applications (Drupal frontend, React, Apple watch, ...). It also allows you to integrate it with third parties applications (CRM, ERP, …).
The Drupal Security team (opens in a new tab) is working hard to keep the Drupal core and contributed projects secure.
Your project can also grow in terms of traffic and content, Drupal comes out of the box with progressive solutions of caching.
For small projects, just enable the page and blocks caching + the CSS/JS aggregation in two clicks. For more advanced projects, use cache tags, lazy builder or a Varnish proxy. For performance, have a look at the Big Pipe module that is now stable in core.
- Content authoring and workflow
Out of the box CKEditor 5 (WYSIWYG), Media handler, content revision, publication workflow, scheduled publication, … All that you can imagine as an author is just waiting for you.
Drupal is fully multilingual. You can translate everything (content, configuration, …) in any language.
You can also translate your content in several languages and switch between them easily.
- Multiple editorial experiences
Drupal is not a one size fits all solution. You can choose between several editorial experiences (CKEditor 5, Layout Builder, Paragraphs, Gutenberg, ...).
Check out the Editorial solutions.
Drupal comes out of the box ("in core") with a responsive administration UI and frontend theme, Responsive images and Breakpoint modules.
- Divitis and classitis free
These are (almost) things from the past. Drupal comes with clean semantic markup out of the box.
Drupal is committed to accessibility. The Accessibility Statement (opens in a new tab) is a good starting point.
- Frontend and backend themes
Drupal comes with a default frontend theme (Bartik) and a default backend theme (Seven).
The frontend theme is a good starting point for your own theme.
The backend theme can be used as a base theme for your own administration theme.
Both are responsive and mobile-first.
Drupal can be API first. It means that you can use Drupal as a backend with any frontend technology.
There are also several contributed modules to help you to build a decoupled Drupal website.
Have a look at the Web services and decoupling modules.
- Wonderful APIs for developers
Probably one of the biggest strength of Drupal: the Developer Experience (DX).
There was almost a U turn between Drupal 7 and 8 and the amount of work to get there was *huge*, but wait we are now on Drupal 10 which became incredibly mature. Read more over Drupal APIs (opens in a new tab)
- A talented and welcoming community
Another biggest one :). The place doesn’t matter: the issue queue (opens in a new tab), Slack (opens in a new tab), Drupal events, there will always be someone to help, even if you are a beginner.
- Based on well adopted standards
One of the main criticism of Drupal 7 were the Drupalisms (custom solutions and jargon).
Drupal now is off its island and based on vendors like Symfony, Composer, PHP Unit, ...
- A predictable and progressive release cycle (opens in a new tab)
- Web services
The Drupal core provides a RESTful Web Services module. The JSON:API (opens in a new tab) standard is also in core and GraphQL (opens in a new tab) is supported by a contributed module.
- Content and configuration migration (opens in a new tab) helpers
Continue reading on Drupal.com (opens in a new tab)
Drupal 7 EOL is January 5, 2025 (opens in a new tab).
Two Drupal modules help you move your Drupal 7 site to Drupal 10 but Retrofit (opens in a new tab) is the star. Keeping 400,000 Drupal Sites in the Family (opens in a new tab) - The Drop Times.