Create Command

Full reference for create-better-fullstack flags, examples, and non-interactive usage.

Open documentation actions

The create command scaffolds a new project from a stack configuration. Run it as a wizard, accept defaults with --yes, or pass explicit flags for automation.

npm create better-fullstack@latest [project-name] -- [flags]

Prompt behavior

  • --yes accepts defaults and skips the stack wizard.
  • --yes conflicts with core stack flags such as --frontend, --backend, --database, --orm, --auth, and --api.
  • Explicit flags skip only the categories they cover.
  • Use none to disable optional categories, including --ai-docs none.
  • --dry-run previews the generated file tree without writing files.

TypeScript flags

Core stack

FlagValues
--frontendtanstack-router react-router react-vite tanstack-start next nuxt svelte solid solid-start astro qwik angular native-bare native-uniwind native-unistyles redwood fresh none
--backendhono express fastify elysia fets nestjs adonisjs nitro encore convex self none
--runtimenode bun workers none
--databasesqlite postgres mysql mongodb edgedb redis none
--ormdrizzle prisma mongoose typeorm kysely mikroorm sequelize none
--db-setupturso neon prisma-postgres planetscale mongodb-atlas supabase upstash d1 docker none
--manual-dbSkip provider-specific database setup prompts when applicable.
--authbetter-auth clerk nextauth stack-auth supabase-auth auth0 go-better-auth none
--apiorpc trpc ts-rest graphql-yoga garph none
--astro-integrationreact vue svelte solid none

Features and services

FlagValues
--aivercel-ai mastra voltagent langgraph openai-agents google-adk llamaindex langchain modelfusion tanstack-ai none
--paymentspolar stripe lemon-squeezy paddle dodo none
--emailresend react-email nodemailer postmark sendgrid aws-ses mailgun plunk none
--realtimesocket-io partykit ably pusher liveblocks yjs none
--job-queuebullmq trigger-dev inngest temporal none
--state-managementzustand jotai nanostores redux-toolkit mobx xstate valtio tanstack-store legend-state none
--formstanstack-form react-hook-form formik final-form conform modular-forms none
--validationzod valibot arktype typebox typia runtypes effect-schema none
--testingvitest playwright vitest-playwright jest cypress none
--loggingpino winston none
--observabilityopentelemetry sentry grafana none
--cmspayload sanity strapi tinacms none
--cachingupstash-redis none
--searchmeilisearch typesense elasticsearch algolia none
--file-storages3 r2 none
--file-uploaduploadthing filepond uppy none
--animationframer-motion gsap react-spring auto-animate lottie none
--analyticsplausible umami none
--feature-flagsgrowthbook posthog none
--i18ni18next next-intl none
--effecteffect effect-full none

UI

FlagValues
--css-frameworktailwind scss less postcss-only none
--ui-libraryshadcn-ui daisyui radix-ui headless-ui park-ui chakra-ui nextui mantine base-ui ark-ui react-aria none
--shadcn-baseradix base
--shadcn-stylevega nova maia lyra mira
--shadcn-icon-librarylucide tabler hugeicons phosphor remixicon
--shadcn-color-themeneutral stone zinc gray amber blue cyan emerald fuchsia green indigo lime orange pink purple red rose sky teal violet yellow
--shadcn-base-colorneutral stone zinc gray
--shadcn-fontinter geist figtree noto-sans nunito-sans roboto raleway dm-sans public-sans outfit jetbrains-mono geist-mono
--shadcn-radiusdefault none small medium large

Language ecosystem flags

Rust

FlagValues
--rust-web-frameworkaxum actix-web rocket none
--rust-frontendleptos dioxus none
--rust-ormsea-orm sqlx diesel none
--rust-apitonic async-graphql none
--rust-cliclap ratatui none
--rust-librariesserde validator jsonwebtoken argon2 tokio-test mockall none
--rust-loggingtracing env-logger none
--rust-error-handlinganyhow-thiserror eyre none
--rust-cachingmoka redis none
--rust-authoauth2 none

Python

FlagValues
--python-web-frameworkfastapi django flask litestar none
--python-ormsqlalchemy sqlmodel tortoise-orm none
--python-validationpydantic none
--python-ailangchain llamaindex openai-sdk anthropic-sdk langgraph crewai none
--python-authauthlib jwt none
--python-task-queuecelery none
--python-graphqlstrawberry none
--python-qualityruff none

Go

FlagValues
--go-web-frameworkgin echo fiber chi none
--go-ormgorm sqlc ent none
--go-apigrpc-go none
--go-clicobra bubbletea none
--go-loggingzap zerolog slog none
--go-authcasbin jwt none

Go also supports the global --auth go-better-auth option for GoBetterAuth. That is separate from --go-auth casbin|jwt|none.

Java

FlagValues
--java-web-frameworkspring-boot none
--java-build-toolmaven gradle none
--java-ormspring-data-jpa none
--java-authspring-security none
--java-librariesspring-actuator spring-validation flyway none
--java-testing-librariesjunit5 mockito testcontainers none

Spring Boot requires Maven or Gradle. Java ORM, auth, and libraries require Spring Boot plus a build tool. Flyway requires Spring Data JPA.

Global flags

FlagDescription
--ecosystemtypescript rust python go java. Defaults to typescript.
--templatet3 mern pern uniwind none.
--addonsmcp skills turborepo starlight fumadocs biome oxlint ultracite lefthook husky pwa tauri wxt msw storybook tanstack-query tanstack-table tanstack-virtual tanstack-db tanstack-pacer opentui ruler none.
--examplesai chat-sdk tanstack-showcase none.
--ai-docsclaude-md agents-md cursorrules none.
--package-managernpm pnpm bun yarn.
--web-deployvercel cloudflare fly railway docker sst none.
--server-deployvercel cloudflare fly railway docker sst none.
--version-channelstable latest beta.
--directory-conflictConflict strategy for an existing target directory.
--dry-runPreview without writing files.
--yesAccept defaults; incompatible with core stack flags.
--yoloSkip safety confirmations where supported.
--no-installSkip dependency installation.
--no-gitSkip Git initialization.
--disable-analyticsOpt out of anonymous analytics.
--verbosePrint detailed scaffold output.

Scripted TypeScript example

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 \
  --package-manager npm \
  --no-install \
  --no-git

Compatibility notes

  • tRPC is for React-based TypeScript frontends.
  • Qwik, Angular, Redwood, and Fresh have narrower API/backend support than the general option list.
  • --backend self is only for fullstack frameworks such as Next.js, TanStack Start, Astro, Nuxt, SvelteKit, and SolidStart, and uses --runtime none.
  • Workers runtime support depends on the backend and frontend combination.
  • The compatibility checker runs before generation and rejects invalid combinations with a clear error.