App-like web capabilities for your, coupled, decoupled, or hybrid Drupal project

Drupal Camp Asheville 2024 - July 12th-14th

Room
Pantheon (228)
Start Time

Topics

Presenter(s)

Alex Borsody
of
Moonraft Innovation Labs
Alex Borsody headshot

Alex has been a software developer for around 15 years. He tries to bridge the gap between reliable, established, and cutting-edge technologies. Working as an architect he uses his experience to build efficient teams with the right technologies. He researches and pushes the boundaries of the CMS, PWAs, and native apps with Moonraft. He is the technical co-founder of CarbonPay.

 

 

Wilfred Arambhan
of
Moonraft Innovation Labs
Wilfred Arambhan

Wilfred works as a Drupal tech lead for Moonraft Innovation Labs. His areas of expertise and interest lie in open source technologies and content management systems. He has spent his free time mostly with his furry friends and traveling.

Session slide with title

Drupal can be used as a pluggable backend using just about any API you can think of. By integrating with these APIs you can build just about any business apps you would find on the App Store or Google Play.

Drupal is a monolithic architecture yet is mature and feature-complete, this includes the theme layer.

There is increasing interest in replacing the theme layer with decoupled architecture using a JS framework.

These frameworks can greatly enhance a website's "app-like" behavior. Still, increasingly there are more options available for making your website app-like without the extra commitment and pitfalls that come with a fully decoupled architecture.

There are pros and cons of using the Drupal theme layer, in particular, we will discuss how you can make a Drupal-powered website "feel like an app." We will compare which web capabilities can be used for decoupled vs coupled and explore options for a "hybrid" approach.

Building a web app that is responsive, fast, and looks and feels like an app is possible with the theme layer.  At times this web experience can even improve what users are used to in a native app or frontend framework because it "just works."

There are a variety of modules, techniques, and libraries that can be used to enhance the app-like functionality of a coupled Drupal install. We will go through examples and demos of each of these capabilities.

  1. Turbo library 
  2. Project Fugu web capabilities
  3. JS/CSS/HTML5 web capabilities 
  4. PWA technology (manifest + service worker)
  5. Drupal AJAX API