Setting Up This Blog with Eleventy
This blog runs on Eleventy (11ty), a simple and fast static site generator. Here's a quick overview of the setup.
Project structure
Posts are plain Markdown files inside src/posts/. A directory data file (posts.json) applies shared defaults to all posts — layout, author, and the posts collection tag — so each post's frontmatter stays minimal.
Pagination
The homepage lists up to 5 posts per page, using Eleventy's built-in pagination over the collections.posts collection.
Search
Pagefind runs as a post-build step, indexing the generated HTML in _site/. The search page at /search/ loads the Pagefind UI directly from the generated assets.
Deployment
Pushed to GitHub, picked up by Netlify on every push to main. The build command is:
npm run build
Which runs eleventy followed by pagefind --site _site.