Putting the Stack in JAMstack

Serverless + JAMstack is where web app architectures are going

Ryan Coleman

Stackery is focused on helping developers leverage the power of AWS managed services. Our secure delivery platform is used to ship Lambda functions, HTTP Gateways, Aurora database clusters, and many more services which you can view usage of in Anna’s blog on the topic

Recently, I noticed an emerging workload running on our platform: the JAMstack. That’s a term for web applications composed primarily of JavaScript, APIs, and Markup. These JAMstack web apps can take many forms across 30+ frameworks, but examples like Gatsby or Hugo are easy to get started with. 

These are often referred to as static site generators, but I’m a fan of PayPal’s Jamund Ferguson rephrasing the term as static apps in the recent talk Bringing JAMStack to the Enterprise. Meaning, these are applications with dynamic interactivity. This could come from client JavaScript or from server-side infrastructure like Lambda-driven forms or video streaming services. The important bit about being “static” is that instead of a farm of web servers building pages on-demand for every request, content is built during the development & CI/CD cycle. The content is then distributed through a content delivery network (CDN) like AWS CloudFront. 

You might imagine how this style of web development fits well with serverless architectures. The combination of JAMstack and serverless allows for powerful, scalable, and relatively secure applications which require very little overhead and low initial cost to build. As Stackery customers began to combine serverless infrastructure with static-site frameworks and their chosen CDN, we see a need to better connect these worlds through infrastructure-as-code. 

To do this, we added the Website resource to simplify the build process for static site generators like Gatsby (which we’ve used to build this brand-new stackery.io). The Website builder automates a lot of machinery within AWS to retrieve application source and build it with references to external sources, including: AWS Cognito Pools, GraphQL APIs, Aurora MySQL databases, and third-party SaaS services like GraphCMS. With every service expressed in one place, the static app is continuously built and delivered to a CDN origin like an S3 bucket on every commit. 

If you’re reading this because JAMstack + Serverless might help you and your team quickly build a modern application for the web, sign-up for a free Stackery account and try deploying an example JAMstack.

This one combines the popular Ghost CMS with Gatsby, powered by AWS managed services like ECS and Aurora. I’ll be writing more in the coming weeks about how we built our JAMstack and what we’re learning from customers using Stackery to build theirs. 

I’d love to hear how it’s going and what more Stackery can do to help. You can chat live with us within the app during PST business hours. 

P.S. If you’ve been burned by CloudFront deployment times in the past, they’re worth a second look. But you don’t have to take my word for it.

jamstack

Related posts

What does Serverless mean for the future of DevOps
EngineeringWhat does Serverless mean for the future of DevOps

What to look for at re:Invent for serverless and DevOps professionals

Why we built a Jamstack site
EngineeringWhy we built a Jamstack site

How we built a website in a week...off the side of our desk

© 2022 Stackery. All rights reserved.