tanstack-skills/tanstack-skills

tanstack-cli

Project scaffolding CLI with 30+ integrations, custom templates, and MCP server for AI agents.

소스 보기
원본 Skill 문서

원본 저장소의 제목, 예시, 코드, 표, 링크, 이미지를 유지해 표시합니다.

Overview

TanStack CLI is an interactive scaffolding tool for creating TanStack Start applications. It provides guided project creation with 30+ pre-built integrations covering authentication, databases, deployment, and developer tools. It also includes an MCP (Model Context Protocol) server for AI agent assistance and supports custom templates for team-standardized setups.

Package: @tanstack/cli Status: Stable

Installation & Usage

bash
# Create a new project (interactive)
npx @tanstack/cli create my-app

# Create with specific integrations
npx @tanstack/cli create my-app --integrations tanstack-query,clerk,drizzle

# Global install
npm install -g @tanstack/cli
tanstack create my-app

Project Creation

Interactive Mode

bash
npx @tanstack/cli create my-app
# Prompts for:
# - Project name
# - Integration selection
# - Configuration options

With Integrations Flag

bash
# Multiple integrations
npx @tanstack/cli create my-app --integrations tanstack-query,tanstack-form,drizzle,neon,clerk

# Deployment target
npx @tanstack/cli create my-app --integrations vercel

# Full stack setup
npx @tanstack/cli create my-app --integrations tanstack-query,tanstack-form,tanstack-table,clerk,drizzle,neon,vercel,sentry

Available Integrations

TanStack Libraries

IntegrationDescription
tanstack-queryAsync state management
tanstack-formType-safe form management
tanstack-tableHeadless table/datagrid
tanstack-storeReactive data store
tanstack-virtualList virtualization
tanstack-aiAI SDK integration
tanstack-dbClient-side database
tanstack-pacerDebouncing/throttling utilities

Authentication

IntegrationDescription
clerkClerk authentication
better-authBetter Auth integration
workosWorkOS identity management

Databases & ORMs

IntegrationDescription
drizzleDrizzle ORM
prismaPrisma ORM
neonNeon serverless Postgres
convexConvex backend platform

Deployment

IntegrationDescription
vercelVercel deployment
netlifyNetlify deployment
cloudflareCloudflare Workers/Pages
nitroNitro server engine

Developer Tools

IntegrationDescription
eslintESLint configuration
biomeBiome linting/formatting
shadcn-uishadcn/ui component library
storybookStorybook component development

API & Backend

IntegrationDescription
trpctRPC type-safe API
orpcoRPC integration

Services

IntegrationDescription
sentryError monitoring
paraglideInternationalization (i18n)
strapiStrapi CMS

Custom Templates

Creating a Template

bash
# Create a project as a template base
npx @tanstack/cli create my-template --integrations tanstack-query,drizzle,clerk

# Share as a git repository or npm package

Using a Custom Template

bash
# From git repository
npx @tanstack/cli create my-app --template https://github.com/myorg/my-template

# From local path
npx @tanstack/cli create my-app --template ./templates/my-template

Template Structure

my-template/
├── template.config.ts    # Template configuration
├── src/
│   ├── app/
│   │   ├── routes/
│   │   └── components/
│   └── lib/
├── package.json
├── tsconfig.json
├── app.config.ts
└── vite.config.ts

MCP Server

The TanStack CLI includes an MCP (Model Context Protocol) server for AI agent integration.

Capabilities

  • Documentation Search - AI agents can query TanStack documentation
  • Project Scaffolding - Guided project creation through AI assistants
  • Integration Discovery - Search and recommend integrations
  • Deployment Guidance - Platform-specific deployment help

Usage with Claude

The MCP server enables Claude and other AI assistants to:

  • Search TanStack docs for accurate, up-to-date information
  • Help scaffold new projects with appropriate integrations
  • Provide context-aware recommendations
  • Assist with configuration and deployment

Configuration

json
// .claude/mcp.json or equivalent
{
  "mcpServers": {
    "tanstack": {
      "command": "npx",
      "args": ["@tanstack/cli", "mcp"]
    }
  }
}

Generated Project Structure

A typical generated project looks like:

my-app/
├── src/
│   ├── app/
│   │   ├── routes/
│   │   │   ├── __root.tsx
│   │   │   └── index.tsx
│   │   ├── router.tsx
│   │   ├── routeTree.gen.ts
│   │   └── client.tsx
│   ├── lib/
│   │   ├── db.ts          # (if drizzle/prisma)
│   │   ├── auth.ts        # (if clerk/better-auth)
│   │   └── query.ts       # (if tanstack-query)
│   └── components/
├── app.config.ts
├── vite.config.ts
├── package.json
├── tsconfig.json
└── .env.example

Web Builder Interface

TanStack CLI also provides an interactive web-based builder:

  • Visual technology stack selection
  • Preview generated files before exporting
  • Integration compatibility checking
  • One-click project generation

CLI Commands Reference

CommandDescription
create <name>Create a new project
create <name> --integrations <list>Create with specific integrations
create <name> --template <path>Create from template
mcpStart the MCP server

Best Practices

  1. Start with minimal integrations - add more as needed rather than including everything upfront
  2. Use the `--integrations` flag for reproducible project creation in CI/docs
  3. Create team templates for consistent project structure across your organization
  4. Use the MCP server with AI assistants for guided setup
  5. Check `.env.example` after generation for required environment variables
  6. Review generated code before adding business logic - understand the scaffold
  7. Use deployment integrations to pre-configure hosting platform settings
  8. Combine auth + db integrations for full-stack auth scaffolding (e.g., clerk,drizzle,neon)

Common Pitfalls

  • Not setting up environment variables after project creation (check .env.example)
  • Selecting incompatible integration combinations
  • Not running npm install / pnpm install after generation
  • Forgetting to initialize the database when using Drizzle/Prisma integrations
  • Not configuring the deployment platform's environment variables
  • Using outdated CLI version (always use npx @tanstack/cli for latest)
같은 저장소의 Skills

더 많은 Skills

모든 Skills