As a fresh member of Invotra team (and also of the web development world), the Drupal Show and Tell event hosted by Catch Digital was a very good and refreshing opportunity to meet some of the Drupal community members and, also, to get the picture on the power of Decoupled Drupal and React Js used together.
Firstly, I would like to thank the Catch Digital agency for hosting us at their amazing new studio in Soho (and for providing drinks and pizza), but also to my team who made sure I was included in this event.
Both the Catch Digital team and my colleagues Billy Clackers and Nqobile Dube gave awesome talks on what their teams have achieved using Drupal and how they plan on making even better products using this technology.
“Reacting to progressively decoupled Drupal” was the first talk we had from the Catch team followed by my Invotra colleagues who presented “How we leveraged Drupal to build a leading SaaS product” and the challenges we had to overcome by doing that.
So what is Drupal?
Drupal is an open source CMS which has a very long list of websites that it powers. Also, it serves as a store for the database. It has a good reputation for reliable performance and excellent security, being trusted with their data by organisations such as the White House, the Grammy Awards, and stars and sports of all kinds.
This content management system also makes it possible for non-technical users to create, publish or edit content on a website.
But when we are talking about Drupal from a web developer’s point of view, Drupal is a monolithic CMS and it has been used to create monolithic applications since its very beginning. Drupal controls both back end and front end in a single system.
What is Decoupled Drupal?
Decoupled Drupal is the use of Drupal for content management while the front end is a separate component which communicates with the CMS through an API.
Decoupled CMS architecture became more and more popular for reasons such as:
- It gives developers great flexibility and freedom to innovate
- It allows the developers to use any technology to render the front end
Catch digital team experience with Decoupled Drupal and ReactJS
The Catch Digital team gave us an insight on how they are using React for the front end of their applications powered by Drupal content within Drupal sites, and, how this allowed them to deliver a more captivating and user-friendly UI for the users.
React is known for its amazing features that give us developers the possibility to work on multiple components at once which, in the end, can be merged together to complete the view.
Catch developers gave us a few examples of separate components they have been working on, demonstrating the possibility to create search auto-suggest and results with map and facets, data filter, mapping powered by Mapbox plugin, Login pages, Chatbot implementation – as React components, managing to develop these in a considerably less time then if they were to use the traditional Drupal way. Also, Mobile Apps and WebGL are segments of web development for which they are using Decoupled Drupal.
With very certain goals in mind, they always take into consideration the requirements of the projects, focus on how to enhance the functionality of their applications and, last but not least, how to develop reusable code.
Invotra’s story and how we leveraged Drupal in creating a leading SaaS product for enterprise intranets
Our story, as you may already know begins with iO1, when the company was an established Drupal development house. Things changed when the Home Office approached us and asked us to build them an intranet that had to be a SaaS product on the Gcloud framework.
Our product manager, Billy Clackers did an amazing job in introducing the remarkable journey of Invotra and the challenges encountered in creating a world-class SaaS product for enterprise intranets. The solution for the problems we ran into due to the enormous number of visits, searches, logins and downloads the platform had to sustain, were clearly presented by our Technical Services Manager, Nqobile Dube.
When the product was first launched it was using
- Basic search for content using Solr
- Matomo (formerly Piwik) for analytics
The product grew even bigger with over 45% of UK Government using our intranet product. New features were introduced, but the main challenge was that Drupal was not built to handle over 50k / requests per minute, and it needed to index millions of documents. These problems were solved by:
- implementing autoscaling within AWS
- having extensive monitoring across the platform
- using Drupal for what is best for – content/access control
- indexing exactly what we needed
What will the future hold for Invotra?
Additionally, we decided to build out a new architecture for the entire platform, using React and Material UI on the front-end and Drupal 8 on the back end – which comes with a whole new infrastructure that will assure the product will run seamlessly.
This Drupal Show and Tell was a big success, and the fact that both Invotra and Catch Digital have chosen to use the same approach in moving forward with building their products is very reassuring and shows that Decoupled Drupal is one of the best solutions for this.
As members of the Drupal community, remember to only use it on what is best for and give back to the community to build a better Drupal.