@techwavedev/agi-agent-kit 1.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +59 -0
- package/README.md +147 -0
- package/bin/init.js +471 -0
- package/package.json +36 -0
- package/templates/.agent/agents/backend-specialist.md +263 -0
- package/templates/.agent/agents/code-archaeologist.md +106 -0
- package/templates/.agent/agents/database-architect.md +226 -0
- package/templates/.agent/agents/debugger.md +225 -0
- package/templates/.agent/agents/devops-engineer.md +242 -0
- package/templates/.agent/agents/documentation-writer.md +104 -0
- package/templates/.agent/agents/explorer-agent.md +73 -0
- package/templates/.agent/agents/frontend-specialist.md +556 -0
- package/templates/.agent/agents/game-developer.md +162 -0
- package/templates/.agent/agents/mobile-developer.md +377 -0
- package/templates/.agent/agents/orchestrator.md +416 -0
- package/templates/.agent/agents/penetration-tester.md +188 -0
- package/templates/.agent/agents/performance-optimizer.md +187 -0
- package/templates/.agent/agents/product-manager.md +112 -0
- package/templates/.agent/agents/project-planner.md +403 -0
- package/templates/.agent/agents/qa-automation-engineer.md +109 -0
- package/templates/.agent/agents/security-auditor.md +170 -0
- package/templates/.agent/agents/seo-specialist.md +111 -0
- package/templates/.agent/agents/test-engineer.md +158 -0
- package/templates/.agent/rules/GEMINI.md +253 -0
- package/templates/.agent/workflows/brainstorm.md +113 -0
- package/templates/.agent/workflows/create.md +59 -0
- package/templates/.agent/workflows/debug.md +103 -0
- package/templates/.agent/workflows/deploy.md +176 -0
- package/templates/.agent/workflows/enhance.md +63 -0
- package/templates/.agent/workflows/orchestrate.md +237 -0
- package/templates/.agent/workflows/plan.md +89 -0
- package/templates/.agent/workflows/preview.md +81 -0
- package/templates/.agent/workflows/status.md +86 -0
- package/templates/.agent/workflows/test.md +144 -0
- package/templates/.agent/workflows/ui-ux-pro-max.md +296 -0
- package/templates/base/.env.example +54 -0
- package/templates/base/AGENTS.md +463 -0
- package/templates/base/requirements.txt +6 -0
- package/templates/base/skill-creator/LICENSE.txt +202 -0
- package/templates/base/skill-creator/SKILL_skillcreator.md +389 -0
- package/templates/base/skill-creator/references/output-patterns.md +82 -0
- package/templates/base/skill-creator/references/workflows.md +28 -0
- package/templates/base/skill-creator/scripts/init_skill.py +304 -0
- package/templates/base/skill-creator/scripts/package_skill.py +110 -0
- package/templates/base/skill-creator/scripts/quick_validate.py +95 -0
- package/templates/base/skill-creator/scripts/update_catalog.py +371 -0
- package/templates/skills/core/README.md +21 -0
- package/templates/skills/core/documentation/SKILL.md +351 -0
- package/templates/skills/core/documentation/references/best_practices.md +201 -0
- package/templates/skills/core/documentation/scripts/analyze_code.py +307 -0
- package/templates/skills/core/documentation/scripts/detect_changes.py +460 -0
- package/templates/skills/core/documentation/scripts/generate_changelog.py +312 -0
- package/templates/skills/core/documentation/scripts/sync_docs.py +272 -0
- package/templates/skills/core/documentation/scripts/update_skill_docs.py +366 -0
- package/templates/skills/core/pdf-reader/SKILL.md +104 -0
- package/templates/skills/core/pdf-reader/references/pdf_libraries.md +83 -0
- package/templates/skills/core/pdf-reader/scripts/extract_text.py +295 -0
- package/templates/skills/core/qdrant-memory/SKILL.md +435 -0
- package/templates/skills/core/qdrant-memory/references/advanced_patterns.md +375 -0
- package/templates/skills/core/qdrant-memory/references/collection_schemas.md +229 -0
- package/templates/skills/core/qdrant-memory/references/complete_guide.md +724 -0
- package/templates/skills/core/qdrant-memory/references/embedding_models.md +325 -0
- package/templates/skills/core/qdrant-memory/scripts/benchmark_token_savings.py +640 -0
- package/templates/skills/core/qdrant-memory/scripts/embedding_utils.py +323 -0
- package/templates/skills/core/qdrant-memory/scripts/hybrid_search.py +214 -0
- package/templates/skills/core/qdrant-memory/scripts/init_collection.py +193 -0
- package/templates/skills/core/qdrant-memory/scripts/memory_retrieval.py +345 -0
- package/templates/skills/core/qdrant-memory/scripts/semantic_cache.py +282 -0
- package/templates/skills/core/qdrant-memory/scripts/test_skill.py +655 -0
- package/templates/skills/core/webcrawler/SKILL.md +292 -0
- package/templates/skills/core/webcrawler/references/advanced_crawling.md +181 -0
- package/templates/skills/core/webcrawler/scripts/crawl_docs.py +532 -0
- package/templates/skills/core/webcrawler/scripts/extract_page.py +189 -0
- package/templates/skills/core/webcrawler/scripts/filter_docs.py +200 -0
- package/templates/skills/knowledge/api-patterns/SKILL.md +81 -0
- package/templates/skills/knowledge/api-patterns/api-style.md +42 -0
- package/templates/skills/knowledge/api-patterns/auth.md +24 -0
- package/templates/skills/knowledge/api-patterns/documentation.md +26 -0
- package/templates/skills/knowledge/api-patterns/graphql.md +41 -0
- package/templates/skills/knowledge/api-patterns/rate-limiting.md +31 -0
- package/templates/skills/knowledge/api-patterns/response.md +37 -0
- package/templates/skills/knowledge/api-patterns/rest.md +40 -0
- package/templates/skills/knowledge/api-patterns/scripts/api_validator.py +211 -0
- package/templates/skills/knowledge/api-patterns/security-testing.md +122 -0
- package/templates/skills/knowledge/api-patterns/trpc.md +41 -0
- package/templates/skills/knowledge/api-patterns/versioning.md +22 -0
- package/templates/skills/knowledge/app-builder/SKILL.md +75 -0
- package/templates/skills/knowledge/app-builder/agent-coordination.md +71 -0
- package/templates/skills/knowledge/app-builder/feature-building.md +53 -0
- package/templates/skills/knowledge/app-builder/project-detection.md +34 -0
- package/templates/skills/knowledge/app-builder/scaffolding.md +118 -0
- package/templates/skills/knowledge/app-builder/tech-stack.md +40 -0
- package/templates/skills/knowledge/app-builder/templates/SKILL.md +39 -0
- package/templates/skills/knowledge/app-builder/templates/astro-static/TEMPLATE.md +76 -0
- package/templates/skills/knowledge/app-builder/templates/chrome-extension/TEMPLATE.md +92 -0
- package/templates/skills/knowledge/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
- package/templates/skills/knowledge/app-builder/templates/electron-desktop/TEMPLATE.md +88 -0
- package/templates/skills/knowledge/app-builder/templates/express-api/TEMPLATE.md +83 -0
- package/templates/skills/knowledge/app-builder/templates/flutter-app/TEMPLATE.md +90 -0
- package/templates/skills/knowledge/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -0
- package/templates/skills/knowledge/app-builder/templates/nextjs-fullstack/TEMPLATE.md +82 -0
- package/templates/skills/knowledge/app-builder/templates/nextjs-saas/TEMPLATE.md +100 -0
- package/templates/skills/knowledge/app-builder/templates/nextjs-static/TEMPLATE.md +106 -0
- package/templates/skills/knowledge/app-builder/templates/nuxt-app/TEMPLATE.md +101 -0
- package/templates/skills/knowledge/app-builder/templates/python-fastapi/TEMPLATE.md +83 -0
- package/templates/skills/knowledge/app-builder/templates/react-native-app/TEMPLATE.md +93 -0
- package/templates/skills/knowledge/architecture/SKILL.md +55 -0
- package/templates/skills/knowledge/architecture/context-discovery.md +43 -0
- package/templates/skills/knowledge/architecture/examples.md +94 -0
- package/templates/skills/knowledge/architecture/pattern-selection.md +68 -0
- package/templates/skills/knowledge/architecture/patterns-reference.md +50 -0
- package/templates/skills/knowledge/architecture/trade-off-analysis.md +77 -0
- package/templates/skills/knowledge/bash-linux/SKILL.md +199 -0
- package/templates/skills/knowledge/behavioral-modes/SKILL.md +242 -0
- package/templates/skills/knowledge/brainstorming/SKILL.md +163 -0
- package/templates/skills/knowledge/brainstorming/dynamic-questioning.md +350 -0
- package/templates/skills/knowledge/clean-code/SKILL.md +201 -0
- package/templates/skills/knowledge/code-review-checklist/SKILL.md +109 -0
- package/templates/skills/knowledge/database-design/SKILL.md +52 -0
- package/templates/skills/knowledge/database-design/database-selection.md +43 -0
- package/templates/skills/knowledge/database-design/indexing.md +39 -0
- package/templates/skills/knowledge/database-design/migrations.md +48 -0
- package/templates/skills/knowledge/database-design/optimization.md +36 -0
- package/templates/skills/knowledge/database-design/orm-selection.md +30 -0
- package/templates/skills/knowledge/database-design/schema-design.md +56 -0
- package/templates/skills/knowledge/database-design/scripts/schema_validator.py +172 -0
- package/templates/skills/knowledge/deployment-procedures/SKILL.md +241 -0
- package/templates/skills/knowledge/doc.md +177 -0
- package/templates/skills/knowledge/documentation-templates/SKILL.md +194 -0
- package/templates/skills/knowledge/frontend-design/SKILL.md +396 -0
- package/templates/skills/knowledge/frontend-design/animation-guide.md +331 -0
- package/templates/skills/knowledge/frontend-design/color-system.md +311 -0
- package/templates/skills/knowledge/frontend-design/decision-trees.md +418 -0
- package/templates/skills/knowledge/frontend-design/motion-graphics.md +306 -0
- package/templates/skills/knowledge/frontend-design/scripts/accessibility_checker.py +183 -0
- package/templates/skills/knowledge/frontend-design/scripts/ux_audit.py +722 -0
- package/templates/skills/knowledge/frontend-design/typography-system.md +345 -0
- package/templates/skills/knowledge/frontend-design/ux-psychology.md +541 -0
- package/templates/skills/knowledge/frontend-design/visual-effects.md +383 -0
- package/templates/skills/knowledge/game-development/2d-games/SKILL.md +119 -0
- package/templates/skills/knowledge/game-development/3d-games/SKILL.md +135 -0
- package/templates/skills/knowledge/game-development/SKILL.md +167 -0
- package/templates/skills/knowledge/game-development/game-art/SKILL.md +185 -0
- package/templates/skills/knowledge/game-development/game-audio/SKILL.md +190 -0
- package/templates/skills/knowledge/game-development/game-design/SKILL.md +129 -0
- package/templates/skills/knowledge/game-development/mobile-games/SKILL.md +108 -0
- package/templates/skills/knowledge/game-development/multiplayer/SKILL.md +132 -0
- package/templates/skills/knowledge/game-development/pc-games/SKILL.md +144 -0
- package/templates/skills/knowledge/game-development/vr-ar/SKILL.md +123 -0
- package/templates/skills/knowledge/game-development/web-games/SKILL.md +150 -0
- package/templates/skills/knowledge/geo-fundamentals/SKILL.md +156 -0
- package/templates/skills/knowledge/geo-fundamentals/scripts/geo_checker.py +289 -0
- package/templates/skills/knowledge/i18n-localization/SKILL.md +154 -0
- package/templates/skills/knowledge/i18n-localization/scripts/i18n_checker.py +241 -0
- package/templates/skills/knowledge/intelligent-routing/SKILL.md +334 -0
- package/templates/skills/knowledge/lint-and-validate/SKILL.md +45 -0
- package/templates/skills/knowledge/lint-and-validate/scripts/lint_runner.py +172 -0
- package/templates/skills/knowledge/lint-and-validate/scripts/type_coverage.py +173 -0
- package/templates/skills/knowledge/mcp-builder/SKILL.md +176 -0
- package/templates/skills/knowledge/mobile-design/SKILL.md +394 -0
- package/templates/skills/knowledge/mobile-design/decision-trees.md +516 -0
- package/templates/skills/knowledge/mobile-design/mobile-backend.md +491 -0
- package/templates/skills/knowledge/mobile-design/mobile-color-system.md +420 -0
- package/templates/skills/knowledge/mobile-design/mobile-debugging.md +122 -0
- package/templates/skills/knowledge/mobile-design/mobile-design-thinking.md +357 -0
- package/templates/skills/knowledge/mobile-design/mobile-navigation.md +458 -0
- package/templates/skills/knowledge/mobile-design/mobile-performance.md +767 -0
- package/templates/skills/knowledge/mobile-design/mobile-testing.md +356 -0
- package/templates/skills/knowledge/mobile-design/mobile-typography.md +433 -0
- package/templates/skills/knowledge/mobile-design/platform-android.md +666 -0
- package/templates/skills/knowledge/mobile-design/platform-ios.md +561 -0
- package/templates/skills/knowledge/mobile-design/scripts/mobile_audit.py +670 -0
- package/templates/skills/knowledge/mobile-design/touch-psychology.md +537 -0
- package/templates/skills/knowledge/nextjs-best-practices/SKILL.md +203 -0
- package/templates/skills/knowledge/nodejs-best-practices/SKILL.md +333 -0
- package/templates/skills/knowledge/parallel-agents/SKILL.md +175 -0
- package/templates/skills/knowledge/performance-profiling/SKILL.md +143 -0
- package/templates/skills/knowledge/performance-profiling/scripts/lighthouse_audit.py +76 -0
- package/templates/skills/knowledge/plan-writing/SKILL.md +152 -0
- package/templates/skills/knowledge/powershell-windows/SKILL.md +167 -0
- package/templates/skills/knowledge/python-patterns/SKILL.md +441 -0
- package/templates/skills/knowledge/react-patterns/SKILL.md +198 -0
- package/templates/skills/knowledge/red-team-tactics/SKILL.md +199 -0
- package/templates/skills/knowledge/seo-fundamentals/SKILL.md +129 -0
- package/templates/skills/knowledge/seo-fundamentals/scripts/seo_checker.py +219 -0
- package/templates/skills/knowledge/server-management/SKILL.md +161 -0
- package/templates/skills/knowledge/systematic-debugging/SKILL.md +109 -0
- package/templates/skills/knowledge/tailwind-patterns/SKILL.md +269 -0
- package/templates/skills/knowledge/tdd-workflow/SKILL.md +149 -0
- package/templates/skills/knowledge/testing-patterns/SKILL.md +178 -0
- package/templates/skills/knowledge/testing-patterns/scripts/test_runner.py +219 -0
- package/templates/skills/knowledge/vulnerability-scanner/SKILL.md +276 -0
- package/templates/skills/knowledge/vulnerability-scanner/checklists.md +121 -0
- package/templates/skills/knowledge/vulnerability-scanner/scripts/security_scan.py +458 -0
- package/templates/skills/knowledge/webapp-testing/SKILL.md +187 -0
- package/templates/skills/knowledge/webapp-testing/scripts/playwright_runner.py +173 -0
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
# Project Scaffolding
|
|
2
|
+
|
|
3
|
+
> Directory structure and core files for new projects.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Next.js Full-Stack Structure (2025 Optimized)
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
project-name/
|
|
11
|
+
├── src/
|
|
12
|
+
│ ├── app/ # Routes only (thin layer)
|
|
13
|
+
│ │ ├── layout.tsx
|
|
14
|
+
│ │ ├── page.tsx
|
|
15
|
+
│ │ ├── globals.css
|
|
16
|
+
│ │ ├── (auth)/ # Route group - auth pages
|
|
17
|
+
│ │ │ ├── login/page.tsx
|
|
18
|
+
│ │ │ └── register/page.tsx
|
|
19
|
+
│ │ ├── (dashboard)/ # Route group - dashboard layout
|
|
20
|
+
│ │ │ ├── layout.tsx
|
|
21
|
+
│ │ │ └── page.tsx
|
|
22
|
+
│ │ └── api/
|
|
23
|
+
│ │ └── [resource]/route.ts
|
|
24
|
+
│ │
|
|
25
|
+
│ ├── features/ # Feature-based modules
|
|
26
|
+
│ │ ├── auth/
|
|
27
|
+
│ │ │ ├── components/
|
|
28
|
+
│ │ │ ├── hooks/
|
|
29
|
+
│ │ │ ├── actions.ts # Server Actions
|
|
30
|
+
│ │ │ ├── queries.ts # Data fetching
|
|
31
|
+
│ │ │ └── types.ts
|
|
32
|
+
│ │ ├── products/
|
|
33
|
+
│ │ │ ├── components/
|
|
34
|
+
│ │ │ ├── actions.ts
|
|
35
|
+
│ │ │ └── queries.ts
|
|
36
|
+
│ │ └── cart/
|
|
37
|
+
│ │ └── ...
|
|
38
|
+
│ │
|
|
39
|
+
│ ├── shared/ # Shared utilities
|
|
40
|
+
│ │ ├── components/ui/ # Reusable UI components
|
|
41
|
+
│ │ ├── lib/ # Utils, helpers
|
|
42
|
+
│ │ └── hooks/ # Global hooks
|
|
43
|
+
│ │
|
|
44
|
+
│ └── server/ # Server-only code
|
|
45
|
+
│ ├── db/ # Database client (Prisma)
|
|
46
|
+
│ ├── auth/ # Auth config
|
|
47
|
+
│ └── services/ # External API integrations
|
|
48
|
+
│
|
|
49
|
+
├── prisma/
|
|
50
|
+
│ ├── schema.prisma
|
|
51
|
+
│ ├── migrations/
|
|
52
|
+
│ └── seed.ts
|
|
53
|
+
│
|
|
54
|
+
├── public/
|
|
55
|
+
├── .env.example
|
|
56
|
+
├── .env.local
|
|
57
|
+
├── package.json
|
|
58
|
+
├── tailwind.config.ts
|
|
59
|
+
├── tsconfig.json
|
|
60
|
+
└── README.md
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Structure Principles
|
|
66
|
+
|
|
67
|
+
| Principle | Implementation |
|
|
68
|
+
|-----------|----------------|
|
|
69
|
+
| **Feature isolation** | Each feature in `features/` with its own components, hooks, actions |
|
|
70
|
+
| **Server/Client separation** | Server-only code in `server/`, prevents accidental client imports |
|
|
71
|
+
| **Thin routes** | `app/` only for routing, logic lives in `features/` |
|
|
72
|
+
| **Route groups** | `(groupName)/` for layout sharing without URL impact |
|
|
73
|
+
| **Shared code** | `shared/` for truly reusable UI and utilities |
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## Core Files
|
|
78
|
+
|
|
79
|
+
| File | Purpose |
|
|
80
|
+
|------|---------|
|
|
81
|
+
| `package.json` | Dependencies |
|
|
82
|
+
| `tsconfig.json` | TypeScript + path aliases (`@/features/*`) |
|
|
83
|
+
| `tailwind.config.ts` | Tailwind config |
|
|
84
|
+
| `.env.example` | Environment template |
|
|
85
|
+
| `README.md` | Project documentation |
|
|
86
|
+
| `.gitignore` | Git ignore rules |
|
|
87
|
+
| `prisma/schema.prisma` | Database schema |
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## Path Aliases (tsconfig.json)
|
|
92
|
+
|
|
93
|
+
```json
|
|
94
|
+
{
|
|
95
|
+
"compilerOptions": {
|
|
96
|
+
"paths": {
|
|
97
|
+
"@/*": ["./src/*"],
|
|
98
|
+
"@/features/*": ["./src/features/*"],
|
|
99
|
+
"@/shared/*": ["./src/shared/*"],
|
|
100
|
+
"@/server/*": ["./src/server/*"]
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
---
|
|
107
|
+
|
|
108
|
+
## When to Use What
|
|
109
|
+
|
|
110
|
+
| Need | Location |
|
|
111
|
+
|------|----------|
|
|
112
|
+
| New page/route | `app/(group)/page.tsx` |
|
|
113
|
+
| Feature component | `features/[name]/components/` |
|
|
114
|
+
| Server action | `features/[name]/actions.ts` |
|
|
115
|
+
| Data fetching | `features/[name]/queries.ts` |
|
|
116
|
+
| Reusable button/input | `shared/components/ui/` |
|
|
117
|
+
| Database query | `server/db/` |
|
|
118
|
+
| External API call | `server/services/` |
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Tech Stack Selection (2025)
|
|
2
|
+
|
|
3
|
+
> Default and alternative technology choices for web applications.
|
|
4
|
+
|
|
5
|
+
## Default Stack (Web App - 2025)
|
|
6
|
+
|
|
7
|
+
```yaml
|
|
8
|
+
Frontend:
|
|
9
|
+
framework: Next.js 16 (Stable)
|
|
10
|
+
language: TypeScript 5.7+
|
|
11
|
+
styling: Tailwind CSS v4
|
|
12
|
+
state: React 19 Actions / Server Components
|
|
13
|
+
bundler: Turbopack (Stable for Dev)
|
|
14
|
+
|
|
15
|
+
Backend:
|
|
16
|
+
runtime: Node.js 23
|
|
17
|
+
framework: Next.js API Routes / Hono (for Edge)
|
|
18
|
+
validation: Zod / TypeBox
|
|
19
|
+
|
|
20
|
+
Database:
|
|
21
|
+
primary: PostgreSQL
|
|
22
|
+
orm: Prisma / Drizzle
|
|
23
|
+
hosting: Supabase / Neon
|
|
24
|
+
|
|
25
|
+
Auth:
|
|
26
|
+
provider: Auth.js (v5) / Clerk
|
|
27
|
+
|
|
28
|
+
Monorepo:
|
|
29
|
+
tool: Turborepo 2.0
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Alternative Options
|
|
33
|
+
|
|
34
|
+
| Need | Default | Alternative |
|
|
35
|
+
|------|---------|-------------|
|
|
36
|
+
| Real-time | - | Supabase Realtime, Socket.io |
|
|
37
|
+
| File storage | - | Cloudinary, S3 |
|
|
38
|
+
| Payment | Stripe | LemonSqueezy, Paddle |
|
|
39
|
+
| Email | - | Resend, SendGrid |
|
|
40
|
+
| Search | - | Algolia, Typesense |
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: templates
|
|
3
|
+
description: Project scaffolding templates for new applications. Use when creating new projects from scratch. Contains 12 templates for various tech stacks.
|
|
4
|
+
allowed-tools: Read, Glob, Grep
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Project Templates
|
|
8
|
+
|
|
9
|
+
> Quick-start templates for scaffolding new projects.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## 🎯 Selective Reading Rule
|
|
14
|
+
|
|
15
|
+
**Read ONLY the template matching user's project type!**
|
|
16
|
+
|
|
17
|
+
| Template | Tech Stack | When to Use |
|
|
18
|
+
|----------|------------|-------------|
|
|
19
|
+
| [nextjs-fullstack](nextjs-fullstack/TEMPLATE.md) | Next.js + Prisma | Full-stack web app |
|
|
20
|
+
| [nextjs-saas](nextjs-saas/TEMPLATE.md) | Next.js + Stripe | SaaS product |
|
|
21
|
+
| [nextjs-static](nextjs-static/TEMPLATE.md) | Next.js + Framer | Landing page |
|
|
22
|
+
| [express-api](express-api/TEMPLATE.md) | Express + JWT | REST API |
|
|
23
|
+
| [python-fastapi](python-fastapi/TEMPLATE.md) | FastAPI | Python API |
|
|
24
|
+
| [react-native-app](react-native-app/TEMPLATE.md) | Expo + Zustand | Mobile app |
|
|
25
|
+
| [flutter-app](flutter-app/TEMPLATE.md) | Flutter + Riverpod | Cross-platform |
|
|
26
|
+
| [electron-desktop](electron-desktop/TEMPLATE.md) | Electron + React | Desktop app |
|
|
27
|
+
| [chrome-extension](chrome-extension/TEMPLATE.md) | Chrome MV3 | Browser extension |
|
|
28
|
+
| [cli-tool](cli-tool/TEMPLATE.md) | Node.js + Commander | CLI app |
|
|
29
|
+
| [monorepo-turborepo](monorepo-turborepo/TEMPLATE.md) | Turborepo + pnpm | Monorepo |
|
|
30
|
+
| [astro-static](astro-static/TEMPLATE.md) | Astro + MDX | Blog / Docs |
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Usage
|
|
35
|
+
|
|
36
|
+
1. User says "create [type] app"
|
|
37
|
+
2. Match to appropriate template
|
|
38
|
+
3. Read ONLY that template's TEMPLATE.md
|
|
39
|
+
4. Follow its tech stack and structure
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: astro-static
|
|
3
|
+
description: Astro static site template principles. Content-focused websites, blogs, documentation.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Astro Static Site Template
|
|
7
|
+
|
|
8
|
+
## Tech Stack
|
|
9
|
+
|
|
10
|
+
| Component | Technology |
|
|
11
|
+
|-----------|------------|
|
|
12
|
+
| Framework | Astro 4.x |
|
|
13
|
+
| Content | MDX + Content Collections |
|
|
14
|
+
| Styling | Tailwind CSS |
|
|
15
|
+
| Integrations | Sitemap, RSS, SEO |
|
|
16
|
+
| Output | Static/SSG |
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Directory Structure
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
project-name/
|
|
24
|
+
├── src/
|
|
25
|
+
│ ├── components/ # .astro components
|
|
26
|
+
│ ├── content/ # MDX content
|
|
27
|
+
│ │ ├── blog/
|
|
28
|
+
│ │ └── config.ts # Collection schemas
|
|
29
|
+
│ ├── layouts/ # Page layouts
|
|
30
|
+
│ ├── pages/ # File-based routing
|
|
31
|
+
│ └── styles/
|
|
32
|
+
├── public/ # Static assets
|
|
33
|
+
├── astro.config.mjs
|
|
34
|
+
└── package.json
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Key Concepts
|
|
40
|
+
|
|
41
|
+
| Concept | Description |
|
|
42
|
+
|---------|-------------|
|
|
43
|
+
| Content Collections | Type-safe content with Zod schemas |
|
|
44
|
+
| Islands Architecture | Partial hydration for interactivity |
|
|
45
|
+
| Zero JS by default | Static HTML unless needed |
|
|
46
|
+
| MDX Support | Markdown with components |
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## Setup Steps
|
|
51
|
+
|
|
52
|
+
1. `npm create astro@latest {{name}}`
|
|
53
|
+
2. Add integrations: `npx astro add mdx tailwind sitemap`
|
|
54
|
+
3. Configure `astro.config.mjs`
|
|
55
|
+
4. Create content collections
|
|
56
|
+
5. `npm run dev`
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## Deployment
|
|
61
|
+
|
|
62
|
+
| Platform | Method |
|
|
63
|
+
|----------|--------|
|
|
64
|
+
| Vercel | Auto-detected |
|
|
65
|
+
| Netlify | Auto-detected |
|
|
66
|
+
| Cloudflare Pages | Auto-detected |
|
|
67
|
+
| GitHub Pages | Build + deploy action |
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## Best Practices
|
|
72
|
+
|
|
73
|
+
- Use Content Collections for type safety
|
|
74
|
+
- Leverage static generation
|
|
75
|
+
- Add islands only where needed
|
|
76
|
+
- Optimize images with Astro Image
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: chrome-extension
|
|
3
|
+
description: Chrome Extension template principles. Manifest V3, React, TypeScript.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Chrome Extension Template
|
|
7
|
+
|
|
8
|
+
## Tech Stack
|
|
9
|
+
|
|
10
|
+
| Component | Technology |
|
|
11
|
+
|-----------|------------|
|
|
12
|
+
| Manifest | V3 |
|
|
13
|
+
| UI | React 18 |
|
|
14
|
+
| Language | TypeScript |
|
|
15
|
+
| Styling | Tailwind CSS |
|
|
16
|
+
| Bundler | Vite |
|
|
17
|
+
| Storage | Chrome Storage API |
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Directory Structure
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
project-name/
|
|
25
|
+
├── src/
|
|
26
|
+
│ ├── popup/ # Extension popup
|
|
27
|
+
│ ├── options/ # Options page
|
|
28
|
+
│ ├── background/ # Service worker
|
|
29
|
+
│ ├── content/ # Content scripts
|
|
30
|
+
│ ├── components/
|
|
31
|
+
│ ├── hooks/
|
|
32
|
+
│ └── lib/
|
|
33
|
+
│ ├── storage.ts # Chrome storage helpers
|
|
34
|
+
│ └── messaging.ts # Message passing
|
|
35
|
+
├── public/
|
|
36
|
+
│ ├── icons/
|
|
37
|
+
│ └── manifest.json
|
|
38
|
+
└── package.json
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## Manifest V3 Concepts
|
|
44
|
+
|
|
45
|
+
| Component | Purpose |
|
|
46
|
+
|-----------|---------|
|
|
47
|
+
| Service Worker | Background processing |
|
|
48
|
+
| Content Scripts | Page injection |
|
|
49
|
+
| Popup | User interface |
|
|
50
|
+
| Options Page | Settings |
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## Permissions
|
|
55
|
+
|
|
56
|
+
| Permission | Use |
|
|
57
|
+
|------------|-----|
|
|
58
|
+
| storage | Save user data |
|
|
59
|
+
| activeTab | Current tab access |
|
|
60
|
+
| scripting | Inject scripts |
|
|
61
|
+
| host_permissions | Site access |
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Setup Steps
|
|
66
|
+
|
|
67
|
+
1. `npm create vite {{name}} -- --template react-ts`
|
|
68
|
+
2. Add Chrome types: `npm install -D @types/chrome`
|
|
69
|
+
3. Configure Vite for multi-entry
|
|
70
|
+
4. Create manifest.json
|
|
71
|
+
5. `npm run dev` (watch mode)
|
|
72
|
+
6. Load in Chrome: `chrome://extensions` → Load unpacked
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## Development Tips
|
|
77
|
+
|
|
78
|
+
| Task | Method |
|
|
79
|
+
|------|--------|
|
|
80
|
+
| Debug Popup | Right-click icon → Inspect |
|
|
81
|
+
| Debug Background | Extensions page → Service worker |
|
|
82
|
+
| Debug Content | DevTools console on page |
|
|
83
|
+
| Hot Reload | `npm run dev` with watch |
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## Best Practices
|
|
88
|
+
|
|
89
|
+
- Use type-safe messaging
|
|
90
|
+
- Wrap Chrome APIs in promises
|
|
91
|
+
- Minimize permissions
|
|
92
|
+
- Handle offline gracefully
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: cli-tool
|
|
3
|
+
description: Node.js CLI tool template principles. Commander.js, interactive prompts.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# CLI Tool Template
|
|
7
|
+
|
|
8
|
+
## Tech Stack
|
|
9
|
+
|
|
10
|
+
| Component | Technology |
|
|
11
|
+
|-----------|------------|
|
|
12
|
+
| Runtime | Node.js 20+ |
|
|
13
|
+
| Language | TypeScript |
|
|
14
|
+
| CLI Framework | Commander.js |
|
|
15
|
+
| Prompts | Inquirer.js |
|
|
16
|
+
| Output | chalk + ora |
|
|
17
|
+
| Config | cosmiconfig |
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Directory Structure
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
project-name/
|
|
25
|
+
├── src/
|
|
26
|
+
│ ├── index.ts # Entry point
|
|
27
|
+
│ ├── cli.ts # CLI setup
|
|
28
|
+
│ ├── commands/ # Command handlers
|
|
29
|
+
│ ├── lib/
|
|
30
|
+
│ │ ├── config.ts # Config loader
|
|
31
|
+
│ │ └── logger.ts # Styled output
|
|
32
|
+
│ └── types/
|
|
33
|
+
├── bin/
|
|
34
|
+
│ └── cli.js # Executable
|
|
35
|
+
└── package.json
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## CLI Design Principles
|
|
41
|
+
|
|
42
|
+
| Principle | Description |
|
|
43
|
+
|-----------|-------------|
|
|
44
|
+
| Subcommands | Group related actions |
|
|
45
|
+
| Options | Flags with defaults |
|
|
46
|
+
| Interactive | Prompts when needed |
|
|
47
|
+
| Non-interactive | Support --yes flags |
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Key Components
|
|
52
|
+
|
|
53
|
+
| Component | Purpose |
|
|
54
|
+
|-----------|---------|
|
|
55
|
+
| Commander | Command parsing |
|
|
56
|
+
| Inquirer | Interactive prompts |
|
|
57
|
+
| Chalk | Colored output |
|
|
58
|
+
| Ora | Spinners/loading |
|
|
59
|
+
| Cosmiconfig | Config file discovery |
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## Setup Steps
|
|
64
|
+
|
|
65
|
+
1. Create project directory
|
|
66
|
+
2. `npm init -y`
|
|
67
|
+
3. Install deps: `npm install commander @inquirer/prompts chalk ora cosmiconfig`
|
|
68
|
+
4. Configure bin in package.json
|
|
69
|
+
5. `npm link` for local testing
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## Publishing
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
npm login
|
|
77
|
+
npm publish
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## Best Practices
|
|
83
|
+
|
|
84
|
+
- Provide helpful error messages
|
|
85
|
+
- Support both interactive and non-interactive modes
|
|
86
|
+
- Use consistent output styling
|
|
87
|
+
- Validate inputs with Zod
|
|
88
|
+
- Exit with proper codes (0 success, 1 error)
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: electron-desktop
|
|
3
|
+
description: Electron desktop app template principles. Cross-platform, React, TypeScript.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Electron Desktop App Template
|
|
7
|
+
|
|
8
|
+
## Tech Stack
|
|
9
|
+
|
|
10
|
+
| Component | Technology |
|
|
11
|
+
|-----------|------------|
|
|
12
|
+
| Framework | Electron 28+ |
|
|
13
|
+
| UI | React 18 |
|
|
14
|
+
| Language | TypeScript |
|
|
15
|
+
| Styling | Tailwind CSS |
|
|
16
|
+
| Bundler | Vite + electron-builder |
|
|
17
|
+
| IPC | Type-safe communication |
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Directory Structure
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
project-name/
|
|
25
|
+
├── electron/
|
|
26
|
+
│ ├── main.ts # Main process
|
|
27
|
+
│ ├── preload.ts # Preload script
|
|
28
|
+
│ └── ipc/ # IPC handlers
|
|
29
|
+
├── src/
|
|
30
|
+
│ ├── App.tsx
|
|
31
|
+
│ ├── components/
|
|
32
|
+
│ │ ├── TitleBar.tsx # Custom title bar
|
|
33
|
+
│ │ └── ...
|
|
34
|
+
│ └── hooks/
|
|
35
|
+
├── public/
|
|
36
|
+
└── package.json
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## Process Model
|
|
42
|
+
|
|
43
|
+
| Process | Role |
|
|
44
|
+
|---------|------|
|
|
45
|
+
| Main | Node.js, system access |
|
|
46
|
+
| Renderer | Chromium, React UI |
|
|
47
|
+
| Preload | Bridge, context isolation |
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Key Concepts
|
|
52
|
+
|
|
53
|
+
| Concept | Purpose |
|
|
54
|
+
|---------|---------|
|
|
55
|
+
| contextBridge | Safe API exposure |
|
|
56
|
+
| ipcMain/ipcRenderer | Process communication |
|
|
57
|
+
| nodeIntegration: false | Security |
|
|
58
|
+
| contextIsolation: true | Security |
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## Setup Steps
|
|
63
|
+
|
|
64
|
+
1. `npm create vite {{name}} -- --template react-ts`
|
|
65
|
+
2. Install: `npm install -D electron electron-builder vite-plugin-electron`
|
|
66
|
+
3. Create electron/ directory
|
|
67
|
+
4. Configure main process
|
|
68
|
+
5. `npm run electron:dev`
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## Build Targets
|
|
73
|
+
|
|
74
|
+
| Platform | Output |
|
|
75
|
+
|----------|--------|
|
|
76
|
+
| Windows | NSIS, Portable |
|
|
77
|
+
| macOS | DMG, ZIP |
|
|
78
|
+
| Linux | AppImage, DEB |
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## Best Practices
|
|
83
|
+
|
|
84
|
+
- Use preload script for main/renderer bridge
|
|
85
|
+
- Type-safe IPC with typed handlers
|
|
86
|
+
- Custom title bar for native feel
|
|
87
|
+
- Handle window state (maximize, minimize)
|
|
88
|
+
- Auto-updates with electron-updater
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: express-api
|
|
3
|
+
description: Express.js REST API template principles. TypeScript, Prisma, JWT.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Express.js API Template
|
|
7
|
+
|
|
8
|
+
## Tech Stack
|
|
9
|
+
|
|
10
|
+
| Component | Technology |
|
|
11
|
+
|-----------|------------|
|
|
12
|
+
| Runtime | Node.js 20+ |
|
|
13
|
+
| Framework | Express.js |
|
|
14
|
+
| Language | TypeScript |
|
|
15
|
+
| Database | PostgreSQL + Prisma |
|
|
16
|
+
| Validation | Zod |
|
|
17
|
+
| Auth | JWT + bcrypt |
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Directory Structure
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
project-name/
|
|
25
|
+
├── prisma/
|
|
26
|
+
│ └── schema.prisma
|
|
27
|
+
├── src/
|
|
28
|
+
│ ├── app.ts # Express setup
|
|
29
|
+
│ ├── config/ # Environment
|
|
30
|
+
│ ├── routes/ # Route handlers
|
|
31
|
+
│ ├── controllers/ # Business logic
|
|
32
|
+
│ ├── services/ # Data access
|
|
33
|
+
│ ├── middleware/
|
|
34
|
+
│ │ ├── auth.ts # JWT verify
|
|
35
|
+
│ │ ├── error.ts # Error handler
|
|
36
|
+
│ │ └── validate.ts # Zod validation
|
|
37
|
+
│ ├── schemas/ # Zod schemas
|
|
38
|
+
│ └── utils/
|
|
39
|
+
└── package.json
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
## Middleware Stack
|
|
45
|
+
|
|
46
|
+
| Order | Middleware |
|
|
47
|
+
|-------|------------|
|
|
48
|
+
| 1 | helmet (security) |
|
|
49
|
+
| 2 | cors |
|
|
50
|
+
| 3 | morgan (logging) |
|
|
51
|
+
| 4 | body parsing |
|
|
52
|
+
| 5 | routes |
|
|
53
|
+
| 6 | error handler |
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## API Response Format
|
|
58
|
+
|
|
59
|
+
| Type | Structure |
|
|
60
|
+
|------|-----------|
|
|
61
|
+
| Success | `{ success: true, data: {...} }` |
|
|
62
|
+
| Error | `{ error: "message", details: [...] }` |
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
## Setup Steps
|
|
67
|
+
|
|
68
|
+
1. Create project directory
|
|
69
|
+
2. `npm init -y`
|
|
70
|
+
3. Install deps: `npm install express prisma zod bcrypt jsonwebtoken`
|
|
71
|
+
4. Configure Prisma
|
|
72
|
+
5. `npm run db:push`
|
|
73
|
+
6. `npm run dev`
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## Best Practices
|
|
78
|
+
|
|
79
|
+
- Layer architecture (routes → controllers → services)
|
|
80
|
+
- Validate all inputs with Zod
|
|
81
|
+
- Centralized error handling
|
|
82
|
+
- Environment-based config
|
|
83
|
+
- Use Prisma for type-safe DB access
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: flutter-app
|
|
3
|
+
description: Flutter mobile app template principles. Riverpod, Go Router, clean architecture.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Flutter App Template
|
|
7
|
+
|
|
8
|
+
## Tech Stack
|
|
9
|
+
|
|
10
|
+
| Component | Technology |
|
|
11
|
+
|-----------|------------|
|
|
12
|
+
| Framework | Flutter 3.x |
|
|
13
|
+
| Language | Dart 3.x |
|
|
14
|
+
| State | Riverpod 2.0 |
|
|
15
|
+
| Navigation | Go Router |
|
|
16
|
+
| HTTP | Dio |
|
|
17
|
+
| Storage | Hive |
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Directory Structure
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
project_name/
|
|
25
|
+
├── lib/
|
|
26
|
+
│ ├── main.dart
|
|
27
|
+
│ ├── app.dart
|
|
28
|
+
│ ├── core/
|
|
29
|
+
│ │ ├── constants/
|
|
30
|
+
│ │ ├── theme/
|
|
31
|
+
│ │ ├── router/
|
|
32
|
+
│ │ └── utils/
|
|
33
|
+
│ ├── features/
|
|
34
|
+
│ │ ├── auth/
|
|
35
|
+
│ │ │ ├── data/
|
|
36
|
+
│ │ │ ├── domain/
|
|
37
|
+
│ │ │ └── presentation/
|
|
38
|
+
│ │ └── home/
|
|
39
|
+
│ ├── shared/
|
|
40
|
+
│ │ ├── widgets/
|
|
41
|
+
│ │ └── providers/
|
|
42
|
+
│ └── services/
|
|
43
|
+
│ ├── api/
|
|
44
|
+
│ └── storage/
|
|
45
|
+
├── test/
|
|
46
|
+
└── pubspec.yaml
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Architecture Layers
|
|
52
|
+
|
|
53
|
+
| Layer | Contents |
|
|
54
|
+
|-------|----------|
|
|
55
|
+
| Presentation | Screens, Widgets, Providers |
|
|
56
|
+
| Domain | Entities, Use Cases |
|
|
57
|
+
| Data | Repositories, Models |
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## Key Packages
|
|
62
|
+
|
|
63
|
+
| Package | Purpose |
|
|
64
|
+
|---------|---------|
|
|
65
|
+
| flutter_riverpod | State management |
|
|
66
|
+
| riverpod_annotation | Code generation |
|
|
67
|
+
| go_router | Navigation |
|
|
68
|
+
| dio | HTTP client |
|
|
69
|
+
| freezed | Immutable models |
|
|
70
|
+
| hive | Local storage |
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## Setup Steps
|
|
75
|
+
|
|
76
|
+
1. `flutter create {{name}} --org com.{{bundle}}`
|
|
77
|
+
2. Update `pubspec.yaml`
|
|
78
|
+
3. `flutter pub get`
|
|
79
|
+
4. Run code generation: `dart run build_runner build`
|
|
80
|
+
5. `flutter run`
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
## Best Practices
|
|
85
|
+
|
|
86
|
+
- Feature-first folder structure
|
|
87
|
+
- Riverpod for state, React Query pattern for server state
|
|
88
|
+
- Freezed for immutable data classes
|
|
89
|
+
- Go Router for declarative navigation
|
|
90
|
+
- Material 3 theming
|