CLI to scaffold new projects with my preferred stack, optimized for Cloudflare deployment.
Interactive mode — prompts for all options:
bunx @jlmx/starterPass a project name to skip the name prompt:
bunx @jlmx/starter my-appOne-liner with flags — fully non-interactive:
bunx @jlmx/starter my-app --template nextjs --features tailwind,fonts,cloudflare --bindings d1,r2 --ai claudeAccept all defaults with no prompts:
bunx @jlmx/starter my-app --yes| Flag | Values | Description |
|---|---|---|
--template |
tanstack-start, nextjs |
Framework template |
--features |
tailwind,fonts,auth,cloudflare |
Comma-separated feature list |
--bindings |
d1,r2,kv,ai,queues |
Cloudflare bindings (requires cloudflare feature) |
--ai |
none, agents, claude, both |
AI coding assistant instructions |
-y, --yes |
— | Accept all defaults, skip all prompts |
-h, --help |
— | Show help |
-v, --version |
— | Show version |
Defaults (used with --yes): tanstack-start, features tailwind,fonts,cloudflare, no bindings, no AI instructions.
- TanStack Start - Full-stack React with TanStack Router
- Next.js - Full-stack React with App Router
All projects include:
- Biome - Fast linting and formatting (replaces ESLint + Prettier)
- Logger - Structured logging utility
- Result Type - Explicit error handling (neverthrow pattern)
Optional:
- Tailwind CSS - Custom design system with
tailwindcss-animate - Custom Fonts - Inter + JetBrains Mono via Fontsource
- Authentication - Better Auth + Drizzle ORM
- Cloudflare Workers - Edge deployment with D1, R2, KV, AI, Queues
- AI Instructions - AGENTS.md and/or CLAUDE.md for coding assistants
When cloudflare is selected, you can enable:
| Binding | Description |
|---|---|
d1 |
SQLite database at the edge |
r2 |
S3-compatible object storage |
kv |
Key-value storage |
ai |
Workers AI models |
queues |
Message queues |
# Run locally
bun run dev
# Build
bun run build
# Lint
bun run lintMIT