Top Banner
CONTENT AS A SERVICE: WHAT TO KNOW ABOUT DECOUPLED CMS PANTHEON WEBINAR WITH FOUR KITCHENS AND PIXO
90
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Content as a Service: What to Know About Decoupled CMS

CONTENT AS A SERVICE: WHAT TO KNOW ABOUT DECOUPLED CMS

PANTHEON WEBINAR WITH FOUR KITCHENS AND PIXO

Page 2: Content as a Service: What to Know About Decoupled CMS

TWITTER: @GETPANTHEON

Page 3: Content as a Service: What to Know About Decoupled CMS

Pantheon.io 3

Speakers

Josh Koenig Co-Founder &

Head of Developer Experience Pantheon

Mike Minecki Director of

Technology Four Kitchens

Brandon Bowersox-Johnson

Chief Technology Strategist

Pixo

Page 4: Content as a Service: What to Know About Decoupled CMS

Pantheon.io 4

Agenda

‣Why Decoupled CMS? Josh Koenig, Pantheon

‣Case Study #1: Mike Minecki, Four Kitchens

‣Case Study #2: Brandon Bowersox-Johnson, Pixo

‣Discussion and Q&A

Page 5: Content as a Service: What to Know About Decoupled CMS

WHY DECOUPLED CMS?

Page 6: Content as a Service: What to Know About Decoupled CMS

Pantheon.io 6

Monolith vs. Decoupled

Monolith

Templates & Themes

Display Logic

Editorial UI

Admin UI

VS.

Decoupled

Page 7: Content as a Service: What to Know About Decoupled CMS

Pantheon.io

Decoupled

7

CMS

JS App

User Request

Hybrid

CMS

Single Page App

User Request

Single Page

CMS

Native Mobile

App

User Request

Native

•DecoupledFront End

CMS

User Request

CMS2

CMS

Page 8: Content as a Service: What to Know About Decoupled CMS

Pantheon.io 8

Speakers

Mike Minecki Director of

Technology Four Kitchens

Page 9: Content as a Service: What to Know About Decoupled CMS

Pantheon.io 9

Speakers

Brandon Bowersox-Johnson

Chief Technology Strategist

Pixo

Page 10: Content as a Service: What to Know About Decoupled CMS

June 11, 2015

TWiT.tvDrupal & Node.js = Content as a Service

Page 11: Content as a Service: What to Know About Decoupled CMS

Agenda• About us• About TWiT.tv• Why Content as a Service?• Architecture• Workflow• Final Thoughts

Page 12: Content as a Service: What to Know About Decoupled CMS

We make BIG websitesfourkitchens.com @fourkitchens

Page 13: Content as a Service: What to Know About Decoupled CMS

The TWiT.tv Netcast Network with Leo Laporte features the #1 ranked technology podcast This Week in Tech, along with over 20 other top-ranked online shows.

Page 14: Content as a Service: What to Know About Decoupled CMS
Page 15: Content as a Service: What to Know About Decoupled CMS
Page 16: Content as a Service: What to Know About Decoupled CMS
Page 17: Content as a Service: What to Know About Decoupled CMS

Why TWiT.tv wanted aContent as a Service architecture

Page 18: Content as a Service: What to Know About Decoupled CMS

Decouple upgradesCost of Drupal upgrade stifled redesign attempts

Page 19: Content as a Service: What to Know About Decoupled CMS

Better API for app developersActive community of developers currently using RSS feeds.

Page 20: Content as a Service: What to Know About Decoupled CMS

Exiting and proven technologyA desire to innovate and iterate.

Page 21: Content as a Service: What to Know About Decoupled CMS

Architecture

Page 22: Content as a Service: What to Know About Decoupled CMS

Architecture• Node.js• Drupal 7• Custom encoding server (named Elroy)• Cachefly for static assets.

Page 23: Content as a Service: What to Know About Decoupled CMS

Architecture walkthroughPublishing and viewing a podcast on the new TWiT.tv

Page 24: Content as a Service: What to Know About Decoupled CMS

Publishing

Page 25: Content as a Service: What to Know About Decoupled CMS

Drupal

Publishing

Page 26: Content as a Service: What to Know About Decoupled CMS

Drupal

Elroy

Publishing

Page 27: Content as a Service: What to Know About Decoupled CMS

Drupal

Elroy

Publishing

Page 28: Content as a Service: What to Know About Decoupled CMS

webmobile apps

Drupal

Elroy

Viewing

Page 29: Content as a Service: What to Know About Decoupled CMS

webmobile apps

Node.js

Drupal

Elroy

WarmCache

Page 30: Content as a Service: What to Know About Decoupled CMS

webmobile apps

Node.js

Drupal

Redis

Elroy

WarmCache

Page 31: Content as a Service: What to Know About Decoupled CMS

webmobile apps

Node.js

Drupal

Redis

Elroy

WarmCache

Page 32: Content as a Service: What to Know About Decoupled CMS

webmobile apps

Node.js

Drupal

Redis

Elroy

WarmCache

Page 33: Content as a Service: What to Know About Decoupled CMS

webmobile apps

Node.js

Drupal

Redis

Elroy

WarmCache

Page 34: Content as a Service: What to Know About Decoupled CMS

webmobile apps

Node.js

Drupal

Elroy

ColdCache

Page 35: Content as a Service: What to Know About Decoupled CMS

webmobile apps

Node.js

Drupal

Elroy

ColdCache

Page 36: Content as a Service: What to Know About Decoupled CMS

webmobile apps

Node.js

Drupal

Redis

Elroy

ColdCache

Page 37: Content as a Service: What to Know About Decoupled CMS

webmobile apps

Node.js

Drupal

Redis

Elroy

ColdCache

Page 38: Content as a Service: What to Know About Decoupled CMS

webmobile apps

Node.js

Drupal

Redis

Elroy

ColdCache

Page 39: Content as a Service: What to Know About Decoupled CMS

Drupal architecture• Drupal 7• RESTful Module• Very little custom Drupal code

Page 40: Content as a Service: What to Know About Decoupled CMS

Node.js architecture• Saucier - Our headless framework• Node.js• Express for routing• Dust templates• Redis for caching

Page 41: Content as a Service: What to Know About Decoupled CMS

Workflow

Page 42: Content as a Service: What to Know About Decoupled CMS

API mockupsGet front end and back end teams working early

Page 43: Content as a Service: What to Know About Decoupled CMS

Apiary.io

Page 44: Content as a Service: What to Know About Decoupled CMS

Edit in Markdown

Page 45: Content as a Service: What to Know About Decoupled CMS

Built in API console

Page 46: Content as a Service: What to Know About Decoupled CMS

Returns example

Page 47: Content as a Service: What to Know About Decoupled CMS

Acts as a proxy

Page 48: Content as a Service: What to Know About Decoupled CMS

Design in the browserA dream come true

Page 49: Content as a Service: What to Know About Decoupled CMS

Wireframes

Page 50: Content as a Service: What to Know About Decoupled CMS

Style tiles

Page 51: Content as a Service: What to Know About Decoupled CMS

Design in the browser

Page 52: Content as a Service: What to Know About Decoupled CMS

Design in the browser• Responsive loves design in the browser• Workflow with Drupal is always clunky• Decoupling made the process seamless

Page 53: Content as a Service: What to Know About Decoupled CMS

Final thoughts

Page 54: Content as a Service: What to Know About Decoupled CMS

Decoupling empowered everyone.

Page 55: Content as a Service: What to Know About Decoupled CMS

Decoupled empowerment

• Redesigns won’t require a CMS upgrade• Independent work streams• Best of breed tools• More natural modern design process

Page 56: Content as a Service: What to Know About Decoupled CMS

Thank you!

Page 57: Content as a Service: What to Know About Decoupled CMS

Case Study

Page 58: Content as a Service: What to Know About Decoupled CMS

Brandon Bowersox-Johnson@[email protected]

Page 59: Content as a Service: What to Know About Decoupled CMS

TABLET PHONE

Page 60: Content as a Service: What to Know About Decoupled CMS

TABLET PHONE

Page 61: Content as a Service: What to Know About Decoupled CMS

TABLET PHONE

Page 62: Content as a Service: What to Know About Decoupled CMS

TABLET PHONE

Page 63: Content as a Service: What to Know About Decoupled CMS

TABLET PHONE

Page 64: Content as a Service: What to Know About Decoupled CMS

TABLET PHONE

Page 65: Content as a Service: What to Know About Decoupled CMS

TABLET PHONE

Page 66: Content as a Service: What to Know About Decoupled CMS

Old Way• CMS theming• Limited team• Develop in CMS• Costly upgrades

• Choose the best FE tools

• FE devs ≠ CMS devs• Start without a CMS• Simpler CMS upgrades

Goals

Page 67: Content as a Service: What to Know About Decoupled CMS

CMS

uic.edu

Page 68: Content as a Service: What to Know About Decoupled CMS

CMS

cms.uic.edu

Site

uic.edu

Content as a Service

Page 69: Content as a Service: What to Know About Decoupled CMS

cms.uic.edu

Site

uic.edu

Content as a Service

CMS JSON

Page 70: Content as a Service: What to Know About Decoupled CMS

The Front EndPattern Lab

Page 71: Content as a Service: What to Know About Decoupled CMS

Pattern Lab• Atomic design• Test drive responsive layouts• Assemble elements into pages• More at patternlab.io

Page 72: Content as a Service: What to Know About Decoupled CMS
Page 73: Content as a Service: What to Know About Decoupled CMS
Page 74: Content as a Service: What to Know About Decoupled CMS

Benefits• Able to pick and add best tools • Front end team starts right away• Test drive components

Page 75: Content as a Service: What to Know About Decoupled CMS

The CMSWordPress

Page 76: Content as a Service: What to Know About Decoupled CMS

Decoupled WordPress• Minimal custom code• Component-based content structure• WordPress JSON API

Page 77: Content as a Service: What to Know About Decoupled CMS
Page 78: Content as a Service: What to Know About Decoupled CMS
Page 79: Content as a Service: What to Know About Decoupled CMS

Benefits• Less-customized CMS easier to upgrade• More focused authoring experience• Content available as JSON

Page 80: Content as a Service: What to Know About Decoupled CMS

CMS + Pattern LabOutpost

Page 81: Content as a Service: What to Know About Decoupled CMS

Outpost• Lightweight PHP app• Feeds JSON from WordPress or Drupal into Pattern Lab templates

• More at getoutpost.org

Page 82: Content as a Service: What to Know About Decoupled CMS

Outpost1. Handles visitor requests (Symfony

HTTP...)2. Fetches JSON content (Guzzl)3. Caches responses (Stash)4. Dev tools for logging, debugging

Page 83: Content as a Service: What to Know About Decoupled CMS

Content Objects• Feed JSON into PatternLab• Encapsulate JSON into objects

Page 84: Content as a Service: What to Know About Decoupled CMS
Page 85: Content as a Service: What to Know About Decoupled CMS
Page 86: Content as a Service: What to Know About Decoupled CMS

Outpost

cms.uic.edu

Site

uic.edu

CMS JSON

Page 87: Content as a Service: What to Know About Decoupled CMS

Result• Fell in love with our CMS again• Built great FE with the best tools• FE dev team and timeline not tied to CMS• Unleashed content authoring• Easier upgrades over time

Page 88: Content as a Service: What to Know About Decoupled CMS

Thank you!

Page 89: Content as a Service: What to Know About Decoupled CMS

Q&A

Page 90: Content as a Service: What to Know About Decoupled CMS

THANK YOU@GETPANTHEON