tribunal-kit 4.5.0 → 4.6.0
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/.agent/.shared/ui-ux-pro-max/README.md +4 -4
- package/.agent/ARCHITECTURE.md +279 -277
- package/.agent/GEMINI.md +127 -121
- package/.agent/agents/accessibility-reviewer.md +187 -187
- package/.agent/agents/ai-code-reviewer.md +199 -199
- package/.agent/agents/api-architect.md +71 -66
- package/.agent/agents/backend-specialist.md +219 -215
- package/.agent/agents/cloud-engineer.md +98 -0
- package/.agent/agents/code-archaeologist.md +168 -161
- package/.agent/agents/database-architect.md +184 -184
- package/.agent/agents/db-latency-auditor.md +213 -216
- package/.agent/agents/debugger.md +198 -191
- package/.agent/agents/dependency-reviewer.md +106 -103
- package/.agent/agents/devops-engineer.md +218 -218
- package/.agent/agents/documentation-writer.md +209 -201
- package/.agent/agents/explorer-agent.md +167 -160
- package/.agent/agents/frontend-reviewer.md +162 -160
- package/.agent/agents/frontend-specialist.md +257 -248
- package/.agent/agents/game-developer.md +48 -48
- package/.agent/agents/logic-reviewer.md +118 -116
- package/.agent/agents/mobile-developer.md +197 -200
- package/.agent/agents/mobile-reviewer.md +159 -162
- package/.agent/agents/orchestrator.md +187 -181
- package/.agent/agents/penetration-tester.md +160 -157
- package/.agent/agents/performance-optimizer.md +183 -183
- package/.agent/agents/performance-reviewer.md +178 -178
- package/.agent/agents/precedence-reviewer.md +251 -250
- package/.agent/agents/product-manager.md +149 -142
- package/.agent/agents/product-owner.md +81 -80
- package/.agent/agents/project-planner.md +152 -142
- package/.agent/agents/qa-automation-engineer.md +216 -225
- package/.agent/agents/resilience-reviewer.md +88 -88
- package/.agent/agents/schema-reviewer.md +67 -67
- package/.agent/agents/security-auditor.md +180 -174
- package/.agent/agents/seo-specialist.md +188 -193
- package/.agent/agents/sql-reviewer.md +159 -161
- package/.agent/agents/supervisor-agent.md +173 -184
- package/.agent/agents/swarm-worker-contracts.md +170 -166
- package/.agent/agents/swarm-worker-registry.md +92 -92
- package/.agent/agents/system-architect.md +85 -0
- package/.agent/agents/test-coverage-reviewer.md +158 -160
- package/.agent/agents/test-engineer.md +118 -118
- package/.agent/agents/throughput-optimizer.md +291 -299
- package/.agent/agents/type-safety-reviewer.md +182 -175
- package/.agent/agents/ui-ux-auditor.md +300 -292
- package/.agent/agents/vitals-reviewer.md +223 -223
- package/.agent/mcp_config.json +37 -40
- package/.agent/patterns/generator.md +11 -9
- package/.agent/patterns/inversion.md +14 -12
- package/.agent/patterns/pipeline.md +11 -9
- package/.agent/patterns/reviewer.md +15 -13
- package/.agent/patterns/tool-wrapper.md +11 -9
- package/.agent/routing_index.json +654 -0
- package/.agent/rules/GEMINI.md +358 -352
- package/.agent/scripts/compile_router.py +112 -0
- package/.agent/scripts/migrate_skills_frontmatter.py +64 -0
- package/.agent/scripts/strengthen_skills.js +1 -1
- package/.agent/skills/advanced-rag-pipelines/SKILL.md +56 -0
- package/.agent/skills/agent-organizer/SKILL.md +156 -150
- package/.agent/skills/agentic-patterns/SKILL.md +313 -315
- package/.agent/skills/ai-prompt-injection-defense/SKILL.md +190 -184
- package/.agent/skills/api-patterns/SKILL.md +253 -247
- package/.agent/skills/api-security-auditor/SKILL.md +195 -193
- package/.agent/skills/app-builder/SKILL.md +573 -572
- package/.agent/skills/app-builder/templates/SKILL.md +108 -115
- package/.agent/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -76
- package/.agent/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -92
- package/.agent/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -88
- package/.agent/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -88
- package/.agent/skills/app-builder/templates/express-api/TEMPLATE.md +83 -83
- package/.agent/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -90
- package/.agent/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -90
- package/.agent/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +126 -122
- package/.agent/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +127 -122
- package/.agent/skills/app-builder/templates/nextjs-static/TEMPLATE.md +172 -169
- package/.agent/skills/app-builder/templates/nuxt-app/TEMPLATE.md +139 -134
- package/.agent/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -83
- package/.agent/skills/app-builder/templates/react-native-app/TEMPLATE.md +122 -119
- package/.agent/skills/appflow-wireframe/SKILL.md +146 -145
- package/.agent/skills/architecture/SKILL.md +226 -219
- package/.agent/skills/authentication-best-practices/SKILL.md +197 -189
- package/.agent/skills/backend-security-expert/SKILL.md +16 -2
- package/.agent/skills/bash-linux/SKILL.md +179 -179
- package/.agent/skills/behavioral-modes/SKILL.md +239 -223
- package/.agent/skills/brainstorming/SKILL.md +498 -486
- package/.agent/skills/browser-native-ai/SKILL.md +57 -4
- package/.agent/skills/building-native-ui/SKILL.md +202 -202
- package/.agent/skills/cicd-pro/SKILL.md +442 -0
- package/.agent/skills/clean-code/SKILL.md +400 -381
- package/.agent/skills/cloud-architect/SKILL.md +439 -0
- package/.agent/skills/code-review-checklist/SKILL.md +203 -194
- package/.agent/skills/config-validator/SKILL.md +165 -165
- package/.agent/skills/containerization-pro/SKILL.md +452 -0
- package/.agent/skills/csharp-developer/SKILL.md +518 -518
- package/.agent/skills/data-validation-schemas/SKILL.md +333 -328
- package/.agent/skills/database-design/SKILL.md +247 -240
- package/.agent/skills/deployment-procedures/SKILL.md +172 -169
- package/.agent/skills/devops-engineer/SKILL.md +345 -345
- package/.agent/skills/devops-incident-responder/SKILL.md +143 -137
- package/.agent/skills/doc.md +209 -177
- package/.agent/skills/documentation-templates/SKILL.md +291 -279
- package/.agent/skills/edge-computing/SKILL.md +183 -181
- package/.agent/skills/error-resilience/SKILL.md +411 -428
- package/.agent/skills/extract-design-system/SKILL.md +160 -158
- package/.agent/skills/framer-motion-expert/SKILL.md +253 -244
- package/.agent/skills/frontend-design/SKILL.md +208 -201
- package/.agent/skills/frontend-security-expert/SKILL.md +16 -3
- package/.agent/skills/game-design-expert/SKILL.md +132 -129
- package/.agent/skills/game-engineering-expert/SKILL.md +148 -146
- package/.agent/skills/generative-ui-expert/SKILL.md +57 -1
- package/.agent/skills/geo-fundamentals/SKILL.md +148 -147
- package/.agent/skills/git-pro/SKILL.md +435 -0
- package/.agent/skills/github-operations/SKILL.md +335 -329
- package/.agent/skills/gsap-core/SKILL.md +319 -308
- package/.agent/skills/gsap-frameworks/SKILL.md +213 -207
- package/.agent/skills/gsap-performance/SKILL.md +139 -133
- package/.agent/skills/gsap-plugins/SKILL.md +486 -480
- package/.agent/skills/gsap-react/SKILL.md +202 -189
- package/.agent/skills/gsap-scrolltrigger/SKILL.md +357 -350
- package/.agent/skills/gsap-timeline/SKILL.md +165 -161
- package/.agent/skills/gsap-utils/SKILL.md +344 -338
- package/.agent/skills/harness-protocol/SKILL.md +48 -0
- package/.agent/skills/i18n-localization/SKILL.md +174 -163
- package/.agent/skills/intelligent-routing/SKILL.md +202 -246
- package/.agent/skills/knowledge-graph/SKILL.md +60 -52
- package/.agent/skills/lint-and-validate/SKILL.md +261 -261
- package/.agent/skills/llm-engineering/SKILL.md +400 -394
- package/.agent/skills/local-first/SKILL.md +178 -178
- package/.agent/skills/mcp-builder/SKILL.md +143 -142
- package/.agent/skills/mobile-design/SKILL.md +272 -263
- package/.agent/skills/monorepo-management/SKILL.md +335 -334
- package/.agent/skills/motion-engineering/SKILL.md +266 -234
- package/.agent/skills/nextjs-react-expert/SKILL.md +236 -234
- package/.agent/skills/nodejs-best-practices/SKILL.md +547 -548
- package/.agent/skills/observability/SKILL.md +343 -343
- package/.agent/skills/parallel-agents/SKILL.md +143 -146
- package/.agent/skills/performance-profiling/SKILL.md +259 -267
- package/.agent/skills/plan-writing/SKILL.md +150 -142
- package/.agent/skills/platform-engineer/SKILL.md +148 -147
- package/.agent/skills/playwright-best-practices/SKILL.md +188 -187
- package/.agent/skills/powershell-windows/SKILL.md +162 -162
- package/.agent/skills/project-idioms/SKILL.md +137 -137
- package/.agent/skills/python-patterns/SKILL.md +260 -259
- package/.agent/skills/python-pro/SKILL.md +324 -323
- package/.agent/skills/react-specialist/SKILL.md +305 -277
- package/.agent/skills/readme-builder/SKILL.md +310 -300
- package/.agent/skills/realtime-patterns/SKILL.md +323 -319
- package/.agent/skills/red-team-tactics/SKILL.md +231 -218
- package/.agent/skills/rust-pro/SKILL.md +671 -673
- package/.agent/skills/seo-fundamentals/SKILL.md +179 -179
- package/.agent/skills/server-management/SKILL.md +218 -214
- package/.agent/skills/shadcn-ui-expert/SKILL.md +231 -231
- package/.agent/skills/skill-creator/SKILL.md +87 -86
- package/.agent/skills/sql-pro/SKILL.md +629 -629
- package/.agent/skills/supabase-postgres-best-practices/SKILL.md +97 -97
- package/.agent/skills/swiftui-expert/SKILL.md +204 -201
- package/.agent/skills/system-design-pro/SKILL.md +345 -0
- package/.agent/skills/systematic-debugging/SKILL.md +153 -142
- package/.agent/skills/tailwind-patterns/SKILL.md +610 -566
- package/.agent/skills/tdd-workflow/SKILL.md +169 -161
- package/.agent/skills/test-result-analyzer/SKILL.md +313 -309
- package/.agent/skills/testing-patterns/SKILL.md +566 -579
- package/.agent/skills/trend-researcher/SKILL.md +243 -237
- package/.agent/skills/typescript-advanced/SKILL.md +336 -335
- package/.agent/skills/ui-ux-pro-max/SKILL.md +590 -562
- package/.agent/skills/ui-ux-researcher/SKILL.md +244 -244
- package/.agent/skills/vue-expert/SKILL.md +294 -275
- package/.agent/skills/vulnerability-scanner/SKILL.md +416 -404
- package/.agent/skills/web-accessibility-auditor/SKILL.md +219 -218
- package/.agent/skills/web-design-guidelines/SKILL.md +192 -186
- package/.agent/skills/webapp-testing/SKILL.md +167 -169
- package/.agent/skills/webgpu-performance/SKILL.md +56 -2
- package/.agent/skills/whimsy-injector/SKILL.md +346 -325
- package/.agent/skills/workflow-optimizer/SKILL.md +231 -229
- package/.agent/workflows/acf.md +141 -0
- package/.agent/workflows/api-tester.md +176 -151
- package/.agent/workflows/audit.md +150 -127
- package/.agent/workflows/brainstorm.md +134 -110
- package/.agent/workflows/changelog.md +140 -112
- package/.agent/workflows/create.md +168 -124
- package/.agent/workflows/debug.md +190 -165
- package/.agent/workflows/deploy.md +201 -180
- package/.agent/workflows/enhance.md +154 -128
- package/.agent/workflows/fix.md +136 -114
- package/.agent/workflows/generate.md +198 -183
- package/.agent/workflows/marathon.md +37 -11
- package/.agent/workflows/migrate.md +184 -160
- package/.agent/workflows/orchestrate.md +192 -168
- package/.agent/workflows/performance-benchmarker.md +135 -114
- package/.agent/workflows/plan.md +196 -173
- package/.agent/workflows/preview.md +103 -80
- package/.agent/workflows/refactor.md +192 -161
- package/.agent/workflows/review-ai.md +125 -101
- package/.agent/workflows/review.md +141 -116
- package/.agent/workflows/session.md +122 -94
- package/.agent/workflows/status.md +101 -79
- package/.agent/workflows/strengthen-skills.md +164 -138
- package/.agent/workflows/super-prompt.md +24 -0
- package/.agent/workflows/swarm.md +193 -179
- package/.agent/workflows/test.md +211 -189
- package/.agent/workflows/tribunal-backend.md +136 -105
- package/.agent/workflows/tribunal-database.md +122 -95
- package/.agent/workflows/tribunal-frontend.md +221 -96
- package/.agent/workflows/tribunal-full.md +129 -100
- package/.agent/workflows/tribunal-mobile.md +122 -95
- package/.agent/workflows/tribunal-performance.md +136 -110
- package/.agent/workflows/tribunal-speed.md +209 -183
- package/.agent/workflows/ui-ux-pro-max.md +145 -122
- package/README.md +107 -55
- package/bin/mcp-server.js +159 -0
- package/bin/tribunal-kit.js +105 -29
- package/bin/wrapper.js +16 -7
- package/mcp_config.json +9 -0
- package/package.json +94 -86
- package/scripts/changelog.js +4 -3
- package/scripts/validate-payload.js +6 -1
- package/scripts/postinstall.js +0 -127
|
@@ -1,134 +1,139 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: nuxt-app
|
|
3
|
-
description: Nuxt 4 full-stack template. Vue 3 (Vapor), Pinia, Tailwind v4, Prisma.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Nuxt 4 Full-Stack Template (2026 Edition)
|
|
7
|
-
|
|
8
|
-
Mẫu template Full-Stack hiện đại cho Nuxt 4, tối ưu hóa hiệu suất với Vue Vapor Mode và Tailwind v4.
|
|
9
|
-
|
|
10
|
-
## Tech Stack
|
|
11
|
-
|
|
12
|
-
|Component|Technology|Version / Notes|
|
|
13
|
-
|
|
14
|
-
|Framework|Nuxt|v4.0+ (App Directory structure)|
|
|
15
|
-
|UI Engine|Vue|v3.6+ (Vapor Mode enabled)|
|
|
16
|
-
|Language|TypeScript|v5+ (Strict Mode)|
|
|
17
|
-
|State|Pinia|v3+ (Store syntax)|
|
|
18
|
-
|Database|PostgreSQL|Prisma ORM|
|
|
19
|
-
|Styling|Tailwind CSS|v4.0 (Vite Plugin, Zero-config)|
|
|
20
|
-
|UI Lib|Nuxt UI|v3 (Tailwind v4 native)|
|
|
21
|
-
|Validation|Zod|Schema validation|
|
|
22
|
-
|
|
23
|
-
---
|
|
24
|
-
|
|
25
|
-
## Directory Structure (Nuxt 4 Standard)
|
|
26
|
-
|
|
27
|
-
Sử dụng cấu trúc `app/` để giữ thư mục gốc gọn gàng.
|
|
28
|
-
|
|
29
|
-
```
|
|
30
|
-
project-name/
|
|
31
|
-
├── app/ # Application Source
|
|
32
|
-
│ ├── assets/
|
|
33
|
-
│ │ └── css/
|
|
34
|
-
│ │ └── main.css # Tailwind v4 imports
|
|
35
|
-
│ ├── components/ # Auto-imported components
|
|
36
|
-
│ ├── composables/ # Auto-imported logic
|
|
37
|
-
│ ├── layouts/
|
|
38
|
-
│ ├── pages/ # File-based routing
|
|
39
|
-
│ ├── app.vue # Root component
|
|
40
|
-
│ └── router.options.ts
|
|
41
|
-
├── server/ # Nitro Server Engine
|
|
42
|
-
│ ├── api/ # API Routes (e.g. /api/users)
|
|
43
|
-
│ ├── routes/ # Server Routes
|
|
44
|
-
│ └── utils/ # Server-only helpers (Prisma)
|
|
45
|
-
├── prisma/
|
|
46
|
-
│ └── schema.prisma
|
|
47
|
-
├── public/
|
|
48
|
-
├── nuxt.config.ts # Main Config
|
|
49
|
-
└── package.json
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
---
|
|
53
|
-
|
|
54
|
-
## Key Concepts (2026)
|
|
55
|
-
|
|
56
|
-
|Concept|Description|Future Update|
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
---
|
|
65
|
-
|
|
66
|
-
## Environment Variables
|
|
67
|
-
|
|
68
|
-
|Variable|Purpose|
|
|
69
|
-
|
|
70
|
-
|DATABASE_URL|Prisma connection string (PostgreSQL)|
|
|
71
|
-
|NUXT_PUBLIC_APP_URL|Canonical URL|
|
|
72
|
-
|NUXT_SESSION_PASSWORD|Session encryption key|
|
|
73
|
-
|
|
74
|
-
---
|
|
75
|
-
|
|
76
|
-
## Setup Steps
|
|
77
|
-
|
|
78
|
-
1. Initialize Project:
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
1
|
+
---
|
|
2
|
+
name: nuxt-app
|
|
3
|
+
description: Nuxt 4 full-stack template. Vue 3 (Vapor), Pinia, Tailwind v4, Prisma.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Nuxt 4 Full-Stack Template (2026 Edition)
|
|
7
|
+
|
|
8
|
+
Mẫu template Full-Stack hiện đại cho Nuxt 4, tối ưu hóa hiệu suất với Vue Vapor Mode và Tailwind v4.
|
|
9
|
+
|
|
10
|
+
## Tech Stack
|
|
11
|
+
|
|
12
|
+
| Component | Technology | Version / Notes |
|
|
13
|
+
| ---------- | ------------ | ------------------------------- |
|
|
14
|
+
| Framework | Nuxt | v4.0+ (App Directory structure) |
|
|
15
|
+
| UI Engine | Vue | v3.6+ (Vapor Mode enabled) |
|
|
16
|
+
| Language | TypeScript | v5+ (Strict Mode) |
|
|
17
|
+
| State | Pinia | v3+ (Store syntax) |
|
|
18
|
+
| Database | PostgreSQL | Prisma ORM |
|
|
19
|
+
| Styling | Tailwind CSS | v4.0 (Vite Plugin, Zero-config) |
|
|
20
|
+
| UI Lib | Nuxt UI | v3 (Tailwind v4 native) |
|
|
21
|
+
| Validation | Zod | Schema validation |
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## Directory Structure (Nuxt 4 Standard)
|
|
26
|
+
|
|
27
|
+
Sử dụng cấu trúc `app/` để giữ thư mục gốc gọn gàng.
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
project-name/
|
|
31
|
+
├── app/ # Application Source
|
|
32
|
+
│ ├── assets/
|
|
33
|
+
│ │ └── css/
|
|
34
|
+
│ │ └── main.css # Tailwind v4 imports
|
|
35
|
+
│ ├── components/ # Auto-imported components
|
|
36
|
+
│ ├── composables/ # Auto-imported logic
|
|
37
|
+
│ ├── layouts/
|
|
38
|
+
│ ├── pages/ # File-based routing
|
|
39
|
+
│ ├── app.vue # Root component
|
|
40
|
+
│ └── router.options.ts
|
|
41
|
+
├── server/ # Nitro Server Engine
|
|
42
|
+
│ ├── api/ # API Routes (e.g. /api/users)
|
|
43
|
+
│ ├── routes/ # Server Routes
|
|
44
|
+
│ └── utils/ # Server-only helpers (Prisma)
|
|
45
|
+
├── prisma/
|
|
46
|
+
│ └── schema.prisma
|
|
47
|
+
├── public/
|
|
48
|
+
├── nuxt.config.ts # Main Config
|
|
49
|
+
└── package.json
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## Key Concepts (2026)
|
|
55
|
+
|
|
56
|
+
| Concept | Description | Future Update |
|
|
57
|
+
| -------------------- | ------------------ | ---------------------------------------------------------------------- |
|
|
58
|
+
| **App Directory** | `app/` | Tách biệt mã nguồn ứng dụng và file cấu hình root. |
|
|
59
|
+
| **Vapor Mode** | Opt-in performance | Render không cần Virtual DOM (như SolidJS). Bật trong `nuxt.config`. |
|
|
60
|
+
| **Server Functions** | RPC-style calls | Gọi hàm server trực tiếp từ client (thay thế dần API routes thủ công). |
|
|
61
|
+
| **Tailwind v4** | CSS-first | Cấu hình theme trực tiếp trong CSS, không cần `tailwind.config.js`. |
|
|
62
|
+
| **Nuxt Islands** | Server Components | Render component cô lập trên server (`<NuxtIsland name="..." />`). |
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
## Environment Variables
|
|
67
|
+
|
|
68
|
+
| Variable | Purpose |
|
|
69
|
+
| --------------------- | ------------------------------------- |
|
|
70
|
+
| DATABASE_URL | Prisma connection string (PostgreSQL) |
|
|
71
|
+
| NUXT_PUBLIC_APP_URL | Canonical URL |
|
|
72
|
+
| NUXT_SESSION_PASSWORD | Session encryption key |
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## Setup Steps
|
|
77
|
+
|
|
78
|
+
1. Initialize Project:
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
npx nuxi@latest init my-app
|
|
82
|
+
# Select "Nuxt 4 structure" if prompted
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
2. Install Core Deps:
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
npm install @pinia/nuxt @prisma/client zod
|
|
89
|
+
npm install -D prisma
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
3. Setup Tailwind v4:
|
|
93
|
+
Install the Vite plugin (new standard):
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
npm install tailwindcss @tailwindcss/vite
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
Add to `nuxt.config.ts`:
|
|
100
|
+
|
|
101
|
+
```ts
|
|
102
|
+
import tailwindcss from "@tailwindcss/vite";
|
|
103
|
+
export default defineNuxtConfig({
|
|
104
|
+
vite: {
|
|
105
|
+
plugins: [tailwindcss()],
|
|
106
|
+
},
|
|
107
|
+
css: ["~/assets/css/main.css"],
|
|
108
|
+
});
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
4. Configure CSS:
|
|
112
|
+
In `app/assets/css/main.css`:
|
|
113
|
+
|
|
114
|
+
```css
|
|
115
|
+
@import "tailwindcss";
|
|
116
|
+
@theme {
|
|
117
|
+
--color-primary: oklch(0.6 0.15 150);
|
|
118
|
+
}
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
5. Run Development:
|
|
122
|
+
```bash
|
|
123
|
+
npm run dev
|
|
124
|
+
# Runs with Turbo/Vite
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
---
|
|
128
|
+
|
|
129
|
+
## Best Practices
|
|
130
|
+
|
|
131
|
+
- **Vapor Mode**: Kích hoạt cho các component nặng về render:
|
|
132
|
+
```ts
|
|
133
|
+
<script setup lang="ts" vapor>
|
|
134
|
+
// Component này sẽ compile sang chế độ Vapor (No VDOM)
|
|
135
|
+
</script>
|
|
136
|
+
```
|
|
137
|
+
- **Data Fetching**: Sử dụng `useFetch` với `server: false` cho các tác vụ client-only, hoặc dùng Server Functions để type-safety tốt hơn.
|
|
138
|
+
- **State**: Dùng `defineStore` (Pinia) cho global state, `useState` của Nuxt cho state đơn giản chia sẻ giữa Server/Client.
|
|
139
|
+
- **Type Safety**: Tự động tạo type cho API routes (`$fetch` typed automatically).
|
|
@@ -1,83 +1,83 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: python-fastapi
|
|
3
|
-
description: FastAPI REST API template principles. SQLAlchemy, Pydantic, Alembic.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# FastAPI API Template
|
|
7
|
-
|
|
8
|
-
## Tech Stack
|
|
9
|
-
|
|
10
|
-
|Component|Technology|
|
|
11
|
-
|
|
12
|
-
|Framework|FastAPI|
|
|
13
|
-
|Language|Python 3.11
|
|
14
|
-
|ORM|SQLAlchemy 2.0|
|
|
15
|
-
|Validation|Pydantic v2|
|
|
16
|
-
|Migrations|Alembic|
|
|
17
|
-
|Auth|JWT + passlib|
|
|
18
|
-
|
|
19
|
-
---
|
|
20
|
-
|
|
21
|
-
## Directory Structure
|
|
22
|
-
|
|
23
|
-
```
|
|
24
|
-
project-name/
|
|
25
|
-
├── alembic/ # Migrations
|
|
26
|
-
├── app/
|
|
27
|
-
│ ├── main.py # FastAPI app
|
|
28
|
-
│ ├── config.py # Settings
|
|
29
|
-
│ ├── database.py # DB connection
|
|
30
|
-
│ ├── models/ # SQLAlchemy models
|
|
31
|
-
│ ├── schemas/ # Pydantic schemas
|
|
32
|
-
│ ├── routers/ # API routes
|
|
33
|
-
│ ├── services/ # Business logic
|
|
34
|
-
│ ├── dependencies/ # DI
|
|
35
|
-
│ └── utils/
|
|
36
|
-
├── tests/
|
|
37
|
-
├── .env.example
|
|
38
|
-
└── requirements.txt
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
---
|
|
42
|
-
|
|
43
|
-
## Key Concepts
|
|
44
|
-
|
|
45
|
-
|Concept|Description|
|
|
46
|
-
|
|
47
|
-
|Async|async/await throughout|
|
|
48
|
-
|Dependency Injection|FastAPI Depends|
|
|
49
|
-
|Pydantic v2|Validation + serialization|
|
|
50
|
-
|SQLAlchemy 2.0|Async sessions|
|
|
51
|
-
|
|
52
|
-
---
|
|
53
|
-
|
|
54
|
-
## API Structure
|
|
55
|
-
|
|
56
|
-
|Layer|Responsibility|
|
|
57
|
-
|
|
58
|
-
|Routers|HTTP handling|
|
|
59
|
-
|Dependencies|Auth, validation|
|
|
60
|
-
|Services|Business logic|
|
|
61
|
-
|Models|Database entities|
|
|
62
|
-
|Schemas|Request/response|
|
|
63
|
-
|
|
64
|
-
---
|
|
65
|
-
|
|
66
|
-
## Setup Steps
|
|
67
|
-
|
|
68
|
-
1. `python -m venv venv`
|
|
69
|
-
2. `source venv/bin/activate`
|
|
70
|
-
3. `pip install fastapi uvicorn sqlalchemy alembic pydantic`
|
|
71
|
-
4. Create `.env`
|
|
72
|
-
5. `alembic upgrade head`
|
|
73
|
-
6. `uvicorn app.main:app --reload`
|
|
74
|
-
|
|
75
|
-
---
|
|
76
|
-
|
|
77
|
-
## Best Practices
|
|
78
|
-
|
|
79
|
-
- Use async everywhere
|
|
80
|
-
- Pydantic v2 for validation
|
|
81
|
-
- SQLAlchemy 2.0 async sessions
|
|
82
|
-
- Alembic for migrations
|
|
83
|
-
- pytest-asyncio for tests
|
|
1
|
+
---
|
|
2
|
+
name: python-fastapi
|
|
3
|
+
description: FastAPI REST API template principles. SQLAlchemy, Pydantic, Alembic.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# FastAPI API Template
|
|
7
|
+
|
|
8
|
+
## Tech Stack
|
|
9
|
+
|
|
10
|
+
| Component | Technology |
|
|
11
|
+
| ---------- | -------------- |
|
|
12
|
+
| Framework | FastAPI |
|
|
13
|
+
| Language | Python 3.11+ |
|
|
14
|
+
| ORM | SQLAlchemy 2.0 |
|
|
15
|
+
| Validation | Pydantic v2 |
|
|
16
|
+
| Migrations | Alembic |
|
|
17
|
+
| Auth | JWT + passlib |
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Directory Structure
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
project-name/
|
|
25
|
+
├── alembic/ # Migrations
|
|
26
|
+
├── app/
|
|
27
|
+
│ ├── main.py # FastAPI app
|
|
28
|
+
│ ├── config.py # Settings
|
|
29
|
+
│ ├── database.py # DB connection
|
|
30
|
+
│ ├── models/ # SQLAlchemy models
|
|
31
|
+
│ ├── schemas/ # Pydantic schemas
|
|
32
|
+
│ ├── routers/ # API routes
|
|
33
|
+
│ ├── services/ # Business logic
|
|
34
|
+
│ ├── dependencies/ # DI
|
|
35
|
+
│ └── utils/
|
|
36
|
+
├── tests/
|
|
37
|
+
├── .env.example
|
|
38
|
+
└── requirements.txt
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## Key Concepts
|
|
44
|
+
|
|
45
|
+
| Concept | Description |
|
|
46
|
+
| -------------------- | -------------------------- |
|
|
47
|
+
| Async | async/await throughout |
|
|
48
|
+
| Dependency Injection | FastAPI Depends |
|
|
49
|
+
| Pydantic v2 | Validation + serialization |
|
|
50
|
+
| SQLAlchemy 2.0 | Async sessions |
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## API Structure
|
|
55
|
+
|
|
56
|
+
| Layer | Responsibility |
|
|
57
|
+
| ------------ | ----------------- |
|
|
58
|
+
| Routers | HTTP handling |
|
|
59
|
+
| Dependencies | Auth, validation |
|
|
60
|
+
| Services | Business logic |
|
|
61
|
+
| Models | Database entities |
|
|
62
|
+
| Schemas | Request/response |
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
## Setup Steps
|
|
67
|
+
|
|
68
|
+
1. `python -m venv venv`
|
|
69
|
+
2. `source venv/bin/activate`
|
|
70
|
+
3. `pip install fastapi uvicorn sqlalchemy alembic pydantic`
|
|
71
|
+
4. Create `.env`
|
|
72
|
+
5. `alembic upgrade head`
|
|
73
|
+
6. `uvicorn app.main:app --reload`
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## Best Practices
|
|
78
|
+
|
|
79
|
+
- Use async everywhere
|
|
80
|
+
- Pydantic v2 for validation
|
|
81
|
+
- SQLAlchemy 2.0 async sessions
|
|
82
|
+
- Alembic for migrations
|
|
83
|
+
- pytest-asyncio for tests
|