state of the Static Site Generator union


  1. general overview
  2. not so general overview
  3. frameworks
  4. deployment providers
  5. CMS
  6. EN SOMME

general overview

Static site generators are frameworks that convert content written in markdown into HTML. Poetically, the final product of SSGs mirrors a return to the very earliest days of web development. HTML in a directory.

There are a ton of possible asterisks after that first sentence, but it's a good starting point. Markdown is just a simple syntax that is a lot faster to type out, e.g. #heading vs <h1>heading</h1>. There a buncha markdown parsers and a lot of extensions to those parsers and even mdx which can basically embed any lil JavaScript u might cook up. It can be learned by anyone in 2 mins and is not a requirement for client, designer, or even developer. But I feel a digression coming on.

They were made popular by Jekyll, the default for GitHub Pages, around 10 years ago because people had Had It with Wordpress and what a nightmare it is to configure and maintain and update and even clone initially. Computer fans turn on. And yet… everyone and their uncle wanted/wants/will want a site. 90% of the requirements follow a general shape: the désirer du TheSite wants to hand over content and a list of features, get someone to build it all and then, (crucially as t’wère) have the ability to edit and add new content in a way reminiscent to opening Word.

Not only is it easier to fulfill this request using a SSG—weeks vs months—but it also doesn’t require a WP-specialist (it’s JuSt JS after all (or Go or Ruby)) and isn’t limited by WP’s avalanche of overhead and restrictions and […] oops.

Now, here is a longish, embellished description of a typical SSG workflow. The tldr would be, client hands over content, devs convert content, add any additional features, choose a provider, use provider's integrations to handle additional stuff they don’t want to do manually, then for content mgmt the provider has plugins for hundreds of CMSs (even WP… let’s not go there) or… itself provides 😏 a CMS that client would log into to edit and add content. Many images await below to award the studious reader.

not so general overview

frameworks

There is def a popular kids table in this space. Some are specific configurations of preëxisting frameworks (react, vue, next, nuxt) geared toward SSG, and others are dedicated to SSG, and built with (insert any language) or vanilla js or on, say, react, but abstract away the framework, hold on, the biggest ones are:

gatsby

next/nuxt

hugo

jekyll

astro

eleventy

According to Jamstack there are 350 more options as of Jul 24 2023 if none of these could satiate the Value Prop.

deployment providers

There a few newcomers but pretty much only three—and really only two—that make sense

aws

netlify & vercel

Here are a few images of their plugin and integration sections. Both are better at certain things, but only marginally, and either works fab for anything. For the first image, there's not a whole lot more to show of netlify's plugin experience as clicking "enable" just asks, r u sure, what’s the api key, and it’s done.

integrationsnetlify

vercel-integrations

shopifyintegration

sentryintegration

sanityintegration

mongoint

abtestingintegration

contentful

But Tyler, the client wants the ability to edit content!!!!1!!1! See how the last img is a plugin of a CMS? Behold

CMS

There are currently 111 different CMS providers listed on jamstack.com which btw:

"Jamstack is an architectural approach that decouples the web experience layer from data and business logic, improving flexibility, scalability, performance, and maintainability.

Jamstack removes the need for business logic to dictate the web experience.

It enables a composable architecture for the web where custom logic and 3rd party services are consumed through APIs." I’m going to just show some screenshots to give an idea of the range of experience a client, or a designer, or you (the dev) would have if u don’t want to work in raw markdown files. Also note that you could use WP in headless mode and integrate that with an SSG but, for the last time, let’s not go there. Any CMS can be integrated with any framework blindfolded. Without further ad—

cms1

cms2

cms3

cms4

cms5

cms6

EN SOMME

If the above, and my fervor, doesn’t make it clear what is better to choose from a time-to-build perspective, developer experience perspective, use- or reli-ability perspective, then you, reader, work for WordPress corporate xoxo.