How to Build Awesome
Minimal yet long-living starters
that support continuous updates and evolve with your project
based on Eleventy Blades plugin
Let's try to make a shift from a commodity (a template) to a service (long-term stability), and solve the "maintenance trap" where developers spend more time fixing their build tools than writing content.
Table of Contents
The problem of "maintenance trap"
Why traditional starters might fail? Once a user clones a repo, they are "orphaned" from the original source. If a security patch or a new 11ty version comes out, the user has to manually port those changes into their "off-road", customized codebase.
The solution
For a starter to evolve, it must be "pluggable" — allowing users to toggle/override features without touching the core reusable code.
First of all, let's separate all 11ty-specific yet generic enough components into separate 11ty plugin, so it can be highly reused across many different sites and even starters:
Eleventy Blades plugin
Ultimate blade kit for 11ty (Build Awesome).
This way your generic 11ty config, filters, shortcodes, transforms, and even npm scripts live in a separate npm package.
So that the user’s project directory stays clean. Updating the "starter" is as simple as running npm update.
Same for generic "utility" templates, which can be potentially shared even outside of 11ty ecosystem:
View moreLiving examples
🥷 Build Awesome Starter
Modern, lightweight Eleventy v4 starter with Tailwind/Pico, Blades, CMS and multisiting 🥷
Killer features
- Eleventy v4 by default
both v4 (Build Awesome) & v3 supported - "Thin client" architecture
thanks Blades[-plugin] for reusability - Tailwind v4 included
with Typography plugin & Blades[-kit] - Sveltia CMS included
modern Decap/Netlify CMS successor - Multisite support
thanks to symlink-based setup - One-click start
How it works?
Build Awesome Starter is an advanced version of 🥷 Bladeswitch starter:
- BUT focusing exclusively on Eleventy v4 and adding Tailwind v4 support.
- It reuses same Blades[-plugin] to symlink
eleventy.config.jsby default (so you don't have to maintain it anymore!) - It also reuses Nunjucks version of the same universal Blades[-kit]:
- universal means you can switch
.njkto.liquidany time - universal also means you can switch from Tailwind to Pico.css or even bare-metal Blades[.css]
- universal means you can switch
Local development
As simple as:
npm install # dependencies
npm start # development
npm run stage # serve production version locally
# ready to deploy! 🚀
CMS will be available locally at http://localhost:8080/admin/ (or similar port).
Showcase
any.digital
🥷 blades.ninja
minform.hostfurl.com
More info
Repository: /anyblades/build-awesome-starter
Featured by:
/starters and blog
/docs/starter
/en/docs/start for 11ty
/11ty/#min-starters
bladeswitch.com starter
/johnheenan/minform starter
/hostfurl/minformhf starter
- 🕶️ awesome-eleventy
Support:
/orgs/anyblades/discussions for questions and ideas
/anyblades/build-awesome-starter/issues for change requests or bug reports
/blog/discord for 11ty community support
/en/support for Sveltia CMS community support
License: MIT
🥷 Bladeswitch
Ultra-lightweight Blades starter compatible with BOTH Jekyll˂˂and˃˃11ty (Build Awesome) at the same time.
Killer features
Easy to start, easy to switch:
It allows you to develop locally without Ruby friction (thanks to 11ty), and deploy natively to GitHub Pages using built-in Jekyll engine — no GitHub Actions required!
Also includes Sveltia CMS. All of this — with only 3 direct dependencies:
Minimal dependencies
| 🥷 × Jekyll | 🥷 × 11ty (Build Awesome) |
|---|---|
|
|
|
|
|
|
Quick start
A. Natively, w/o GitHub Actions:
- Click ↑ to init your own repo.
- Go to ⚙️ Settings → Pages.
- Set Branch to
mainand Save.
B. Fully preconfigured:
Using 11ty (Build Awesome) on NetlifyAll you need
_includes/
└── default.liquid # YOUR layout template
_data/site.yml # YOUR site-wide metadata
*.md # YOUR content (editable via CMS!)
Under the hood:
_config.yml # Jekyll config
Gemfile # Jekyll gems
package.json # 11ty packages
admin/ # Sveltia CMS configs
More info
Featured by:
/starters
/docs/starter
jekyll-themes.com
/en/docs/start for 11ty & Jekyll
build.blades.ninja starter
/tricks/build-awesome-11ty/#min-starters
/anydigital/awesome-11ty-build-awesome
Minform starter
A very minimalist approach to adding in forms templating to a website starter template that supports markdown.
Comparison of Best minimal starters as of April 2026
Eleventy ecosystem offers a wide variety of starters.
Not sure where to begin? Start with a minimal template:
| Repo | Stats |
npm Dependencies | Custom CSS |
Custom JS |
Custom Templates |
What's Included? |
|---|---|---|---|---|---|---|
| ~10 | ~30 lines ♻️ uses tailwind & blades[.css] | 0 ♻️ uses eleventy-blades | ~10 lines ♻️ uses blades[.njk] | Sveltia CMS | ||
| ~10 | ~300 lines | ~200 lines | ~200 lines uses .njk | |||
| ~15 | ~200 lines | ~300 lines | ~250 lines uses .njk | |||
| 3 ♻️ | 0 ♻️ uses pico.css & blades[.css] | 0 ♻️ uses eleventy-blades | ~15 lines ♻️ uses blades[.liquid|.njk] | Sveltia CMS | ||
| Not up-to-date: | ||||||
| ~10 | ~150 lines | ~130 lines | ~250 lines uses .njk | Sveltia CMS | ||
| Not so minimal: | ||||||
| ~25 ⚠️ | ~1000 lines ⚠️ | ~30 files ⚠️ | ~20 files | Front Matter CMS local use only | ||
| ~40 ⚠️ | ~40 files ⚠️ | ~40 files ⚠️ | ~40 files ⚠️ | |||
| ~5 ♻️ | ~25 files ⚠️ | ~15 files | ~15 files | |||
| ~15 | ~30 files ⚠️ | ~10 files | ~10 files |