Setup
Scaffold the project and get kiri serving it.
-
Scaffold from a template
npx kiri create default studio-plie cd studio-pliekiri createclones thedefaulttemplate's repo, deep-merges itspackage.json, writes what you type intokirigami.yaml, then runsgit initandnpm installfor you. Runnpx kiri create --listany time to see the official templates. -
Look at what you got
studio-plie/ ├── kirigami.yaml ├── package.json └── src/ ← kirigami.root ├── _layouts/ ← header.php / footer.php ├── _lib/ ← functions.php (tags/hooks/plugins) ├── _index.php → index.html ├── styles/ └── scripts/Two naming rules explain the whole tree: a file
_name.phpcompiles toname.htmlin the same folder (_index.php→index.html); a folder starting with_is never walked as a page directory — that's where layouts, includes and data live. -
Start the dev server
npx kiri serveLeave this running. It rebuilds pages, styles and scripts on every save, serves
src/athttp://127.0.0.1:4321, and reloads the open tab once a rebuild finishes — asass-only change even hot-swaps the stylesheet without a full reload. Open that URL and leave it be for the rest of this tutorial.
NOTE
kiri serve's reload is Server-Sent Events, not a live-reload framework or a WebSocket library — node:http and node:fs are the whole dependency list. The next part turns the single starter page into the three real pages Studio Plié needs.