Static or full server
Start with a static site and graduate to a full Express-backed server without switching frameworks. Flip type: 'static' to type: 'server' and your templates, styles, and assets carry over. Add API endpoints, middleware, and SSR when you need them — not before.
Zero config, then grow
Drop your views, scripts, and styles into conventional directories and Clovie auto-detects everything. No webpack config, no plugin maze. When you need control, clovie.config.js is a single flat object — readable in one screen.
Template agnostic
Bring your own engine — Handlebars, Nunjucks, Pug, Mustache, or a plain function. Pass a string name or a (template, data) => html callback. No lock-in.
Why Clovie?
- Fast builds — esbuild-powered JS bundling and SCSS compilation with incremental caching
- Live reload — WebSocket-based hot reload in development, no browser extension needed
- Data-driven pages — Generate pages from arrays or async API calls at build time
- Composable server layers — Split APIs across modules with defineRoutes / defineApi factories
- AI-ready — Ships a .cursor/skills/clovie.mdc file so AI assistants understand your project out of the box
Get started
Static site
npx clovie create my-site
cd my-site && npm install && npm run devFull-stack app
npx clovie create my-app --template server
cd my-app && npm install && npm run dev