Introduction
Create Better T Stack is an opinionated project scaffolding CLI that generates a complete, type-safe TypeScript project in seconds. It lets you pick from curated combinations of backend frameworks, databases, auth solutions, and deployment targets, all pre-wired with end-to-end type safety.
What Create Better T Stack Does
- Scaffold a full-stack TypeScript monorepo with interactive prompts
- Wire up backend (Hono, Express), database (Drizzle, Prisma), and auth (Better Auth)
- Generate API routes with end-to-end type safety via tRPC or Hono RPC
- Configure deployment targets for Vercel, Railway, or Docker
- Set up a mobile app with Expo when selected
Architecture Overview
The CLI is built with clack/prompts for the interactive experience and uses file templates with conditional includes based on user selections. It generates a Turborepo monorepo with separate packages for the web frontend, API server, shared types, and optionally a mobile app. All packages share TypeScript configuration and type definitions.
Self-Hosting & Configuration
- Run via npx with no global installation required
- Choose your runtime: Bun or Node.js
- Select a frontend framework: React with TanStack Router, SvelteKit, or SolidStart
- Pick a database: SQLite, PostgreSQL, or MySQL with Drizzle or Prisma ORM
- Enable optional addons like Tailwind CSS, shadcn/ui, and Fumadocs
Key Features
- Interactive CLI with beautiful terminal UI powered by clack
- End-to-end type safety from database schema to frontend components
- Monorepo structure with Turborepo for efficient builds across packages
- Pre-configured linting, formatting, and CI/CD templates
- Expo integration for building cross-platform mobile apps from the same codebase
Comparison with Similar Tools
- create-t3-app — focuses on Next.js; Better T Stack supports multiple frontend frameworks
- create-next-app — Next.js only with minimal setup; Better T Stack provides full-stack scaffolding
- Projen — generates project config files; Better T Stack generates a complete working application
- Yeoman — generic scaffolding; Better T Stack is purpose-built for type-safe TypeScript stacks
FAQ
Q: Can I use it without a monorepo? A: The generated project uses Turborepo by default for monorepo management. Single-package mode is not currently supported.
Q: Which databases are supported? A: SQLite, PostgreSQL, and MySQL with either Drizzle ORM or Prisma as the query layer.
Q: Can I add features after scaffolding? A: The CLI generates standard code, so you can modify and extend it freely. There is no lock-in to the scaffolding tool.
Q: Does it support serverless deployment? A: Yes. Vercel and similar platforms are supported out of the box with the appropriate adapter configuration.