React, Flux, GraphQL, Hack, HHVM...? All of this and more!
Drupal is a popular Open Source CMS. The project is over 17 years old and it is showing in it's architecture. Constant expansion of features has left the admin interface lacking to contemporary rivals.
In 2017 project lead Dried Buytaert signalled Drupal will use React.js to salvage the user experience.
As Drupal continues to move to the Enterprise Content Management Market, it is somewhat struggling to keep up with nimble competitors like WordPress, Contentful and Open Source Headless CMSes. it keeps reinventing itself. After doing partial modernisation of the server backend in Drupal 8 with Symfony PHP components, the project is now focusing on front end matters.
Since the announcement was made back in October 2017, there was a period of discussions on whether this was a good choice for the system. In an apparent attempt to look at alternatives in a public message on the project page: React for building Drupal’s administrative UIs: Proposal to experiment with React for building Drupal’s administrative UIs
The decision was supposed to be made prior to Q1, when development of Drupal 8.6.0 starts - but we have not heard anything yet. Alternatives like Vue.js and Web Components were suggested, but the decision to go with React.js for modernising the Front End Development of Drupal is arguably already made. Acquia, the company leading Drupal development already uses React.js for their internal tools.
The administration interface of Drupal won't see a full rewrite, rather a gradual move from older technologies like jQuery and Backbone. Following the lead of Automattic, who chose React for their WordPress.com service in 2015, Drupal is now following suite and adds a new library in React.js.
Since it's focus on Enterprise, the project has suffered some lack of grass roots adoption as it is no longer a friendly starter platform, an area where agile tools like Headless CMSes with GraphQL are more rewarding to developers. On the other hand an open source platform can find it difficult to produce a user experience that proprietary Enterprise grade products from Adobe or SiteCore can provice.
The development of the front end development in the Drupal landscape will be more clear in the latter part of 2018 when the first features using the library are expected to land. It's noteworthy that this change only applies to the administration interface. Rendering React components in Drupal themes is possible, but this is not an area of focus for React in the Drupal core project now.Tweet