Hacker News new | ask | show | jobs
by nicoburns 2107 days ago
Added complexity? At its simplest, Jamstack is just a static site generator. A service like Netlify will do the entire build pipeline for you (for free) just by pointing it at the git repo. Or if you want to DIY the hosting, then all you have to do is find somewhere that can host static files.

Jamstack is largely about removing complexity.

3 comments

At its simplest yes. But if you are proposing this as a solution to a client, they will likely want to edit content. That will have to happen on a headless CMS instance. That's whole new stack to maintain alongside. You then need to set that up and configure the SPA to talk to it (GraphQL/Apollo?). When I come back to client project in a month, is all this still going to be working ...?

Maybe, but it's certainly not less complex then a traditional Wordpress site. So I'm wondering what are the criteria for using Jamstack successfully?

As you said it could be that it's good for simple static sites but not great for more complex content-drive sites - I don't know, that's what I'm asking.

Obviously it depends a lot on which CMS you're using and I can imagine there being a lot of complexity involved.

That said, setting up something like Contentful and integrating it with NextJS is roughly a day or two of work if you're doing it for the first time. And it all works over REST so you don't have to worry about GraphQL.

You can even do "previews" now with Next thanks to preview mode: https://next-preview.now.sh/

Contentful just abstracts away the complexity (for money). It's still complex, but you're paying instead of dealing with the complexity.
i think thats a fair point but there's a lot of benefit from from that. they're able to focus on making a great CMS

there are also some open source solutions that are great. Netlify CMS works really well for a very basic page / blog management solution

a lot of the headless CMS solutions also offer generous free tiers, making it perfect for web devs to spin up a free instance for their personal sites and projects

I think it's good for simple cases where a technically minded person will be editing the content. And I think it's good for complex cases where performance is important and the organisation is large enough to support at least one employee to manage the system. I think it's (not currently) good for the in between cases.
Stackbit and Publii are two examples of tools that remove a lot of technical barriers for the simple cases you are talking about.
Other than the simplest of static/marketing sites, jamstack is just taking standard server-side rendered frameworks and splitting it up into several layers: CMS and other content sources, external APIs, build process, backend "serverless" functions, etc.

This is more moving pieces and complexity. Yes it's easier to build the frontend using modern component models but I find the tradeoff is rarely worth it.

Jamstack is not less complex, it's just complex in different areas.