44809b16345518c37bf3c4f084fc263098723dd1
EmDash Blog Template
A clean, minimal blog built with EmDash. Runs on any Node.js server with SQLite and local file storage.
What's Included
- Featured post hero on the homepage
- Post archive with reading time estimates
- Category and tag archives
- Full-text search
- RSS feed
- SEO metadata and JSON-LD
- Dark/light mode
- Audit log plugin
Pages
| Page | Route |
|---|---|
| Homepage | / |
| All posts | /posts |
| Single post | /posts/:slug |
| Category archive | /category/:slug |
| Tag archive | /tag/:slug |
| Search | /search |
| Static pages | /pages/:slug |
| 404 | fallback |
Screenshots
| Desktop | Mobile | |
|---|---|---|
| Light | ![]() |
![]() |
| Dark | ![]() |
![]() |
Infrastructure
- Runtime: Node.js
- Database: SQLite (local file)
- Storage: Local filesystem
- Framework: Astro with
@astrojs/node
Getting Started
pnpm install
pnpm bootstrap
pnpm dev
Open http://localhost:4321 for the site and http://localhost:4321/_emdash/admin for the CMS.
Want Cloudflare Instead?
See the Cloudflare variant for a version that deploys to Cloudflare Workers with D1 and R2.
See Also
Description
Languages
Astro
90.1%
TypeScript
5%
CSS
3.2%
JavaScript
1%
Dockerfile
0.7%



