Norns

A meta-framework on top of Svelte and SvelteKit. Write components in Pug and Civet with the .n file extension — no template wrappers, no lang attributes, just clean syntax with optional types.

What's in the box

  • Civet everywhere. Writecount .= $state 0; reactivity just works. Civet's TypeScript-aware compiler emits ESM-correct output, so runes work without preprocessor magic.
  • Pug as the default markup. Concise, indented, no closing tags. Use.n files for zero boilerplate.
  • All of SvelteKit. File-based routing,+page.c loaders, layouts, adapters — nothing relearned.
  • Norns runtime. Feature-folder modularity, DI container, route/page wrappers with valibot validation, and a migrations CLI.
  • Style how you want. Norns ships no default styling. This app uses Tailwind v4; pick whatever you like.
norns-ui v0.0.13 · early access