add svelte

This commit is contained in:
Aman Varshney
2025-04-26 08:12:01 +05:30
parent 0e8af094da
commit 8adf020c2a
45 changed files with 1212 additions and 97 deletions

View File

@@ -21,22 +21,35 @@ Follow the prompts to configure your project or use the `--yes` flag for default
## Features
- **Monorepo**: Turborepo for optimized build system and workspace management
- **Frontend**: React, TanStack Router, TanStack Query, Tailwind CSS with shadcn/ui components
- **Native Apps**: Create React Native apps with Expo for iOS and Android
- **Backend Frameworks**: Choose between Hono, Express, or Elysia
- **API Layer**: End-to-end type safety with tRPC
- **Runtime Options**: Choose between Bun or Node.js for your server
- **Database Options**: SQLite (via Turso), PostgreSQL, MongoDB, or no database
- **ORM Selection**: Choose between Drizzle ORM or Prisma
- **Authentication**: Optional auth setup with Better-Auth
- **Progressive Web App**: Add PWA support with service workers and installable apps
- **Desktop Apps**: Build native desktop apps with Tauri integration
- **Documentation**: Add an Astro Starlight documentation site to your project
- **Code Quality**: Biome for linting and formatting
- **Git Hooks**: Husky with lint-staged for pre-commit checks
- **Examples**: Todo app with full CRUD functionality, AI Chat using AI SDK
- **Developer Experience**: Git initialization, various package manager support (npm, pnpm, bun)
- **TypeScript**: End-to-end type safety.
- **Monorepo Structure**: Choose between Turborepo for optimized builds or standard pnpm/npm/bun workspaces.
- **Frontend Options**:
- React with Vite: TanStack Router, React Router, or TanStack Start.
- Next.js (Full-stack or frontend-only).
- Nuxt (Vue framework).
- SvelteKit.
- React Native with Expo for mobile apps.
- None.
- **UI**: Tailwind CSS with shadcn/ui components pre-configured.
- **Backend Frameworks**: Choose between Hono, Express, Elysia, or use Next.js API routes.
- **API Layer**: End-to-end type safety with tRPC or oRPC.
- **Runtime Options**: Choose between Bun or Node.js for your server.
- **Database Options**: SQLite, PostgreSQL, MySQL, MongoDB, or no database.
- **ORM Selection**: Choose between Drizzle ORM (TypeScript-first), Prisma (feature-rich), or no ORM.
- **Database Setup**: Optional automated setup for Turso (SQLite), Neon (Postgres), Prisma Postgres (Supabase), or MongoDB Atlas.
- **Authentication**: Optional auth setup using Better-Auth (email/password, OAuth coming soon).
- **Addons**:
- **PWA**: Add Progressive Web App support.
- **Tauri**: Build native desktop applications.
- **Starlight**: Add an Astro-based documentation site.
- **Biome**: Integrated linting and formatting.
- **Husky**: Git hooks for code quality checks (lint-staged).
- **Turborepo**: Optimized monorepo build system.
- **Examples**: Include pre-built examples like a Todo app or an AI Chat interface (using Vercel AI SDK).
- **Developer Experience**:
- Automatic Git initialization.
- Choice of package manager (npm, pnpm, bun).
- Optional automatic dependency installation.
## Usage
@@ -50,53 +63,61 @@ Options:
--orm <type> ORM type (none, drizzle, prisma)
--auth Include authentication
--no-auth Exclude authentication
--frontend <types...> Frontend types (tanstack-router, react-router, tanstack-start, native, none)
--addons <types...> Additional addons (pwa, tauri, starlight, biome, husky, none)
--frontend <types...> Frontend types (tanstack-router, react-router, tanstack-start, next, nuxt, svelte, native, 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, prisma-postgres, mongodb-atlas, none)
--db-setup <setup> Database setup (turso, neon, prisma-postgres, mongodb-atlas, none)
--backend <framework> Backend framework (hono, express, elysia)
--runtime <runtime> Runtime (bun, node)
--api <type> API type (trpc, orpc)
-h, --help Display help
```
## Examples
Create a project with default configuration:
```bash
npx create-better-t-stack my-app --yes
```
Create a project with specific options:
```bash
npx create-better-t-stack my-app --database postgres --orm drizzle --auth --addons pwa biome
```
Create a project with Elysia and Node.js runtime:
```bash
npx create-better-t-stack my-app --backend elysia --runtime node
```
Create a project with specific frontend options:
```bash
npx create-better-t-stack my-app --frontend tanstack-router native
```
Create a project with examples:
```bash
npx create-better-t-stack my-app --examples todo ai
```
Create a project with Turso database setup:
```bash
npx create-better-t-stack my-app --db-setup turso
```
Create a project with documentation site:
```bash
npx create-better-t-stack my-app --addons starlight
```