Page 1
Headful Drupal
Théodore 'nod_' Biadala
Core JS maintainer & Consultant @ Tag1
Page 2
Misery Misery
PainPain
Page 3
CrazyCrazyDrupal7Drupal7
Page 4
Headless DrupalHeadless DrupalBuzzword since 2014Buzzword since 2014
Page 5
pantheon.io/blog/headless-websites-whats-big-dealpantheon.io/blog/headless-websites-whats-big-deal
Page 6
pantheon.io/blog/headless-websites-whats-big-dealpantheon.io/blog/headless-websites-whats-big-deal
Page 7
Headless Drupal ?Headless Drupal ?Frontend logic ? Frontend logic ? – Template rendering + routing– Template rendering + routing
Headless Admin UI ?Headless Admin UI ?– « We're not that dumb/rich »– « We're not that dumb/rich »
Business logic ? Business logic ? – Still in the backend– Still in the backend
Page 8
Headless… notHeadless… not
Page 9
Faceless Faceless drupal drupal
Page 10
Insecure and not accessibleInsecure and not accessible
Page 12
M. Patate M. Patate drupal drupal M. Patate M. Patate drupal drupal
Page 13
Web componentsWeb components
Page 17
Headful DrupalHeadful Drupal
Helpful DrupalHelpful Drupal
Page 19
JSJS
Few assumptionsFavor native/VanillaJSTry to stay out of the way
Page 21
JSDocJSDoc
read.theodoreb.net/drupal-jsapi/
Page 22
ISomorphicISomorphic
Page 23
Shared JSShared JS
Page 25
Refactor of DOOMRefactor of DOOM
ES6ES6
Proper modulesProper modules
Separate initialization Separate initialization from declarationfrom declaration
Page 27
ES6 : template strings
Page 31
#Driesnote
GraphQL
“Progressive decoupling”
Page 32
Discuss!
Théodore BIADALA
@nod_
[email protected]
Page 33
“Broken Glass” — Sonny Abesamis
Page 34
faceless Drupal
slideshare.net/exove/building-a-nodejs-accelerator-for-your-headless-drupal-backend-drupalcamp-london-2015