Docs / CLI
Open documentation actions
Create Command
Scaffold a new Better Fullstack project with prompts, defaults, or explicit flags.
The create command writes a new project from a typed stack configuration. Use it interactively for exploration, or pass flags when you need the same project shape every time.
npm create better-fullstack@latest [project-name] -- [flags]For npm, Better Fullstack flags go after --. Generated npm commands may use npx create-better-fullstack@latest; that runs the same package entrypoint in a non-interactive form.
Command modes
| Mode | Command shape | Use it when |
|---|---|---|
| Wizard | [launcher] my-app | You want prompts and defaults. |
| Defaults | [launcher] my-app [flags] --yes | You want the default stack without prompts. |
| Scripted | [launcher] my-app [flags] | You want repeatable output. |
| Dry run | [launcher] my-app [flags] --dry-run | You want to inspect files before writing. |
Prompt behavior
- Explicit flags skip only the categories they cover.
--yesaccepts defaults and conflicts with core stack flags such as--frontend,--backend,--database,--orm,--auth, and--api.- Use
noneto disable optional categories, including--ai-docs none. - Use
--no-installand--no-gitwhen you want to inspect generated files before side effects. --verifyruns generated checks after scaffolding without starting dev servers.
Common flags
| Flag | Values or behavior |
|---|---|
--ecosystem | typescript react-native rust python go java elixir. Defaults to typescript. |
--template | t3 mern pern uniwind none. |
--part | Adds a multi-ecosystem stack part such as frontend:typescript:next or backend.orm:go:gorm. Repeat for each part. |
--addons | pwa tauri starlight biome lefthook husky ruler mcp skills turborepo fumadocs ultracite oxlint opentui wxt msw storybook swr tanstack-query tanstack-table tanstack-virtual tanstack-db tanstack-pacer backend-utils docker-compose none. |
--examples | ai chat-sdk tanstack-showcase none. |
--ai-docs | claude-md agents-md cursorrules none. |
--package-manager | npm pnpm bun yarn. |
--version-channel | stable latest beta. |
--web-deploy | cloudflare fly railway render netlify docker sst vercel none. |
--server-deploy | cloudflare fly railway render docker sst vercel none. |
--directory-conflict | Strategy for an existing target directory. |
--dry-run | Preview generated files without writing them. |
--verify | Run generated checks after scaffolding where supported. |
--yes | Accept defaults. Incompatible with core stack flags. |
--yolo | Skip safety confirmations where supported. |
--install / --no-install | Install or skip dependency installation. |
--git / --no-git | Initialize or skip Git. |
--disable-analytics | Opt out of anonymous CLI analytics. |
--verbose | Print detailed scaffold output. |
TypeScript flags
Use these with --ecosystem typescript.
| Flag | Values |
|---|---|
--frontend | tanstack-router react-router react-vite tanstack-start next vinext nuxt svelte solid solid-start astro qwik angular redwood fresh none. |
--backend | hono express fastify elysia fets nestjs adonisjs nitro encore convex self none. |
--runtime | bun node workers none. |
--database | sqlite postgres mysql mongodb edgedb redis none. |
--orm | drizzle prisma mongoose typeorm kysely mikroorm sequelize none. |
--db-setup | turso neon prisma-postgres planetscale mongodb-atlas supabase upstash d1 docker none. |
--manual-db | Skip provider-specific database setup prompts when applicable. |
--auth | better-auth go-better-auth clerk nextauth stack-auth supabase-auth auth0 none. |
--api | trpc orpc ts-rest garph graphql-yoga none. |
--astro-integration | react vue svelte solid none. |
Services
| Flag | Values |
|---|---|
--ai | vercel-ai mastra voltagent langgraph openai-agents google-adk modelfusion langchain llamaindex tanstack-ai ai-cli none. |
--payments | polar stripe lemon-squeezy paddle dodo none. |
--email | react-email resend nodemailer postmark sendgrid aws-ses mailgun plunk none. |
--realtime | socket-io partykit ably pusher liveblocks yjs none. |
--job-queue | bullmq trigger-dev inngest temporal none. |
--cms | payload sanity strapi tinacms directus none. |
--caching | upstash-redis none. |
--search | meilisearch typesense elasticsearch algolia none. |
--file-storage | s3 r2 cloudinary none. |
--file-upload | uploadthing filepond uppy none. |
--analytics | plausible umami none. |
--feature-flags | growthbook posthog launchdarkly flagsmith unleash none. |
UI and app behavior
| Flag | Values |
|---|---|
--css-framework | tailwind scss less postcss-only none. |
--ui-library | shadcn-ui shadcn-svelte daisyui radix-ui headless-ui park-ui chakra-ui nextui mantine mui antd base-ui ark-ui react-aria none. |
--state-management | zustand jotai nanostores redux-toolkit mobx xstate valtio tanstack-store legend-state none. |
--forms | tanstack-form react-hook-form formik final-form conform modular-forms none. |
--validation | zod valibot arktype typebox typia runtypes effect-schema none. |
--testing | vitest playwright vitest-playwright jest cypress none. |
--logging | pino winston evlog none. |
--observability | opentelemetry sentry grafana none. |
--animation | framer-motion gsap react-spring auto-animate lottie none. |
--i18n | i18next next-intl none. |
--effect | effect effect-full none. |
shadcn/ui flags
| Flag | Values |
|---|---|
--shadcn-base | radix base. |
--shadcn-style | vega nova maia lyra mira. |
--shadcn-icon-library | lucide tabler hugeicons phosphor remixicon. |
--shadcn-color-theme | neutral stone zinc gray amber blue cyan emerald fuchsia green indigo lime orange pink purple red rose sky teal violet yellow. |
--shadcn-base-color | neutral stone zinc gray. |
--shadcn-font | inter geist noto-sans nunito-sans figtree roboto raleway dm-sans public-sans outfit jetbrains-mono geist-mono. |
--shadcn-radius | default none small medium large. |
React Native flags
Use these with --ecosystem react-native.
| Flag | Values |
|---|---|
--frontend | native-bare native-uniwind native-unistyles. |
--mobile-navigation | expo-router react-navigation none. |
--mobile-ui | tamagui gluestack-ui uniwind unistyles none. |
--mobile-storage | mmkv none. |
--mobile-testing | maestro react-native-testing-library maestro-react-native-testing-library none. |
--mobile-push | expo-notifications none. |
--mobile-ota | expo-updates none. |
--mobile-deep-linking | expo-linking none. |
Language ecosystem flags
Rust
| Flag | Values |
|---|---|
--rust-web-framework | axum actix-web rocket none. |
--rust-frontend | leptos dioxus none. |
--rust-orm | sea-orm sqlx diesel none. |
--rust-api | tonic async-graphql none. |
--rust-cli | clap ratatui none. |
--rust-libraries | serde uuid chrono reqwest config dashmap parking-lot secrecy tokio-util utoipa validator jsonwebtoken argon2 tokio-test mockall proptest insta none. |
--rust-logging | tracing env-logger none. |
--rust-error-handling | anyhow-thiserror eyre none. |
--rust-caching | moka redis none. |
--rust-auth | oauth2 none. |
Python
| Flag | Values |
|---|---|
--python-web-framework | fastapi django flask litestar none. |
--python-orm | sqlalchemy sqlmodel tortoise-orm none. |
--python-validation | pydantic none. |
--python-ai | langchain llamaindex openai-sdk anthropic-sdk langgraph crewai haystack none. |
--python-auth | authlib jwt none. |
--python-api | django-rest-framework django-ninja none. |
--python-task-queue | celery rq dramatiq huey none. |
--python-graphql | strawberry ariadne none. |
--python-quality | ruff mypy pyright none. |
Go
| Flag | Values |
|---|---|
--go-web-framework | gin echo fiber chi none. |
--go-orm | gorm sqlc ent none. |
--go-api | grpc-go none. |
--go-cli | cobra bubbletea urfave-cli none. |
--go-logging | zap zerolog slog logrus none. |
--go-auth | casbin jwt none. |
GoBetterAuth is selected with the global --auth go-better-auth value. Go-native helpers use --go-auth.
Java
| Flag | Values |
|---|---|
--java-web-framework | spring-boot quarkus none. |
--java-build-tool | maven gradle none. |
--java-orm | spring-data-jpa none. |
--java-auth | spring-security none. |
--java-libraries | spring-actuator spring-validation flyway liquibase springdoc-openapi lombok mapstruct caffeine resilience4j spring-webflux spring-batch spring-kafka spring-mail spring-devtools micrometer-prometheus thymeleaf none. |
--java-testing-libraries | junit5 mockito testcontainers assertj rest-assured wiremock awaitility archunit jqwik none. |
Elixir
| Flag | Values |
|---|---|
--elixir-web-framework | phoenix phoenix-live-view none. |
--elixir-orm | ecto ecto-sql none. |
--elixir-auth | phx-gen-auth ueberauth guardian none. |
--elixir-api | rest absinthe none. |
--elixir-realtime | channels presence pubsub live-view-streams none. |
--elixir-jobs | oban quantum none. |
--elixir-validation | ecto-changesets nimble-options none. |
--elixir-http | req finch none. |
--elixir-json | jason none. |
--elixir-email | swoosh none. |
--elixir-caching | cachex nebulex none. |
--elixir-observability | telemetry opentelemetry prom_ex none. |
--elixir-testing | ex_unit mox bypass wallaby none. |
--elixir-quality | credo dialyxir sobelow none. |
--elixir-deploy | docker fly gigalixir mix-release none. |
Examples
Create a TypeScript app with explicit flags:
npm create better-fullstack@latest my-app -- \ --ecosystem typescript \ --frontend tanstack-router \ --backend hono \ --runtime node \ --database postgres \ --orm drizzle \ --db-setup none \ --api orpc \ --auth better-auth \ --css-framework tailwind \ --ui-library shadcn-ui \ --ai none \ --payments none \ --email none \ --examples none \ --addons none \ --ai-docs none \ --version-channel stable \ --no-install \ --no-gitCreate a multi-ecosystem project:
npm create better-fullstack@latest my-mixed-app -- \ --part frontend:typescript:next \ --part backend:go:gin \ --part backend.orm:go:gorm \ --part backend.auth:go:jwt \ --part database:universal:postgres \ --part mobile:react-native:native-bare \ --addons turborepo docker-composeCompatibility
- The CLI validates stack compatibility before generation.
- TypeScript
backend selfis for fullstack frontends and pairs withruntime none. - tRPC is React-oriented.
- Workers runtime support depends on the frontend/backend combination.
- UI libraries, deployment targets, providers, and addons are stack-sensitive.
- For a visual check, use the Compatibility Matrix or the Stack Builder.