There’s a certain irony in using a complex frontend framework to render a blog. A blog is, fundamentally, text. Text that doesn’t change until the author updates it.
Static site generators solve this elegantly: generate the HTML once, serve it forever.
What You Get
- Speed: Pre-rendered HTML loads instantly. No JavaScript to hydrate, no API calls on page load.
- Simplicity: The entire site is just files. You understand exactly what’s there.
- Reliability: No database to go down. No runtime to crash. Files are durable.
- Free hosting: GitHub Pages, Cloudflare Pages, Netlify — they’ll host static files for free indefinitely.
The Trade-offs
Static sites aren’t for everything. If you need user auth, real-time data, or personalized content, you’ll want something dynamic.
But for a blog? A portfolio? A documentation site? Static is almost always the right call.
Where Jekyll Fits
Jekyll is old by JavaScript framework standards — it’s been around since 2008. That’s not a weakness. It means it’s stable, well-documented, and has solved every edge case you’ll encounter.
Sometimes the boring tool is the right tool.
# Install
gem install jekyll bundler
# New site
jekyll new my-blog
# Serve locally
bundle exec jekyll serve
Done. Your blog is running.