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

Unleash the Power of the JAMstack

Avatar for Tamas Tamas
August 30, 2019

Unleash the Power of the JAMstack

Server Side Rendering, Static Site Generation, Headless CMS and a myriad of other services can be used under the umbrella of the JAM Stack. During this talk we'll uncover what these mean to developers and we'll also take a look at an example that uses some of the most sought after technologies by building out an application that will also act as a PWA. Because that's still a thing, right?

Avatar for Tamas

Tamas

August 30, 2019

More Decks by Tamas

Other Decks in Technology

Transcript

  1. @tpiros Hi I am
 Tamas Piros Developer Evangelist Cloudinary Director

    Full Stack Training Google Developer Expert Web Technologies
  2. @tpiros –Phil Hawksworth (Netlify) “A modern architecture: Create fast, secure

    sites and dynamic apps with JavaScript, APIs and pre- rendered Markup, served without web servers.”
  3. @tpiros “A modern architecture: Create fast, secure sites and dynamic

    apps with JavaScript, APIs and pre-rendered Markup, served without web servers.”
  4. @tpiros “A modern architecture: Create fast, secure sites and dynamic

    apps with JavaScript, APIs and pre-rendered Markup, served without web servers.”
  5. @tpiros Origin Server: Responds to requests arriving from clients. Typically

    it’s a computer running a piece of application on it and it’s capable of serving up content.
  6. @tpiros Think about the LAMP stack On each page request:

    PHP gets called SQL query is made PHP generates HTML code
  7. @tpiros Think about the LAMP stack On each page request:

    PHP gets called SQL query is made PHP generates HTML code HTML sent to browser
  8. @tpiros Think about the LAMP stack On each page request:

    PHP gets called SQL query is made PHP generates HTML code HTML sent to browser {
  9. @tpiros Think about the LAMP stack On each page request:

    PHP gets called SQL query is made PHP generates HTML code HTML sent to browser { Task of the origin server
  10. @tpiros There are a lot of moving parts. Database Queries

    Data Movement Code execution Large attack surface area
  11. @tpiros There are a lot of moving parts. Database Queries

    Data Movement Code execution Large attack surface area Maintenance? Scaling?
  12. @tpiros There are a lot of moving parts. Database Queries

    Data Movement Code execution Large attack surface area Maintenance? Scaling?
  13. @tpiros Browser executing a lot of code on each request

    = potential bad user experience nearly impossible SEO
  14. @tpiros Browser executing a lot of code on each request

    = potential bad user experience nearly impossible SEO
  15. @tpiros Edge Server: Set of computers distributed globally, with a

    task of delivering content as fast as possible to the closest requesting user. (CDN)
  16. @tpiros CDNs are used to store static assets today. JavaScript

    & CSS Cached automatically Geographically distributed
  17. @tpiros CDNs are used to store static assets today. JavaScript

    & CSS Cached automatically Geographically distributed Served from closest server
  18. @tpiros CDNs are used to store static assets today. JavaScript

    & CSS Cached automatically Geographically distributed Served from closest server Automatic scaling & load balancing
  19. @tpiros “A modern architecture: Create fast, secure sites and dynamic

    apps with JavaScript, APIs and pre-rendered Markup, served without web servers.”
  20. @tpiros “A modern architecture: Create fast, secure sites and dynamic

    apps with JavaScript, APIs and pre-rendered Markup, served without web servers.”
  21. @tpiros Leverage API Providers Payments? Stripe Images? Cloudinary SMS Messaging?

    Twilio Forms? Formspree E-Commerce? Snipcart Authentication? Auth0
  22. @tpiros There are two types: API based and git based.

    Strapi - API based Netlify CMS - git based (YAML & frontmatter)
  23. @tpiros There are two types: API based and git based.

    Strapi - API based Netlify CMS - git based (YAML & frontmatter) Contentful - API based
  24. @tpiros There are two types: API based and git based.

    Strapi - API based Netlify CMS - git based (YAML & frontmatter) Contentful - API based Cosmic JS - API based
  25. @tpiros There are two types: API based and git based.

    Strapi - API based Netlify CMS - git based (YAML & frontmatter) Contentful - API based Cosmic JS - API based Appernetic - git based
  26. @tpiros Demo Architecture • Vue & Nuxt.js • Strapi •

    Heroku • mLab • Cloudinary • GitHub • Netlify DEV Headless CMS git commit && git push hook Continuous Delivery CDN http/2 git push heroku master Images
  27. @tpiros Resources • Collection of Headless CMS • Collection of

    SSG • Cloudinary • Netlify • Nuxt.js • Strapi • PWA Book • Star Wars Strapi CMS • Star Wars Nuxt.js