Moving from WordPress to Jekyll (and static site generators in general) (demandsphere.com)

by rgrieselhuber 56 comments 97 points
Read article View on HN

56 comments

[−] jillesvangurp 35d ago
I've been using ai coding tools in the last few months with static site generators. This is hugely empowering and completely obsoletes most CMS systems. Especially for more complex publication workflows.

I'm using hugo, not jekyll. But I don't think it matters which site generator you pick. The key point is using something that is code driven. And then have AI drive the code changes. Basically all routine site maintenance and updates is now controlled via agentic coding.

We use guard rails and skills to impose structure and process. This includes tone checks (and fixing), making sure audio transcriptions are in sync with articles, ensuring everything is tagged correctly, dealing with translations and approved lists of translations of key phrases, SEO checks and much more. I've been dialing in a lot of this in steps. You can start without most of this. But essentially a lot of manual work melts away when you get a bit structured on this. Like the article, we also use vector search embeddings. Our search actually uses the same model and runs it in the browser via web GPU. I also use it for related articles.

Also we've been experimenting with using reveal.js for presentations. Same principle. Forget things like Keynote, Canva, etc. Reveal.js is meant for programmers. But if you replace those with agents, non technical people can prompt together some really amazing decks. Replacing applications and UIs with code driven systems removes the need for those applications and UIs. And using AI to drive those code based systems removes the need for having developers in the loop. Our non programmer CEO who was a heavy Canva user is now doing decks and huge website updates this way now. Pretty scary actually. I don't think he'll use Canva again. I'm barely involved beyond setting up some basic plumbing. One party trick he likes is adapting decks to customers by integrating their house colors and visuals. Only takes pointing the AI at their website.

https://querylight.tryformation.com/ is a hugo demo site for the search capabilities. It hosts the documentation for the vector (and lexical) search library I use on our websites. The entire documentation site is managed as I describe above.

[−] mickael-kerjean 35d ago

> This is hugely empowering and completely obsoletes most CMS systems.

I went the other direction: instead of replacing the CMS, I open sourced a FUSE like layer [1] that mounts any backoffice system as a filesystem while the source of truth is in WordPress, Mysql, Postgres, .... Most backoffice systems map naturally to a file tree, so you mount them locally and let your agent read and write through that.

In the POC I ran, I mapped a whole wordpress site as a fs which was versioned controlled via git so when you did a git checkout of something, the whole db would get updated on the fly

[1] https://github.com/mickael-kerjean/filestash

[−] yoz-y 35d ago
Literally yesterday I was thinking of writing a FUSE layer to expose email as a folder structure, in Go.

From a glance at you documentation I take it that I could just write a plugin for filestash ?

[−] mickael-kerjean 35d ago
[−] yoz-y 35d ago
Perfect. I’ll have fun with this.
[−] ThisNameIsTaken 35d ago
Like Maildir? Many mail clients support that format already.
[−] yoz-y 35d ago
Yes. From experience productivity tools are never good because either:

1. They are simplistic 2. They are too complex

If I want to get anything done I want to build my own system where nobody else has a say in how the thing should behave.

I’ve build my own workout app and journaling system because after trying a trillion none of them fit me.

Today it’s easy to build tailor made programs quickly so I’d rather use something I control end to end.

[−] jbverschoor 35d ago
Or just run BeOS
[−] fsloth 35d ago
This is super interesting! Thanks for sharing. I’m wondering myself how to put up a site with usual product stuff, blog and manual.

The blog is running already on hugo on full llm automation but I had though it would not work for documentation (this is for non-techies so want something more product-manual -like and less SDK-docs flavour) or landing page that well.

So this is you company’s site and it’s on Hugo? https://formationxyz.com/

[−] jillesvangurp 35d ago
Yes, we just launched FORMATION XYZ a few days ago. Thanks! Fully running on hugo and I used the search library as well because it seems to work really well.

Interesting facts:

- the domain was registered a few weeks ago

- most of the heavy lifting was done by our non technical CEO by prompting codex; not by me.

- he got a bit carried away with some features and he was able to pull off a little robot (powered by vector search and embeddings), audio transcriptions, and a few other nice features. He has a product/ux background and a good eye for detail but no coding skills whatsoever.

- we use a lot of skills and guard rails to guide content generation, SEO optimization, etc. Our SEO agent does competitive analysis on a schedule, figures out optimal SEO phrases and maintains a list of approved SEO language.

- our content generation skills guard against typical AI slop smells, weaves in SEO language where possible, and uses a sub agent to act as harsh critic on content. AI slop only happens if you let it happen. You can see on the querylight documentation site that I have a bit more of that there. I need to improve the skills for that one.

If you want to get your feet wet with this, I would just recommend doing it and start with simple changes. Use Claude Code, Codex, or whatever you prefer.

One of the first successes I had with another website was "add the logo for company x to the logo wall". It went off and figured out the website, got the logo svg, figured out where to put it and hooked it up in the right place. For me that was a oh "it can do that now" kind of moment. A lot of content changes are like that.

[−] ribice 35d ago
Could you use an open source CMS for non technical folks, i.e. Decap?
[−] jillesvangurp 35d ago
Probably; if it has an API you can probably get coding tools to use it. But the point of using agentic coding tools is that they are really good at working with code and files. And it tends to be a lot faster and easier. And you can build tests and browser tests around that as well.

In my view, a CMS is intended for people doing stuff. If you transition that stuff to AI Agents, why keep the CMS around? And if AI does all/most of the coding, it's not such a big leap for non technical people to get their hands dirty anymore.

[−] jiggunjer 35d ago
Because re-arranging pictures in a gallery using words is less efficient than dragging them around on a screen. CMS still wins for some stuff.

There's also a security aspect, e.g. interactive editing lets you input secrets you don't want an agent to have.

[−] pdyc 35d ago
wow that looks beautiful. I want to migrate my hugo site to astro because astro is easier to manage and more friendly to local llm's than hugo but postponing it.
[−] Brajeshwar 35d ago
I did with mine too in 2021. Mine was 1000+ articles with even more comments. Luckily for me, I’ve already closed the comments. So, had to just throw them away. For the search, I tried Algolia but hit the limit. I’m with https://pagefind.app for now.

I wrote about my journey from WordPress to Jekyll at https://brajeshwar.com/2021/brajeshwar.com-2021/

[−] oliwarner 35d ago
I can't imagine picking Jekyll today.

I moved to Hugo after years of suffering long builds. Jekyll's stack complexity meant CI/CD was hard to implement and it just wasn't that fast. Hugo wasn't just fast, it had everything baked in. The only problem (back then) was the lack of useful feedback. It'd just build omitting half the site.

Now I use Astro. Simple to understand, none of the dark magicks that Hugo relies on to work, and Quick Enough™. It's well supported and it integrates with all the frontend/design tools I was already using.

Pagefind is stupidly easy to integrate. And it's what you probably ought to be using whatever your SSG. https://github.com/shishkin/astro-pagefind

[−] donohoe 36d ago
I don’t get it. Their setup is so much more complicated and limiting than what they had on Wordpress.

I won’t argue with their reasons to move (which don’t stack up for me either but agree to disagree).

[−] bonzini 35d ago
I use a SSG for a conference. The git repository guides me in doing exactly the same changes every year. I have pre built blocks for the various stages of organization and go through the commits for the previous year to help me understand what to do next.
[−] iLoveOncall 35d ago
Yeah I tried using Hugo instead of WordPress for a brand new website, and the setup was incredibly more complicated and yet limited.

I was all for them until trying one, now I don't understand.

[−] shlewis 35d ago
Hugo is not Wordpress alternative, really. It's an static site generator. Wordpress is not static. Trying to do things what only Wordpress can do will introduce a lot of complexity and often will just not work.

If all you need is a, well, static website without forms or such, Hugo is an easy winner.

[−] iLoveOncall 32d ago
That's exactly what I tried to use it for: a simple website with blog posts and a timeline, everything read-only.

It's a pain in the ass to use.

[−] shlewis 32d ago
I get the complex part: it's not as easy as Wp, but what makes it _limited_ when all you needed was a static website?
[−] tayk47999 36d ago
[dead]
[−] alwillis 36d ago
Been on the Jekyll bandwagon for a long time now; it's my go-to static site generator.
[−] hypercube33 35d ago
I love the idea and design it's just overwhelming for an idiot like me who isn't a web dev to spool one up on something like Amazon light sail. definitely going to Ai sledgehammer my websites over to this though, been way too long sitting on this project and I don't need to blog nonsense when my articles are markdown anyway.
[−] lachlanj 35d ago
Have you ever been tempted to look at others like Hugo? Or do you get what you need from Jekyll?
[−] alwillis 27d ago

> Have you ever been tempted to look at others like Hugo?

Not really; I didn't see any must-have features that I couldn't live without.

[−] AlienRobot 36d ago
I feel this article is more about all the tools they built with AI than about moving to Jekyll. None of these tools required the move in first place, since they could have literally just dumped the DB.
[−] brokegrammer 36d ago
Wordpress is better because it's easy to setup these days, can be fast if you enable caching, and has a comment system, which is a big deal if you want people to interact with your content. Other things like contact forms can easily be added. The CMS is also amazing.

With SSGs, you have a few options for comments, like Disqus, but the ad-free version costs money, it's slower because it needs to load JS, and your comments are owned by a third party company. Contacts forms can be built by integrating an external API. And anything else that requires storing data will require an integration with a third party service of some sort.

SSGs are a great concept but they're mostly for nerds who get boners by seeing over-engineered systems. They're also great for companies like Cloudflare because they can sell you services that come for free with Wordpress (CMS, image uploads, databases, workers, etc). For serious blogging, I'd opt for Wordpress.

[−] mcoliver 36d ago
SSG are over engineered? If anything it feels the opposite. Everything in a text git repo, templated, and a llm can understand and extend. Git branch to test new builds, merge to main deploys globally on cloudflare. Super fast load times, zero security issues to worry about, zero dependencies. Version control. Zip it up and take it wherever you want.

No server side things to worry about. It's super clean. Jekyll, css, js, GitHub and cloudflare is such a clean and refreshing setup.

[−] QuiDortDine 35d ago
Counter-point: static sites are unhackable, require no maintenance and are free to host. Now that I've migrated the website for a local (volunteer) event, they will never have to worry about their site breaking on them again.

Multiply that by every nonprofit without tech knowledge and that's a lot of potential Jekyll fans.

[−] leonidasv 35d ago
The comment system bundled with Wordpress is not enough for "serious blogging", you'll need plugins to manage spam, allow users to use social accounts, etc. You'll also need plugins for caching. Oh, and you'll need plugins for SEO as well, because the core Wordpress doesn't handle the bare minimum of SEO and isn't flexible enough to allow you to do it yourself. And each plugin expands the attack surface to a system that's known for the persistent attacks, so you have to be constantly looking for updates and keeping everything update. Oh, but not everything, because there are breaking changes. And there are versions that introduce bugs or regressions.

But yeah, a bunch of html pages is over-engineering.

PS: you don't need to use Disqus if you don't want to, there are a myriad of free open-source alternatives you can self-host that will take a fraction of the maintenance work of self-hosting a Wordpress instance.

[−] anotherlab 35d ago
I moved my blog from WordPress to Jekyll a few years ago, and it's anything but an over-engineered system. I used WordPress for years, and it was overkill for a personal blog.
[−] mc007 36d ago
interesting, we went from classic CMS to Jekyll, then Hugo, then Astro and finally built our own CMS - for larger sets of content and sites. Fiddling with custom DSLs, templates, weird builds and tricks ... was just way too time consuming - unthinkable my wife would ever touch it or write an article in there :)

Have a look at https://service.polymech.info/user/cgo/pages/poolypress-cms, agentic CMS, translates, creates and manages articles with a few prompts, widget aware.

[−] gmays 35d ago
I didn't want to hassle with migrating my WordPress blog, so now just deploy it to Github > Cloudflare Pages so it's served statically (fast + secure). It's free too, wrote a blog post on it a couple years back: https://gmays.com/how-to-host-wordpress-sites-free/

But these days any new site I build is on NextJS since coding agents make it a breeze.

[−] rmoriz 36d ago
I have a legacy WP blog that I wanted to migrate to some static architecture for ages but IMHO users should be able to comment and maybe even post a pingback. I know, old MT days. But social media is always about getting (positive) comments and feedback, not just dropping statements and knowledge.

I also don't want to tie my site to disqus or other 3rd party cloud services and their implication on GDPR.

[−] pseudosavant 36d ago
I recently retired my Wordpress blog and replaced it with a static-site generator. My requirements were straight-forward and I ended up having Codex build it for me.

It was the last thing using MySQL, PHP, and Wordpress on my site. 3 big things to not have to keep up-to-date and secured. I can check in markdown to my repo, it builds the site, and Nginx serves it. So fast, and secure.

[−] janvdberg 35d ago
Side-note, for those interested, I want to point out a new CMS: https://pureblog.org/ Not a SSG in the strict sense, but it generates md files and serves those on the fly.

There is a WordPress migrate-tool that worked flawlessly.

[−] sumanep 36d ago
Well, I migrates from wordpress to... Google Sites recently so...
[−] winddude 36d ago
I did something similar, but killed my old WP blog. played around with 11ty, sveltekit, i eventually settled on hugo.
[−] oriettaxx 35d ago
I really have the feeling many, like us, will finally make it to abandon Wordpress thanks to AI
[−] purplehat_ 36d ago
what's the advantage of a static site generator over pandoc + makefile?
[−] KaiShips 36d ago
[flagged]