The comprehensive guide to JAMstack best practices
This practical report explains how to run your web projects—from simple sites to complex applications—on the JAMstack, a modern web architecture for deploying fast, secure and highly-scalable sites that don’t require a traditional origin server.
With this report, you’ll explore:
Methods for solving web development challenges—from bloated legacy architecture to managing microservices Why the JAMstack’s cleaner architecture eliminates the need to scale sites up front How separating the frontend from your build process makes maintenance easier Best practices for adopting the JAMstack in your organization A case study that examines how Smashing Magazine applied the JAMstack for commerce, authentication and membership, and publishing at scale
Not great, not terrible. It has some good points and advise but it was too general for me and didn’t go into many details/depths. I would say that it’s a good read about JAMstack but I would recommend skimming some of the sections.
If you are into Jamstack, you should read this book. If you are into Web Development, you should read this book. If you are into Web Performace/Security/Availability you should definitely read this book. I think it is amazingly structured and goes through the what/why & how of the Jamstack, providing you with theory, but as practice as well on the Smashing Magazine case review. And it is an easy read (127 pages).
If you are new to JAMstack this might be a good book to get started. I am a little concerned that the early chapters are too theoretical and the case study suddenly dived in too deep. But it will help you understand “why” you should use JAMstack.
As someone who already used JAMstack and various technology mentioned in this book to build his blog, this book didn’t have the eye opening effect I was anticipating.
The part I found most boring were the middle chapters. I feel like section after seconds were bragging how JAMstack utilises the CDN well compared to traditional approaches. Instead I feel like the focus should put on other areas more.
The most interesting part was actually the case study in chapter 6, as it showed what a mature and large JAMstack architecture looks like. I certainly learned a thing or two that I might try out in my personal projects.
Since all the authors were from NetlifyCMS, of course a lot of Netlify products were mentioned. But I don’t mind it as it is what I use for my person JAMstack projects too. It is worth noting there are probably some bias.
I'll admit I didn't expect too much from this book, available as a free download from Netlify.
I knew it was a marketing piece: sell your view of a better way of deploying websites, and support it with a "hey, we do this". But, I thought it was a good way for me to familiarize myself with the JAMStack rather than reading a bunch of different web articles or tutorials.
The book is split into two sections: the first is an overview of this new approach and the benefits of static sites over pages that are generated at request time. I appreciated that it didn't read like brochureware advertising Netlify too much. It helped connect some dots and made a clear contrast with the existing paradigm.
The second half of the book was an indepth case study, and WOW did it read differently. There were code samples and different languages were thrown around like nobody's business. I will admit I had to pause and look up a few of the technologies mentioned in passing. I felt like the first half was written for a business leader who has to sign off on this new approach, and the second was for the technical folks who now need to implement it. If the first half was a little breezy, I found myself trying to parse through code samples of languages I didn't know.. before I remembered that I wasn't actually likely to implement this stuff!
I gave it a 3 because of the really dramatic shift in perspectives across the two parts. I suppose I'm not exactly their target audience, but I am not sure who exactly is....
JAMstack is a rapidly growing, modern web site and web app architecture. It's not a specific technology per se, but rather an approach to software development that utilizes the best of content prerendering and content distribution networks, Javascript, and APIs. Because the approach is newish, there's a tendency in the current technical literature to reiterate the basics. And while the first half of this book does a bit of that — perhaps in the most definitively, clear cut way — it's the under-lauded second half, the case study of Smashing Magazine, where deep technical details on serverless architecture, event-driven hooks, and loosely coupled microservices are set out. This is required reading for anyone nudging towards the app side of JAMstack, and a great one, too. Highly recommended.
Overall I think it’s a good introduction to the topic of this new generation of web development ecosystem technologies. My only two critiques would be related to the depth in which specific topics were addressed. In some cases I found the narrative too wordy while at the same time being a bit generic and shallow, trying to address concerns for small and large scales simultaneously; this made the text more of a broad introduction to the topic, which I personally would have avoided given the target of the book. In other areas, the narrative was good but also still not in depth enough for what I was expecting (like for example when talking about delivery pipelines of JAMstack projects). Other than that, I think I finished the book with a solid idea of what are the fundamentals of such an architecture, and with some good pointers to do my own research.
Just to make the obvious out of the way: yes, this is a very thinly veiled ad for Netlify. Which probably should have been called out more prominently, but then again it's been Netlify's CEO (and book's author) that has coined the term, so it's kind of OK :)
First half of the book is rather bland and focuses on jamstack's benefits that are subjective and hard to measure. The case study is really good - so good, that in fact the book could have used more smaller ones with increasing level of complexity. The "mental model" chapter was also useful, as it had addressed a bunch of misconceptions I was carrying around in my head.
All in all, worth reading for any webdev and anyone who wonders about publishing their content online in a way that doesn't give up control completely to a third party.
It is a good read. I’d say the main audience is project managers or ppl not sold on the stack or people in big companies who are not sold on the technology. if you are a dev and ur hand is in the jam jar, fast forward to the use case about smashing magazine and then run, don't walk, to get to the github page of netlify.
This book made me realize how much golang is being used in new strong projects. It is the new Java. Also, netlify is really innovating the ecosystem and has really some good people coming out with solutions without over engineering. The book was written by people who started netlify or work there. Same for tons of code to make the JAMstack possible. Good for them. Netlify can take my money :p
This book provides a thorough explanation of the problem the JamStack ecosystem is trying to solve. I think it also does a great job of explaining how websites were once built and how we need to work towards a safer, more performant, accessible, and delightful experience for both the users and developer. Thanks to Netlify for caring about the future of the web. We are all responsible for making the web more performant so that it can be more accessible to the rest of the world.
This is a nice ~120 pages ebook from Netlify. I read it on a Sunday afternoon, skimming the first chapters because I was already familiar with the JAMstack.
Chapters 1-5: good high-level overview of the services of a JAMstack. Chapter 6: excellent breakdown of the Smashing Magazine migration from Wordpress + Ruby on Rails + Kirby + Shopify to Hugo + Preact + Netlify CMS + Netlify functions.
Shallow introduction to the JAMstack and the workflow that it offers. The Smashing Magazine deconstruction was interesting but not too practical as an example.
This book gives a nice overview of the jamstack. The case study of Smashing Magazine really helped to understand how large projects could benefit from this.
Este finde he terminado de leer el libro Modern Web Development on the JAMstack. Y aqui os paso un resumen.
# Netlify
Una cosa que considero importante a tener en cuenta:
Netlify esta detrás del concepto JAMstack. Los autores del libro trabajan en Netlify. Netlify organiza las conferencias Jamstackconf (este año en tres ciudades distintas: San Francisco, NY, London).
De hecho JAMstack es un montón de tecnologías bajo un nombre molón, como en su momento lo fue Ajax, PWA o RWD.
La diferencia es que Netlify es parte interesada pq su negocio es dar servicios a empresas que quieren usar este tipo de tecnología.
No me malintepreteis, su plataforma mola mucho, pero es cuanto menos curioso: primero creo la necesidad (real o no) y luego te vendo el producto que lo soluciona.
Si has leido algo sobre JAMstack, os podeís saltar los capítulos del 1 al 5. IMHO: basicamente te venden la idea y realmente no dicen nada nuevo.
# Resumen
La idea principal es pasar de esto:
Client <-> Web Server (Apache) <-> Application Server (Laravel) <-> API|ORM <-> BD
A esto:
Client <-> CDN (static files)
# Lo explico:
1.- Cuando se produce cualquier cambio en el proyecto se ejecuta un "build" en el servidor de CI/CD. Un "build" se puede generar por:
- Un webhook: un CMS Headless realiza una llamada a un webhook cuando un usuario ha guardado un dato nuevo.
- Un commit: un desarrollador sube un cambio a la rama master. - etc.
2.- El job "build" se encarga de construir el proyecto con un "Static Site Generator" (Gatsby, Hugo, Nuxt, hay una lista enorme en https://www.staticgen.com). Este job se encarga de crear los HTML, CSS, JS y demás assets del proyecto.
Importante: realmente no son 100% estáticos.
Por ejemplo Gatsby utiliza componentes React y Nuxt trabaja con componentes Vue.
Esto añade una capa de interacción al site: puedes hacer llamadas Ajax, puedes usar un state management (Redux o Vuex) para los datos y obviamente puedes separar la lógica de la presentación gracias a los componentes.
3.- Cuando el "Static Site Generator" construye el proyecto, tiene que sacar los datos de algun sitio. Las opciones pueden ser un CMS headless, una API, ficheros estáticos, etc.
4.- El job "deploy" se encarga simplemente de subir los assets a un CDN.
Y ya no hay mas pasos :)
# Capítulo 6
Lo interesante del libro es el capítulo 6.
En este capítulo describen un caso real: Smashing Magazine paso de un arquitectura monolítica (Wordpress + Ruby on Rails + Shopify) a una arquitectura serveless con la ayuda de Netlify.
Alert spoiler: no sé si este caso de uso se podrá utilizar para otro tipo de proyectos.
Smashing Magazine es un blog (muy grande) con un sistema de suscripción y una tienda online.
No usaron una tecnología en concreto, sino que han tenido que usar varias librerias y servicios externos, ademas crear algunas otras desde cero (siempre con Netlify de la mano).
¿Qué Static Site Generator usan?: Hugo. Basicamente pq cada build tiene que crear MILES de artículos, y Hugo era quien mejor performance les ha dado.
¿Cómo gestionan los datos?: usan un Headless CMS llamado "Netlify CMS" conectado a un repositorio Git.
¿Cómo han implementado la tienda online?: Stripe y GoCommerce (una librería Netlify)
¿Y el buscador?: Algolia (que incluso tienen componentes para React, Vue, Angular, Android, iOS).
¿Y la identidad de los usuarios?: GoTrue (una librería Netlify).
¿Y los comentarios?: GoTell (una librería Netlify)
¿Y el envio de correos?: MailChimp
¡Pero no todo se puede ejecutar en el cliente!. ¿Y la seguridad?
Para algunas features (por ejemplo las suscripciones) han usado "Netlify Functions" (un wrapper de AWS Lambda integrado con los servicios de Netlify).
This book was a really good introduction to the ideology behind the Jamstack. The book is well written and to the point. The case study on how Smashing Magazine migrated its legacy blog to a modern Jamstack static site has a lot of things to ponder upon. A good book on the subject!
I am a web developer. I have always wondered why I need to use such a bloated framework like WordPress to build a simple 5-page church website. It just seems like overkill. I have wanted to go back to the simplicity of HTML/CSS/Javascript, but the needs of my customers dictate my choice of technology. To give them the ease of editing content on the backend, I have stuck to WordPress. But isn't there a technology by which I can harness the power of HTML and yet enable my customers to change the content with a familiar WordPress like interface?
Well, that is where JAMStack comes in! I am completely sold out for the concepts espoused in this book. My only misgiving is its ease of implementation and building more dynamic sites with JAMStack. Nevertheless, this is a much-needed advance in web development which has to be embraced by all web developers.
This is good. I thought I was on the Jamstack but there's more to it than I realised. It isn't really possible to follow the details of the smashing magazine case study, due to its complex nature, but its an inspiring demonstration of what is possible and the benefits you gain by doing so.