Getting Started

Scaffold a new Dune site and have it running in under five minutes.

Requirements

Install Deno if you haven't already:

curl -fsSL https://deno.land/install.sh | sh

Install the Dune CLI

deno install -A -n dune jsr:@dune/core/cli

This makes dune available globally. Verify with dune --version.

Create a new site

dune new my-site
cd my-site

This creates:

my-site/
├── deno.json          # import map + compiler options
├── config/
│   └── site.yaml      # site title, theme, URL
├── content/
│   └── index.md       # your first page
└── themes/
    └── starter/       # starter theme (Preact TSX)

Start the dev server

dune dev

Open http://localhost:8080. Changes to content are picked up on the next request — no restart required. Template changes require a restart (Deno caches compiled TSX).

Your first page

Open content/index.md:

---
title: Hello, Dune
---

Welcome to my site!

The frontmatter key title becomes the page title. Any markdown below the --- is rendered as HTML and passed to your theme's default template.

Add another page

Create content/01.about.md:

---
title: About
---

This site is built with Dune.

The 01. prefix controls the navigation order. Dune strips these prefixes from the URL — the page will be served at /about.

Next steps