Progressively Decoupled Drupal, for everyone!
Channel: DrupalCamp NJ
Date: 01/02/2020

Rebecca Goodman
Bryan Ollendyke
Chuck Lavera
Michael Potter

The last 4+ DrupalCampNJs / DrupalCons
Super Excited Developer: "OMG JSON:API in core!? And React and JS are awesome and I CAN HAZ SHINEY THINGS in Drupal!!"

Reasonable Developer: "Yeah and headless is totally the way to go, I can see it! I'm not sold totally on how but it DOES seem like what we should explore in the future"

Project manager: "We have a team of 8, 3 projects in the pipeline and 10 to maintain currently, welcome to reality you two. We have mouths to feed and projects to tend to so maybe we can look at this when we get out from under our project load but keep dreaming."

Welcome, to the harsh Reality
Where we attend great events like this one and talk about Headless for almost four years yet have very few people actually doing it unless they have a large team or a lot of free time, allowing them to present at events about how great it is. But... is anyone really doing this? Like is it feasible? Does that sound like your team? Mine neither. But I didn't want to fall behind. So we came to a cross-roads (or so we thought): We burn down our existing approaches and do them headless OR we ignore all these talks.

Then, we spoke to others at Decoupled Dev Days years ago and found something interesting: there's another way out.

Another way out for ALL of us
Headless is the future, or should I say, a big consideration in the future. But what's been lost is what is a legitimate way of getting there.

In this talk, I'll walk you through the project life cycle that involved the ELMS:LN team shifting from traditional Drupal JS to a progressively decoupled approach to the point that now we're able to simultaneously work on HAXTheWeb and Drupal projects while still maintaining a small team. Specifically questions we'll answer and unveil in this talk:

How we moved off an existing design framework in phases
How we started going the wrong way, picking AngularJS for a total headless rewrite and never will again..
How we stopped all headless development, got behind Web components and slowly pushed them into production
How this helped us to not lose momentum on any project and now we work at unparalleled levels of efficiency via web component re-use
How we built a progressively headless Drupal based system
How we built HAX, a completely headless authoring experience to side-step Gutenberg
How our progressive headless has turned into us building our OWN headless CMS out of identical components that is entirely JSON / flat file driven
How you can get started with Web components and use them in any Drupal or non Drupal project, today.
How to access and leverage our 400+ decoupled web components that we use every day as well as 100s from the wider community
How other organizations are leveraging our web components to enhance their web properties at scale and progressively
This will be making the case for web components as an approach and the future of all development, but if you've never used or heard of them feel welcome! This will be a mix of code for examples in production and demo purposes but is much more focused on policy, methodology, workflows and experiences from our team (4 people) developing 400+ web components the last 3 years.

We'll cover why your leaving money on the table NOT using web components, how we've taken month long functional prototypes down to days or hours and why Web components aren't just a stop on along the road but unlock component architecture for all projects without bloated frameworks or gigantic rewrites to existing projects.

Join the movement and better understand how we're now able to hold our own events around web components because of the growing interest in a progressively decoupled approach where you can migrate one "brick" at a time off existing projects and workflows; Or, leave them where they are and augment what you have. Lots of examples and resources will be pulled together across the web components community due to is size and scale.

Who Should Attend
Designers
Everyone
Front-end Developers
Project Managers
Site Builders
Prerequisites
You've got multiple Drupal and other CMS / non-CMS properties and have lived the pain of having to maintain multiple copies of similar web systems just because they were built in different libraries, frameworks, CMSs, etc. This will be approachable by newbies and tech pros alike and focus on the entry point for using Web components in any project, specifically showing some ways we've gotten them into Drupal but it can be applied to any existing project.

https://www.drupalcampnj.org/sessions/progressively-decoupled-drupal-everyone