MossKit is a Bun-first starter generator for full-stack apps. It gives you a Vite + React frontend, Hono backend, Drizzle database layer, and shared TypeScript contracts in one monorepo.
Use it when you want sensible local defaults without committing to a deployment platform up front.
bunx @joelthompson/create-mosskit my-app- Bun workspaces with
frontend,backend, andsharedpackages - Vite + React with TanStack Router and TanStack Query
- Hono API with Drizzle and PostgreSQL
- Shared TypeScript types and Zod schemas
- Vitest, Oxlint, Prettier, and seeded example tests
- Docker Compose for local Postgres
- Tailscale local-network mode with optional SQLite
- Optional Clerk auth and shadcn/ui overlays
- Optional Railway example assets in generated apps
bunx @joelthompson/create-mosskit my-app
cd my-app
bun run db:start
bun run devFrontend runs on http://localhost:5173.
Backend runs on http://localhost:3000.
For a Tailscale-ready local app with SQLite instead of Postgres:
bunx @joelthompson/create-mosskit my-app --tailscale --sqlite
cd my-app
bun run db:migrate
bun run devGenerated apps include mosskit.json, which MossKit uses for project info and feature management.
bunx @joelthompson/create-mosskit info
bunx @joelthompson/create-mosskit features
bunx @joelthompson/create-mosskit add auth
bunx @joelthompson/create-mosskit add shadcnmy-app/
├── frontend/ # Vite + React app
├── backend/ # Hono + Drizzle API
├── shared/ # shared types, schemas, and utilities
└── mosskit.json
MossKit chooses local app architecture and tooling for you: Bun, Vite, React, Hono, Drizzle, PostgreSQL, and shared contracts.
You still choose deployment platform, production hosting topology, auth, and whether to include shadcn/ui.