JSPM

create-better-t-stack

2.9.9
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 3022
  • Score
    100M100P100Q119204F
  • License MIT

A modern CLI tool for scaffolding end-to-end type-safe TypeScript projects with best practices and customizable configurations

Package Exports

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (create-better-t-stack) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    Create Better-T-Stack CLI

    A modern CLI tool for scaffolding end-to-end type-safe TypeScript projects with best practices and customizable configurations

    demo

    Quick Start

    Run without installing globally:

    # Using npm
    npx create-better-t-stack@latest
    
    # Using bun
    bun create better-t-stack@latest
    
    # Using pnpm
    pnpm create better-t-stack@latest

    Follow the prompts to configure your project or use the --yes flag for defaults.

    Features

    Category Options
    TypeScript End-to-end type safety across all parts of your application
    Frontend • React with TanStack Router
    • React with React Router
    • React with TanStack Start (SSR)
    • Next.js
    • SvelteKit
    • Nuxt (Vue)
    • SolidJS
    • React Native with NativeWind (via Expo)
    • React Native with Unistyles (via Expo)
    • None
    Backend • Hono
    • Express
    • Elysia
    • Next.js API routes
    • Convex
    • None
    API Layer • tRPC (type-safe APIs)
    • oRPC (OpenAPI-compatible type-safe APIs)
    • None
    Runtime • Bun
    • Node.js
    Database • SQLite
    • PostgreSQL
    • MySQL
    • MongoDB
    • None
    ORM • Drizzle (TypeScript-first)
    • Prisma (feature-rich)
    • Mongoose (for MongoDB)
    • None
    Database Setup • Turso (SQLite)
    • Neon (PostgreSQL)
    • Prisma Postgres (via Prisma Accelerate)
    • MongoDB Atlas
    • None (manual setup)
    Authentication Better-Auth (email/password, with more options coming soon)
    Styling Tailwind CSS with shadcn/ui components
    Addons • PWA support
    • Tauri (desktop applications)
    • Starlight (documentation site)
    • Biome (linting and formatting)
    • Husky (Git hooks)
    • Turborepo (optimized builds)
    Examples • Todo app
    • AI Chat interface (using Vercel AI SDK)
    Developer Experience • Automatic Git initialization
    • Package manager choice (npm, pnpm, bun)
    • Automatic dependency installation

    Usage

    Usage: create-better-t-stack [project-directory] [options]
    
    Options:
      -V, --version                   Output the version number
      -y, --yes                       Use default configuration
      --database <type>               Database type (none, sqlite, postgres, mysql, mongodb)
      --orm <type>                    ORM type (none, drizzle, prisma, mongoose)
      --auth                          Include authentication
      --no-auth                       Exclude authentication
      --frontend <types...>           Frontend types (tanstack-router, react-router, tanstack-start, next, nuxt, svelte, solid, native-nativewind, native-unistyles, none)
      --addons <types...>             Additional addons (pwa, tauri, starlight, biome, husky, turborepo, none)
      --examples <types...>           Examples to include (todo, ai, none)
      --git                           Initialize git repository
      --no-git                        Skip git initialization
      --package-manager <pm>          Package manager (npm, pnpm, bun)
      --install                       Install dependencies
      --no-install                    Skip installing dependencies
      --db-setup <setup>              Database setup (turso, neon, prisma-postgres, mongodb-atlas, none)
      --backend <framework>           Backend framework (hono, express, elysia, next, convex)
      --runtime <runtime>             Runtime (bun, node, none)
      --api <type>                    API type (trpc, orpc, none)
      -h, --help                      Display help

    Examples

    Create a project with default configuration:

    npx create-better-t-stack my-app --yes

    Create a project with specific options:

    npx create-better-t-stack my-app --database postgres --orm drizzle --auth --addons pwa biome

    Create a project with Elysia backend and Node.js runtime:

    npx create-better-t-stack my-app --backend elysia --runtime node

    Create a project with multiple frontend options:

    npx create-better-t-stack my-app --frontend tanstack-router native

    Create a project with examples:

    npx create-better-t-stack my-app --examples todo ai

    Create a project with Turso database setup:

    npx create-better-t-stack my-app --database sqlite --orm drizzle --db-setup turso

    Create a project with Convex backend:

    npx create-better-t-stack my-app --backend convex --frontend tanstack-router

    Create a project with documentation site:

    npx create-better-t-stack my-app --addons starlight

    Compatibility Notes

    • Convex backend: Automatically disables authentication, database, ORM, and API options
    • Backend 'none': If selected, this option will force related options like API, ORM, database, authentication, and runtime to 'none'. Examples will also be disabled (set to none/empty).
    • SvelteKit, Nuxt, and SolidJS frontends are only compatible with oRPC API layer
    • PWA support requires React with TanStack Router, React Router, or SolidJS
    • Tauri desktop app requires React (TanStack Router/React Router), Nuxt, SvelteKit, or SolidJS
    • AI example is not compatible with Elysia backend or SolidJS frontend

    Project Structure

    The created project follows a clean monorepo structure:

    my-better-t-app/
    ├── apps/
    │   ├── web/          # Frontend application
    │   ├── server/       # Backend API
    │   ├── native/       # (optional) Mobile application
    │   └── docs/         # (optional) Documentation site
    ├── packages/         # Shared packages
    └── README.md         # Auto-generated project documentation

    After project creation, you'll receive detailed instructions for next steps and additional setup requirements.

    Sponsors

    Sponsors