ai-devx 1.0.1 → 1.0.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/package.json
CHANGED
|
@@ -12,14 +12,14 @@ allowed-tools: Read, Write, Edit, Glob, Grep, Bash, Agent
|
|
|
12
12
|
|
|
13
13
|
**Read ONLY files relevant to the request!** Check the content map, find what you need.
|
|
14
14
|
|
|
15
|
-
| File
|
|
16
|
-
|
|
17
|
-
| `project-detection.md`
|
|
18
|
-
| `tech-stack.md`
|
|
19
|
-
| `agent-coordination.md` | Agent pipeline, execution order
|
|
20
|
-
| `scaffolding.md`
|
|
21
|
-
| `feature-building.md`
|
|
22
|
-
| `templates/SKILL.md`
|
|
15
|
+
| File | Description | When to Read |
|
|
16
|
+
| ----------------------- | -------------------------------------- | ----------------------------------- |
|
|
17
|
+
| `project-detection.md` | Keyword matrix, project type detection | Starting new project |
|
|
18
|
+
| `tech-stack.md` | 2026 default stack, alternatives | Choosing technologies |
|
|
19
|
+
| `agent-coordination.md` | Agent pipeline, execution order | Coordinating multi-agent work |
|
|
20
|
+
| `scaffolding.md` | Directory structure, core files | Creating project structure |
|
|
21
|
+
| `feature-building.md` | Feature analysis, error handling | Adding features to existing project |
|
|
22
|
+
| `templates/SKILL.md` | **Project templates** | Scaffolding new project |
|
|
23
23
|
|
|
24
24
|
---
|
|
25
25
|
|
|
@@ -27,32 +27,33 @@ allowed-tools: Read, Write, Edit, Glob, Grep, Bash, Agent
|
|
|
27
27
|
|
|
28
28
|
Quick-start scaffolding for new projects. **Read the matching template only!**
|
|
29
29
|
|
|
30
|
-
| Template
|
|
31
|
-
|
|
32
|
-
| [nextjs-fullstack](templates/nextjs-fullstack/TEMPLATE.md)
|
|
33
|
-
| [nextjs-saas](templates/nextjs-saas/TEMPLATE.md)
|
|
34
|
-
| [nextjs-static](templates/nextjs-static/TEMPLATE.md)
|
|
35
|
-
| [nuxt-app](templates/nuxt-app/TEMPLATE.md)
|
|
36
|
-
| [express-api](templates/express-api/TEMPLATE.md)
|
|
37
|
-
| [python-fastapi](templates/python-fastapi/TEMPLATE.md)
|
|
38
|
-
| [react-native-app](templates/react-native-app/TEMPLATE.md)
|
|
39
|
-
| [flutter-app](templates/flutter-app/TEMPLATE.md)
|
|
40
|
-
| [electron-desktop](templates/electron-desktop/TEMPLATE.md)
|
|
41
|
-
| [chrome-extension](templates/chrome-extension/TEMPLATE.md)
|
|
42
|
-
| [cli-tool](templates/cli-tool/TEMPLATE.md)
|
|
43
|
-
| [monorepo-turborepo](templates/monorepo-turborepo/TEMPLATE.md) | Turborepo + pnpm
|
|
30
|
+
| Template | Tech Stack | When to Use |
|
|
31
|
+
| -------------------------------------------------------------- | ------------------- | --------------------- |
|
|
32
|
+
| [nextjs-fullstack](templates/nextjs-fullstack/TEMPLATE.md) | Next.js + Prisma | Full-stack web app |
|
|
33
|
+
| [nextjs-saas](templates/nextjs-saas/TEMPLATE.md) | Next.js + Stripe | SaaS product |
|
|
34
|
+
| [nextjs-static](templates/nextjs-static/TEMPLATE.md) | Next.js + Framer | Landing page |
|
|
35
|
+
| [nuxt-app](templates/nuxt-app/TEMPLATE.md) | Nuxt 3 + Pinia | Vue full-stack app |
|
|
36
|
+
| [express-api](templates/express-api/TEMPLATE.md) | Express + JWT | REST API |
|
|
37
|
+
| [python-fastapi](templates/python-fastapi/TEMPLATE.md) | FastAPI | Python API |
|
|
38
|
+
| [react-native-app](templates/react-native-app/TEMPLATE.md) | Expo + Zustand | Mobile app |
|
|
39
|
+
| [flutter-app](templates/flutter-app/TEMPLATE.md) | Flutter + Riverpod | Cross-platform mobile |
|
|
40
|
+
| [electron-desktop](templates/electron-desktop/TEMPLATE.md) | Electron + React | Desktop app |
|
|
41
|
+
| [chrome-extension](templates/chrome-extension/TEMPLATE.md) | Chrome MV3 | Browser extension |
|
|
42
|
+
| [cli-tool](templates/cli-tool/TEMPLATE.md) | Node.js + Commander | CLI app |
|
|
43
|
+
| [monorepo-turborepo](templates/monorepo-turborepo/TEMPLATE.md) | Turborepo + pnpm | Monorepo |
|
|
44
|
+
| [golang-gin](templates/golang-gin/TEMPLATE.md) | Gin + GORM | Go REST API |
|
|
44
45
|
|
|
45
46
|
---
|
|
46
47
|
|
|
47
48
|
## 🔗 Related Agents
|
|
48
49
|
|
|
49
|
-
| Agent
|
|
50
|
-
|
|
51
|
-
| `project-planner`
|
|
52
|
-
| `frontend-specialist` | UI components, pages
|
|
53
|
-
| `backend-specialist`
|
|
54
|
-
| `database-architect`
|
|
55
|
-
| `devops-engineer`
|
|
50
|
+
| Agent | Role |
|
|
51
|
+
| --------------------- | -------------------------------- |
|
|
52
|
+
| `project-planner` | Task breakdown, dependency graph |
|
|
53
|
+
| `frontend-specialist` | UI components, pages |
|
|
54
|
+
| `backend-specialist` | API, business logic |
|
|
55
|
+
| `database-architect` | Schema, migrations |
|
|
56
|
+
| `devops-engineer` | Deployment, preview |
|
|
56
57
|
|
|
57
58
|
---
|
|
58
59
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: templates
|
|
3
|
-
description: Project scaffolding templates for new applications. Use when creating new projects from scratch. Contains
|
|
3
|
+
description: Project scaffolding templates for new applications. Use when creating new projects from scratch. Contains 13 templates for various tech stacks.
|
|
4
4
|
allowed-tools: Read, Glob, Grep
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -14,20 +14,21 @@ allowed-tools: Read, Glob, Grep
|
|
|
14
14
|
|
|
15
15
|
**Read ONLY the template matching user's project type!**
|
|
16
16
|
|
|
17
|
-
| Template
|
|
18
|
-
|
|
19
|
-
| [nextjs-fullstack](nextjs-fullstack/TEMPLATE.md)
|
|
20
|
-
| [nextjs-saas](nextjs-saas/TEMPLATE.md)
|
|
21
|
-
| [nextjs-static](nextjs-static/TEMPLATE.md)
|
|
22
|
-
| [express-api](express-api/TEMPLATE.md)
|
|
23
|
-
| [python-fastapi](python-fastapi/TEMPLATE.md)
|
|
24
|
-
| [react-native-app](react-native-app/TEMPLATE.md)
|
|
25
|
-
| [flutter-app](flutter-app/TEMPLATE.md)
|
|
26
|
-
| [electron-desktop](electron-desktop/TEMPLATE.md)
|
|
27
|
-
| [chrome-extension](chrome-extension/TEMPLATE.md)
|
|
28
|
-
| [cli-tool](cli-tool/TEMPLATE.md)
|
|
29
|
-
| [monorepo-turborepo](monorepo-turborepo/TEMPLATE.md) | Turborepo + pnpm
|
|
30
|
-
| [astro-static](astro-static/TEMPLATE.md)
|
|
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
|
+
| [golang-gin](golang-gin/TEMPLATE.md) | Gin + GORM | Go REST API |
|
|
31
32
|
|
|
32
33
|
---
|
|
33
34
|
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: golang-gin
|
|
3
|
+
description: Gin REST API template inspired by FastAPI architecture (GORM, Validator, Goose).
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Golang Gin REST API Template
|
|
7
|
+
|
|
8
|
+
A production-ready **Gin** boilerplate that mirrors **FastAPI-style architecture**: clean layers, explicit DTOs, and clear separation of concerns.
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## Tech Stack
|
|
13
|
+
|
|
14
|
+
| Component | Technology |
|
|
15
|
+
|---------|-----------|
|
|
16
|
+
| Framework | Gin |
|
|
17
|
+
| Language | Go 1.22+ |
|
|
18
|
+
| ORM | GORM |
|
|
19
|
+
| Validation | go-playground/validator |
|
|
20
|
+
| Migrations | Goose |
|
|
21
|
+
| Auth | JWT |
|
|
22
|
+
| Config | Viper |
|
|
23
|
+
| Logging | Zap |
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Directory Structure
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
project-name/
|
|
31
|
+
├── cmd/
|
|
32
|
+
│ └── server/
|
|
33
|
+
│ └── main.go # App entrypoint
|
|
34
|
+
├── internal/
|
|
35
|
+
│ ├── app/ # App bootstrap
|
|
36
|
+
│ │ ├── router.go
|
|
37
|
+
│ │ └── server.go
|
|
38
|
+
│ ├── config/ # Config & env
|
|
39
|
+
│ │ └── config.go
|
|
40
|
+
│ ├── database/ # DB connection
|
|
41
|
+
│ │ └── postgres.go
|
|
42
|
+
│ ├── models/ # GORM models
|
|
43
|
+
│ ├── dto/ # Request/Response DTOs
|
|
44
|
+
│ ├── handlers/ # HTTP handlers
|
|
45
|
+
│ ├── services/ # Business logic
|
|
46
|
+
│ ├── repositories/ # DB access layer
|
|
47
|
+
│ ├── middleware/ # Auth, logging
|
|
48
|
+
│ └── utils/
|
|
49
|
+
├── migrations/ # Goose migrations
|
|
50
|
+
├── tests/
|
|
51
|
+
├── .env.example
|
|
52
|
+
├── go.mod
|
|
53
|
+
└── go.sum
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## Key Concepts
|
|
59
|
+
|
|
60
|
+
| Concept | Description |
|
|
61
|
+
|-------|------------|
|
|
62
|
+
| Concurrency | Goroutines + context |
|
|
63
|
+
| Dependency Injection | Constructor-based |
|
|
64
|
+
| DTO Pattern | Explicit request/response structs |
|
|
65
|
+
| Context Propagation | `context.Context` |
|
|
66
|
+
| Validation | Struct tags |
|
|
67
|
+
| Clean Architecture | Handler → Service → Repository |
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## FastAPI → Gin Mapping
|
|
72
|
+
|
|
73
|
+
| FastAPI | Gin |
|
|
74
|
+
|------|-----|
|
|
75
|
+
| Routers | Handlers + Router |
|
|
76
|
+
| Dependencies | Middleware |
|
|
77
|
+
| Services | Services |
|
|
78
|
+
| Models | GORM models |
|
|
79
|
+
| Schemas | DTO structs |
|
|
80
|
+
| Depends | Constructor injection |
|
|
81
|
+
|
|
82
|
+
---
|
|
83
|
+
|
|
84
|
+
## API Layers
|
|
85
|
+
|
|
86
|
+
| Layer | Responsibility |
|
|
87
|
+
|------|---------------|
|
|
88
|
+
| Handlers | HTTP & request binding |
|
|
89
|
+
| Middleware | Auth, logging, rate-limit |
|
|
90
|
+
| Services | Business rules |
|
|
91
|
+
| Repositories | DB queries |
|
|
92
|
+
| Models | Database entities |
|
|
93
|
+
| DTOs | Validation & serialization |
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## Setup Steps
|
|
98
|
+
|
|
99
|
+
1. Initialize module
|
|
100
|
+
```bash
|
|
101
|
+
go mod init project
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
2. Install dependencies
|
|
105
|
+
```bash
|
|
106
|
+
go get github.com/gin-gonic/gin
|
|
107
|
+
go get gorm.io/gorm
|
|
108
|
+
go get gorm.io/driver/postgres
|
|
109
|
+
go get github.com/spf13/viper
|
|
110
|
+
go get github.com/golang-jwt/jwt/v5
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
3. Configure environment
|
|
114
|
+
```bash
|
|
115
|
+
cp .env.example .env
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
4. Run migrations
|
|
119
|
+
```bash
|
|
120
|
+
goose up
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
5. Start server
|
|
124
|
+
```bash
|
|
125
|
+
go run cmd/server/main.go
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
Server runs on:
|
|
129
|
+
```
|
|
130
|
+
http://localhost:8000
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
## Best Practices
|
|
136
|
+
|
|
137
|
+
- Keep `main.go` minimal
|
|
138
|
+
- Use DTOs for all input/output
|
|
139
|
+
- Context-aware DB calls
|
|
140
|
+
- Version APIs (`/api/v1`)
|
|
141
|
+
- Middleware for cross-cutting concerns
|
|
142
|
+
- Single static binary for deployment
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
## When to Choose Gin over FastAPI
|
|
147
|
+
|
|
148
|
+
✔ Higher throughput
|
|
149
|
+
✔ Lower memory usage
|
|
150
|
+
✔ Compile-time safety
|
|
151
|
+
✔ Single binary deployments
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
## Best Practices
|
|
156
|
+
|
|
157
|
+
- JWT authentication
|
|
158
|
+
- Swagger / OpenAPI
|
|
159
|
+
- Docker & Kubernetes
|
|
160
|
+
- Observability (Prometheus + Grafana)
|
|
161
|
+
- CI/CD pipeline
|
|
162
|
+
|
|
163
|
+
---
|
|
164
|
+
|