--- name: project-scaffolding description: > IDE-grade project scaffolding wizard for creating new projects with comprehensive configuration. Supports 70+ project types: HTML/CSS websites, React, Next.js, Vue, Astro, Remix, React Native, Flutter, Expo, FastAPI, Django, Express, NestJS, Go/Gin, Rust/Axum, Spring Boot, Hono, Elysia, Chrome Extensions, VS Code Extensions, Tauri desktop apps, serverless functions, and more. Provides WebStorm/PyCharm-level project creation with interactive SDK selection, framework configuration, database setup, and DevOps tooling. Use when: creating a new project, setting up a framework application, initializing a codebase, scaffolding boilerplate, building extensions, creating mobile/desktop/web apps, setting up monorepos, or making static websites/landing pages. --- # Project Scaffolding Wizard Professional-grade project scaffolding comparable to WebStorm/PyCharm project wizards. Creates fully configured projects with SDK setup, framework options, database configuration, linting, and CI/CD. ## Wizard Workflow When a user requests a new project, follow this interactive workflow: ### Step 1: Project Type Selection Present the project type menu. Ask the user to select a category and type: | Category | Types | |----------|-------| | **Static Websites** | HTML5 (no CSS), HTML/CSS, HTML+Sass, HTML+Tailwind, Landing Page, Multi-page Site | | **Frontend Web** | React, Next.js, Vue, Nuxt, Svelte, Angular, Astro, Remix, Solid, Qwik, Preact | | **Mobile/Desktop** | React Native, Expo, Flutter, Tauri, Electron, Ionic | | **Backend (JS/TS)** | Express, NestJS, Fastify, Hono, Elysia, tRPC, Koa | | **Backend (Python)** | FastAPI, Django, Django REST, Flask, Litestar | | **Backend (Go)** | Gin, Fiber, Echo, Chi | | **Backend (Rust)** | Axum, Actix, Rocket | | **Backend (Java)** | Spring Boot, Quarkus, Ktor, Micronaut | | **Backend (Other)** | Laravel, Rails, .NET Web API | | **Libraries** | TypeScript NPM, Python PyPI, Go Module, Rust Crate | | **CLI Tools** | Node CLI, Python CLI (Typer/Click), Go CLI (Cobra), Rust CLI (Clap) | | **Extensions** | Chrome Extension, Firefox Extension, VS Code Extension, Figma Plugin, Obsidian Plugin | | **Serverless** | AWS Lambda, Cloudflare Workers, Vercel Functions, Supabase Functions | | **Full-Stack** | T3 Stack, MERN, PERN, MEAN | | **Monorepos** | Turborepo, Nx Workspace, pnpm Workspace | ### Step 2: Basic Configuration Gather for ALL projects: - **Project name** (required) - **Location/directory** - **Description** - **Author name** - **License** (MIT, Apache-2.0, GPL-3.0, ISC, Unlicense) ### Step 3: Framework-Specific Options Load `references/wizard-options.md` for detailed configuration options based on the selected project type. Key decisions include: - **Language/SDK version** - Node.js, Python, Go, Rust, Java versions - **Package manager** - npm, pnpm, yarn, bun, poetry, uv - **CSS framework** - Tailwind, CSS Modules, Styled Components - **State management** - Zustand, Redux, Jotai, TanStack Query - **Database/ORM** - PostgreSQL, SQLite, Prisma, SQLAlchemy, sqlc - **Authentication** - NextAuth, JWT, OAuth2 - **Testing** - Vitest, Jest, pytest, Playwright ### Step 4: Code Quality & DevOps - **Linting** - ESLint, Ruff, golangci-lint, clippy - **Formatting** - Prettier, Ruff, gofmt, rustfmt - **Pre-commit hooks** - husky + lint-staged, pre-commit framework - **CI/CD** - GitHub Actions, GitLab CI - **Docker** - Dockerfile (multi-stage), docker-compose - **Deployment** - Vercel, Railway, Fly.io, AWS, self-hosted ### Step 5: Generate Project Use `scripts/scaffold.py` or native CLI tools to create the project structure. ## CLI Integration Prefer native CLI tools when available: | Framework | CLI Command | |-----------|-------------| | Next.js | `npx create-next-app@latest` | | React (Vite) | `npm create vite@latest -- --template react-ts` | | Vue | `npm create vue@latest` | | Nuxt | `npx nuxi@latest init` | | Astro | `npm create astro@latest` | | Remix | `npx create-remix@latest` | | SvelteKit | `npm create svelte@latest` | | Solid | `npm create solid@latest` | | Expo | `npx create-expo-app@latest` | | React Native | `npx @react-native-community/cli init` | | Flutter | `flutter create` | | Tauri | `npm create tauri-app@latest` | | NestJS | `npx @nestjs/cli new` | | Spring Boot | `spring init` or start.spring.io | | Go | `go mod init` | | Rust | `cargo new` | | Chrome Ext | `npm create plasmo@latest` | | T3 Stack | `npx create-t3-app@latest` | ## Quick Start Examples ### HTML/CSS Website ```bash mkdir my-website && cd my-website touch index.html style.css # Or use boilerplate: npx degit h5bp/html5-boilerplate my-website ``` ### HTML + Tailwind (CDN) ```html