Getting Started with Astro + EmDash
A step-by-step guide to building a fast site with Astro and the EmDash CMS.
Why This Stack?
Astro provides server-rendered pages and an islands architecture, while EmDash supplies a database-backed CMS with an admin panel, media library, and structured content.
Defining Content Types
Collections are defined in the seed file or the admin UI. Each collection becomes a real SQL table with typed columns, and you can generate TypeScript types with the emdash types command.
Creating Your First Post
Open the admin panel at /_emdash/admin, create a post, and publish it. Astro reads it live via getEmDashCollection — no rebuild required.
Going Further
Customize the design tokens, add new collections, and wire up media uploads to Cloudflare R2 for production.