Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Git-based vs API-driven CMS

chrisdmacrae
September 08, 2017

Git-based vs API-driven CMS

A compare and contrast of content management systems that are powered by Git, and content management systems that abstract away the traditional database-backed CMS behind an API.

chrisdmacrae

September 08, 2017
Tweet

More Decks by chrisdmacrae

Other Decks in Technology

Transcript

  1. @chrisdmacrae © 2017 forestry.io forestry.io Old vs New Traditional CMS

    vs Headless CMS The Headless CMS The Traditional CMS
  2. @chrisdmacrae © 2017 forestry.io forestry.io Vendor lock-in Poor performance Poor

    reliability Poor security Cost The Problem The Traditional Stack
  3. @chrisdmacrae © 2017 forestry.io forestry.io Vendor lock-in Poor performance Poor

    reliability Poor security Cost The Problem The Traditional Stack
  4. @chrisdmacrae © 2017 forestry.io forestry.io The Problem The Traditional Stack

    Vendor lock-in Poor performance Poor reliability Poor security Cost
  5. @chrisdmacrae © 2017 forestry.io forestry.io The Problem The Traditional Stack

    Vendor lock-in Poor performance Poor reliability Poor security Cost
  6. @chrisdmacrae © 2017 forestry.io forestry.io —Ines Gutzmer, Equifax “Today [Equifax]

    announced a cybersecurity incident potentially impacting approximately 143 million U.S. consumers. Criminals exploited a U.S. website application vulnerability to gain access to Social Security numbers, birth dates, addresses and, in some instances, driver’s license numbers.” Poor security
  7. @chrisdmacrae © 2017 forestry.io forestry.io The Problem The Traditional Stack

    Vendor lock-in Poor performance Poor reliability Poor security Cost
  8. @chrisdmacrae © 2017 forestry.io forestry.io –Wordpress.com VIP “Prices for WordPress.com

    VIP Cloud Hosting 
 start at $5000 per month for up to 5 websites.
 Our Self-Hosted services start at $15k per year.” Cost
  9. @chrisdmacrae © 2017 forestry.io forestry.io Managing this complicated stack isn’t

    easy Need deep knowledge of the browser, of management of servers, databases, caches CDNs, the CMS, and of backup automation, versioning and so much more…
  10. @chrisdmacrae © 2017 forestry.io forestry.io The Solution The Headless CMS

    & The JAM Stack APIs Stripe, Intercom, Disqus… Pre-generated Markup HTML, JSON, RSS, XML Javascript Native, jQuery, React, Angular, Vue…
  11. @chrisdmacrae © 2017 forestry.io forestry.io The Headless CMS & The

    JAM Stack Pull from Git Download dependencies Build site
  12. @chrisdmacrae © 2017 forestry.io forestry.io The Headless CMS & The

    JAM Stack Pull from Git Download dependencies Build site Authenticate with API Pull in content
  13. @chrisdmacrae © 2017 forestry.io forestry.io Decouple CMS, frontend code, and

    backend code Great performance Higher reliability Superior security The Solution The Headless CMS & The JAM Stack
  14. @chrisdmacrae © 2017 forestry.io forestry.io The Solution The Headless CMS

    & The JAM Stack Decouple CMS, frontend code, and backend code Great performance Higher reliability Superior security
  15. @chrisdmacrae © 2017 forestry.io forestry.io The Solution The Headless CMS

    & The JAM Stack Decouple CMS, frontend code, and backend code Great performance Higher reliability Superior security
  16. @chrisdmacrae © 2017 forestry.io forestry.io The Solution The Headless Stack

    Decouple CMS, frontend code, and backend code Great performance Higher reliability Superior security
  17. @chrisdmacrae © 2017 forestry.io forestry.io API-driven • Easy to use

    content with multiple frontends • Ideal for content that changes < 1 per minute • Roll your own CMS through API • Many choices Git-backed • No vendor lock-in • Devs & editors using same workflow • Automated backups/versioning • Simple setup Pros The Headless CMS & The JAM Stack
  18. @chrisdmacrae © 2017 forestry.io forestry.io Git-backed • Harder to use

    content for multiple frontends • Not great for content that changes > 1 per minute • Limited options • Content queries can be limited depending on the CMS Cons API-driven • Usually comes with storage and API usage limits • Devs & editors using different workflow • Backups and versioning highly dependant on CMS • Less control over content model/formatting The Headless CMS & The JAM Stack
  19. @chrisdmacrae © 2017 forestry.io forestry.io Static Websites https://forestry.io How do

    we build these sites? Git-backed SSG (Hugo) Dynamic User State w/ Session Cookies Hosted on CDN
  20. @chrisdmacrae © 2017 forestry.io forestry.io Static eCommerce Website https://prettyflyfpv.com “The

    amount of work needed to make a [traditional] content-management system even remotely as optimized as a static generated site […] are frankly overkill for 90% of the small businesses out there.” How do we build these sites?
  21. @chrisdmacrae © 2017 forestry.io forestry.io Static eCommerce Website https://prettyflyfpv.com “The

    amount of work needed to make a [traditional] content-management system even remotely as optimized as a static generated site […] are frankly overkill for 90% of the small businesses out there.” How do we build these sites? Git-backed SSG (Hugo) eCommerce via Snipcart Hosted on CDN
  22. @chrisdmacrae © 2017 forestry.io forestry.io eCommerce Platform https://nastygal.com How do

    we build these sites? API-driven SSG SPA Enhanced + Mobile Apps via REST
  23. @chrisdmacrae © 2017 forestry.io forestry.io Multi-platform Applications https://wework.com How do

    we build these sites? API-driven SPA + Mobile Apps via REST Rails Backend (API) Hosted on CDN
  24. @chrisdmacrae © 2017 forestry.io forestry.io What do all of these

    sites have in common? How do we build these sites?
  25. @chrisdmacrae © 2017 forestry.io forestry.io Choose right tool for the

    job How you use a tool, and how effectively it meets your specific needs is what matters.