Drupal & React
The Coexistence of Drupal and React
React and Drupal can be used together to create amazing digital experiences. Knowing where to start and how to leverage the strengths of both can be challenging. The following are findings from the Design and Development Team.
Sticking with Drupal
There are a couple of different ways that React and Drupal can be used together. The React module in Drupal doesn't do anything out-of-the-box, but simply provides the react.js library via the Libraries API module.
Decoupling Drupal 7
Traditionally, Drupal sites are monolithic in the sense that Drupal is responsible for content management as well as rendering the front-end pages for the entire web site.
A site takes its first steps towards being decoupled when some component of the front end is being rendered by a system (in our case, ReactJS) other than Drupal.
That's really all there is to it.
- a layer of abstraction
- a content API
between the back-end content management system and the front-end rendering system.
The State of Drupal in 2019
Dries Buytaert, founder of Drupal, recently wrote his thoughts around the timeline for Drupal 9 and “end of life” for Drupal 7 and 8. We need to think about how this plays into the Classic Vacations timeline.
The migration may require us to create a new environment on the side, as we maintain the old environment with Drupal 7, because during the migration, we may have to setup new settings and reconfigure legacy settings. It will require our diligent attention in checking the settings from the previous site.
Documentation on Upgrading to Drupal 8
Co–op & Private Label
Conclusion: Drupal Upgrade
In addition to a booking flow, our website is a plays a vital role in the following:
- Co–op: promotion of our partners (hotels)
- Private Label: Travel Agents brand their services
Co–op is valuable product for Classic Vacations, because it creates an incredible amount of revenue each year. It is imperative that landing pages and web adverts remain online everday without fail. All of Co–op content is managed and displayed in Drupal 7. Private Label is a product we provide to Travel Agents for them to branding their services which we must keep consistently operating on the site.
React is Taking Off
CMS is Here to Stay – for Now
CMS platforms are not going to be replaced anytime soon. Furthermore, PHP, the language, powers 83% of total websites and plays a large part in CMS platforms. That’s not going to change quickly.
Drupal 8 and/or 9
Drupal 8 will be end-of-life by Nov 2021, as it’s completely based on Symfony 3 (which has an end-of-life date in November 2021). And after that time, there won’t be any support for Drupal 8. So everyone needs to migrate to Drupal 9 by then.
Drupal 9 will be released in 2020. It will be based on Symfony 4 or 5. If we decide to migrate to Drupal 8 now, we need to migrate again to Drupal 9 next year. For Drupal 7 also, it will be supported until Nov 2021. And even after that, they will probably launch some commercial long term support.
In my understanding, it’s better to stay in Drupal 7 for now and migrate to Drupal 9 once a stable version is released by mid-2020.
In my opinion, Drupal (any version) + Headless + Cloud together won’t be a problem.