Acquia’s Node.js hosting gives developers the ability to create a fully decoupled Drupal architecture. We took a step back and reviewed options for creating an application that would make use of Node.js’ strengths and relate to the conference. The core focus of any conference is the presentation lineup, so we focused our efforts around building an application that could provide attendees with real-time schedule lineups and agenda logistics. To do this, Acquia’s Professional Services team set out to build a Node.js application that would control the content displayed on digital signs throughout the conference center.
What is Decoupled Drupal Again?
How the Acquia Engage Node.js Application Works
The architectural workflow of the Engage Node.js application consists of two separate codebases. One is a Drupal backend and the other is a Node.js application using Ember to present the UI.
The Drupal 8 back-end application was built using the Lightning sub-profile “headless Lightning”. The “headless Lightning” distribution extends the efforts of the Reservoir and Contenta projects, by focusing on the ability to quickly serve API content for ingestion by decoupled applications. Acquia’s marketing team can use the intuitive and familiar Drupal UI to create and manage content, including session presentations, case studies, and testimonials. With an emphasis on authoring experiences, marketing teams can easily manage Drupal content without extensive technical expertise.
The front-end application uses Ember for its UI and Ember Data to consume data the Drupal API. Node.js serves the Ember application and pre-renders the application’s HTML. For example, Engage attendees can learn more about Lynne Capozzi's ‘Welcome’ presentation, which is displayed on the top left section of the screen. This is the same piece of content that was being created in the Drupal UI. Now, it’s being displayed by Ember.js on the front end.
This separation of concerns allowed us to rely on the respective strengths of both Drupal and Node.js to build the application. The end result is a superior experience for both conference visitors and Acquia’s marketing team.
What should Engage conference attendees expect to see?
Attendees of the conference will be able to see the Acquia Engage application on various screens throughout the InterContinental Hotel. The application will display real-time session information, such as the time and location of presentations. The session and speaker information will be the main focus of the left content rail, and this data will be animated according to the active sessions. The main content area will feature award finalists, case studies, and interesting facts related to the conference. The content footer will present session data in a scrolling ticker, which is animated for a fluid display.
Special thanks to Brian Reese and Dane Powell for helping to write this blog, and thank you to the Professional Services’ Node Tiger team for developing our Engage Node.js application.