Decoupled Front End and the Future

David Hwang

ver 1.1

(something like that)

"Headless Drupal"

What is Headless?

Drupal as a content model and entity API...

...minus the client-facing theme layer

Drupal as a RESTful web services endpoint

Drupal as a content repository

"Bring your own front end"

Your app up front,
Drupal in the back

and yes...

Client-side JS MVC 
frontend frameworks
rendering Drupal data. 

Things you get!

Complete Separation of Concerns

Drupal Backend
Front-end App

Ultimate control of your frontend stack

Drupal's content modelling tools

Content authoring and workflow tools

Users, roles and permissions

All the RESTful 
serialized entity data you can eat

This value can not be oversold

One step closer to 'write once, publish everywhere'

Bonus: Headed Sites!

Things you don't get

Anything that comes from Drupal's frontend

Drupal's render() pipeline!

Drag and Drop visual templating

Panels, Display Suite, Modules that affect display behaviors

Front end-facing Form API

Anything that comes from Drupal's frontend

*For now, at least.

These are not trivial hurdles.

Drupal's kind of all smushed together like that.

So why do it?

Frontend moves fast. Really fast.

Faster than Drupal core can keep up, honestly

Separate frontend app layer moves independently of Drupal

Frontend moves at innovation speed, 
Drupal + Content Model moves at its own pace

Everybody can use the tools they prefer in contexts that make the most sense.

The Lesson of the Responsive Web

We can't predict the next big change;
we can only build in ways that lets us be flexible

Spoiler: Drupal has two heads

We're only cutting off one of them.

Well, maybe.


Drupal site feeding mobile & other apps

Native Mobile Apps,
Set-top Boxes,
Monetized APIs

Drupal content modelling plugging into massive online retail system

Drupal pushing content to across multiple web endpoints

Swappable frontend teams, techniques and systems, with consistent Drupal base.

Internet of things, schminternet of schtings

Drupal content on non-web devices

What if...?

"Drupal admin UI doesn't have APIs so much as it has buttons with db calls mapped to them."


-Larry Garfield, yesterday.

What if all Drupal front ends were decoupled services-based apps?

Drupal admin as a webapp?


Drupal has tried to be all things to everybody.


You bend the app to Drupal, you build the use case around Drupal, you live and die by the whole stack


Data Model

What if Drupal was just another layer in your stack...

...that you could freely swap out any piece at any time?

By decoupling the front end, we make it more  flexible and widely relevant


Headless Drupal
working group


Decoupled Drupal and the Future

By eatings


Decoupled Drupal and the Future

Core Conversation, Drupalcon Amsterdam 2014

More from eatings