Presets
Choose a route, not a vibe.
Pick the architecture first—TypeScript fullstack, Convex + Next.js, Rust API, Solana web, and others. The CLI generates scopes, docs, and verification hooks that match that route. No preset is marked Stable until the verification matrix proves it.
| Preset | Status | Capabilities | Shape | Scaffold | Best for |
|---|---|---|---|---|---|
typescript-fullstack TypeScript Fullstack | Requires validation |
| Next.js web + Express API + tRPC + Better Auth + Prisma | bun run dev:cli -- my-app --preset=typescript-fullstack --yes | Default production app foundation |
rust-api Rust API | Requires validation |
| Cargo workspace with service and worker slots | bun run dev:cli -- my-app --preset=rust-api --yes | Engine services, background work, and future polyglot scale |
rust-fullstack Rust Fullstack | Requires validation |
| Next.js web + Axum API + shared deployment docs | bun run dev:cli -- my-app --preset=rust-fullstack --yes | Teams that want Rust on the API with a typed web client |
convex-product Convex + Next.js | Requires validation |
| Next.js + Convex functions + Better Auth stubs | bun run dev:cli -- my-app --preset=convex-product --yes | Realtime apps, serverless backend, no Prisma/Neon ops |
solana-program Solana Program | Requires validation |
| Anchor program + generated client boundaries | bun run dev:cli -- my-app --preset=solana-program --yes | On-chain program work with explicit client contracts |
solana-web Solana Web dApp | Requires validation |
| Next.js dApp + program + wallet adapter direction | bun run dev:cli -- my-app --preset=solana-web --yes | Web3 apps with web wallet flows |
solana-mobile Solana Mobile dApp | Requires validation |
| Expo mobile + program + mobile wallet boundary | bun run dev:cli -- my-app --preset=solana-mobile --yes | Mobile-first Solana products |
solana-product Solana Product | Requires validation |
| Web + mobile + program + shared Solana config | bun run dev:cli -- my-app --preset=solana-product --yes | Full product surface across web, mobile, and chain |
Entry routes
Customize walks capability validation; Experiments is explicit opt-in for unstable generators. Both use the same CLI entrypoint with different preset ids.
| Preset | Status | Capabilities | Shape | Scaffold | Best for |
|---|---|---|---|---|---|
customize Customize | Requires validation | — | Capability picker with validation gates | bun run dev:cli -- my-app --preset=customize --yes | Teams that need a bespoke mix of bundles and backends |
experiments Experiments | Experimental | — | Experimental routes only | bun run dev:cli -- my-app --preset=experiments --yes | Trying unstable generators with clear expectations |
Evidence
Verification matrix
Code guard in packages/registry. Guide: verification and presets.
| Preset | Structure | Bun | pnpm | Install | Lint | Typecheck | Test | Build | Docs | Agent context | Rust | Solana | Convex | Deploy |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
typescript-fullstack Requires validation | yes | yes | yes | no | no | no | no | no | yes | yes | no | no | no | no |
rust-api Requires validation | yes | yes | no | no | no | no | no | no | yes | yes | yes | no | no | no |
rust-fullstack Requires validation | yes | yes | no | no | no | no | no | no | yes | yes | yes | no | no | no |
convex-product Requires validation | yes | yes | no | no | no | no | no | no | yes | yes | no | no | yes | no |
solana-program Requires validation | yes | yes | no | no | no | no | no | no | no | no | no | yes | no | no |
solana-web Requires validation | yes | yes | no | no | no | no | no | no | no | no | no | yes | no | no |
solana-mobile Requires validation | yes | yes | no | no | no | no | no | no | no | no | no | yes | no | no |
solana-product Requires validation | yes | yes | no | no | no | no | no | no | no | no | no | yes | no | no |