Commands
Complete reference for all CLI commands
Overview
The Better-T-Stack CLI provides several commands to manage your TypeScript projects.
init (Default Command)
Creates a new Better-T-Stack project.
create-better-t-stack [project-directory] [options]Parameters
project-directory(optional): Name or path for your project directory
Key Options
--yes, -y: Use default configuration (skips prompts)--verbose: Show detailed result information as JSON--yolo: Bypass validations and compatibility checks--package-manager <pm>:npm,pnpm,bun--install / --no-install: Install dependencies after creation--git / --no-git: Initialize Git repository--frontend <types...>: Web and/or native frameworks (see Options)--backend <framework>:hono,express,fastify,elysia,convex,self,none--runtime <runtime>:bun,node,workers(noneonly with--backend convexor--backend none)--database <type>:none,sqlite,postgres,mysql,mongodb--orm <type>:none,drizzle,prisma,mongoose--api <type>:none,trpc,orpc--auth <provider>:better-auth,clerk,none(see Options)--payments <provider>:polar,none--db-setup <setup>:none,turso,d1,neon,supabase,prisma-postgres,planetscale,mongodb-atlas,docker--examples <types...>:none,todo,ai--web-deploy <setup>:none,alchemy--server-deploy <setup>:none,alchemy--template <type>:none,mern,pern,t3,uniwind--directory-conflict <strategy>:merge,overwrite,increment,error--render-title / --no-render-title: Show/hide ASCII art title--disable-analytics / --no-disable-analytics: Control analytics collection--manual-db: Skip automatic database setup prompts
See the full reference in Options.
Examples
# Default setup with prompts
create-better-t-stack
# Quick setup with defaults
create-better-t-stack --yes
# Specific configuration
create-better-t-stack --database postgres --backend hono --frontend tanstack-routeradd
Adds addons or deployment configurations to an existing Better-T-Stack project.
create-better-t-stack add [options]Options
--addons <types...>: Addons to add (see Addons)--web-deploy <setup>: Web deployment setup (none,alchemy)--server-deploy <setup>: Server deployment setup (none,alchemy)--project-dir <path>: Project directory (defaults to current directory)--install: Install dependencies after adding--package-manager <pm>: Package manager to use
Examples
# Add addons interactively
create-better-t-stack add
# Add specific addons
create-better-t-stack add --addons pwa tauri --install
# Add deployment setup
create-better-t-stack add --web-deploy alchemysponsors
Displays Better-T-Stack sponsors.
create-better-t-stack sponsorsShows a list of project sponsors and supporters.
docs
Opens the Better-T-Stack documentation in your default browser.
create-better-t-stack docsOpens https://better-t-stack.dev/docs in your browser.
builder
Opens the web-based stack builder in your default browser.
create-better-t-stack builderOpens https://better-t-stack.dev/new where you can configure your stack visually.
Global Options
These options work with any command:
--help, -h: Display help information--version, -V: Display CLI version
Command Examples
Create a Full-Stack App
create-better-t-stack \
--database postgres \
--orm drizzle \
--backend hono \
--frontend tanstack-router \
--auth \
--addons pwa biomeCreate a Backend-Only Project
create-better-t-stack api-server \
--frontend none \
--backend hono \
--database postgres \
--orm drizzle \
--api trpcAdd Features to Existing Project
cd my-existing-project
create-better-t-stack add --addons tauri starlight --installProgrammatic Usage
For advanced use cases, automation, or integration with other tools, you can use the Programmatic API to create projects from Node.js code:
import { create } from "create-better-t-stack";
const result = await create("my-app", {
frontend: ["tanstack-router"],
backend: "hono",
database: "sqlite",
orm: "drizzle",
});
if (result.success) {
console.log(`Project created at: ${result.projectDirectory}`);
}This is useful for:
- Build tools and generators - Create projects from templates
- CI/CD pipelines - Generate test projects automatically
- Development workflows - Batch create related projects
- Custom tooling - Integrate with your existing development setup
See the Programmatic API documentation for complete examples and API reference.