@kood/claude-code 0.1.7 → 0.1.10

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.
Files changed (49) hide show
  1. package/dist/index.js +137 -3
  2. package/package.json +8 -2
  3. package/templates/hono/CLAUDE.md +53 -326
  4. package/templates/hono/docs/architecture/architecture.md +93 -747
  5. package/templates/hono/docs/deployment/cloudflare.md +59 -513
  6. package/templates/hono/docs/deployment/docker.md +41 -356
  7. package/templates/hono/docs/deployment/index.md +49 -190
  8. package/templates/hono/docs/deployment/railway.md +36 -306
  9. package/templates/hono/docs/deployment/vercel.md +49 -434
  10. package/templates/hono/docs/library/ai-sdk/index.md +53 -290
  11. package/templates/hono/docs/library/ai-sdk/openrouter.md +19 -387
  12. package/templates/hono/docs/library/ai-sdk/providers.md +28 -394
  13. package/templates/hono/docs/library/ai-sdk/streaming.md +52 -353
  14. package/templates/hono/docs/library/ai-sdk/structured-output.md +63 -395
  15. package/templates/hono/docs/library/ai-sdk/tools.md +62 -431
  16. package/templates/hono/docs/library/hono/env-setup.md +24 -313
  17. package/templates/hono/docs/library/hono/error-handling.md +34 -295
  18. package/templates/hono/docs/library/hono/index.md +24 -122
  19. package/templates/hono/docs/library/hono/middleware.md +21 -188
  20. package/templates/hono/docs/library/hono/rpc.md +40 -341
  21. package/templates/hono/docs/library/hono/validation.md +35 -195
  22. package/templates/hono/docs/library/pino/index.md +42 -333
  23. package/templates/hono/docs/library/prisma/cloudflare-d1.md +64 -367
  24. package/templates/hono/docs/library/prisma/config.md +19 -260
  25. package/templates/hono/docs/library/prisma/index.md +64 -320
  26. package/templates/hono/docs/library/zod/index.md +53 -257
  27. package/templates/npx/CLAUDE.md +58 -276
  28. package/templates/npx/docs/references/patterns.md +160 -0
  29. package/templates/tanstack-start/CLAUDE.md +0 -4
  30. package/templates/tanstack-start/docs/architecture/architecture.md +44 -589
  31. package/templates/tanstack-start/docs/design/index.md +119 -12
  32. package/templates/tanstack-start/docs/guides/conventions.md +103 -0
  33. package/templates/tanstack-start/docs/guides/env-setup.md +34 -340
  34. package/templates/tanstack-start/docs/guides/getting-started.md +22 -209
  35. package/templates/tanstack-start/docs/guides/hooks.md +166 -0
  36. package/templates/tanstack-start/docs/guides/routes.md +166 -0
  37. package/templates/tanstack-start/docs/guides/services.md +143 -0
  38. package/templates/tanstack-start/docs/library/tanstack-query/index.md +18 -2
  39. package/templates/tanstack-start/docs/library/zod/index.md +16 -1
  40. package/templates/tanstack-start/docs/design/accessibility.md +0 -163
  41. package/templates/tanstack-start/docs/design/color.md +0 -93
  42. package/templates/tanstack-start/docs/design/spacing.md +0 -122
  43. package/templates/tanstack-start/docs/design/typography.md +0 -80
  44. package/templates/tanstack-start/docs/guides/best-practices.md +0 -950
  45. package/templates/tanstack-start/docs/guides/husky-lint-staged.md +0 -303
  46. package/templates/tanstack-start/docs/guides/prettier.md +0 -189
  47. package/templates/tanstack-start/docs/guides/project-templates.md +0 -710
  48. package/templates/tanstack-start/docs/library/tanstack-query/setup.md +0 -48
  49. package/templates/tanstack-start/docs/library/zod/basic-types.md +0 -74
@@ -1,14 +1,10 @@
1
- # Prisma - Config 파일 (prisma.config.ts)
1
+ # Prisma - Config 파일
2
2
 
3
- > **상위 문서**: [Prisma](./index.md)
4
-
5
- Prisma v7에서 도입된 `prisma.config.ts` 설정 파일입니다.
3
+ > prisma.config.ts 설정 (v7)
6
4
 
7
5
  ---
8
6
 
9
- ## ⚠️ 필수: Multi-File 스키마 설정
10
-
11
- Multi-File 스키마를 사용하려면 **반드시** `prisma.config.ts`에서 스키마 폴더를 지정해야 합니다.
7
+ ## Multi-File 스키마 필수 설정
12
8
 
13
9
  ```typescript
14
10
  // prisma.config.ts
@@ -16,8 +12,7 @@ import path from 'node:path'
16
12
  import { defineConfig, env } from 'prisma/config'
17
13
 
18
14
  export default defineConfig({
19
- // Multi-File 스키마 폴더 지정
20
- schema: path.join('prisma', 'schema'),
15
+ schema: path.join('prisma', 'schema'), // 폴더 경로
21
16
  datasource: {
22
17
  url: env('DATABASE_URL'),
23
18
  },
@@ -26,212 +21,62 @@ export default defineConfig({
26
21
 
27
22
  ---
28
23
 
29
- ## 파일 위치 및 이름
30
-
31
- ### 지원되는 파일명
32
-
33
- ```
34
- prisma.config.ts # 권장 (소규모 프로젝트)
35
- prisma.config.js
36
- prisma.config.mjs
37
- prisma.config.cjs
38
- prisma.config.mts
39
- prisma.config.cts
40
-
41
- .config/prisma.ts # 권장 (대규모 프로젝트)
42
- .config/prisma.js
43
- ```
44
-
45
- ### 권장 위치
24
+ ## 파일 위치
46
25
 
47
26
  ```
48
27
  프로젝트/
49
28
  ├── prisma.config.ts # 프로젝트 루트
50
29
  ├── prisma/
51
- │ ├── schema/ # Multi-File 스키마 폴더
30
+ │ ├── schema/ # Multi-File 스키마
52
31
  │ │ ├── +base.prisma
53
32
  │ │ ├── +enum.prisma
54
33
  │ │ └── user.prisma
55
- │ └── migrations/ # 마이그레이션 폴더
56
- ├── src/
57
- │ └── index.ts # Hono 앱 진입점
58
- └── package.json
34
+ │ └── migrations/
35
+ └── src/
59
36
  ```
60
37
 
61
38
  ---
62
39
 
63
- ## 설정 옵션
64
-
65
- ### 전체 옵션 목록
66
-
67
- | 옵션 | 타입 | 필수 | 설명 |
68
- |------|------|------|------|
69
- | `schema` | string | ❌ | 스키마 파일 또는 폴더 경로 |
70
- | `datasource.url` | string | ✅ | 데이터베이스 연결 URL |
71
- | `datasource.shadowDatabaseUrl` | string | ❌ | Shadow DB URL |
72
- | `migrations.path` | string | ❌ | 마이그레이션 폴더 경로 |
73
- | `migrations.seed` | string | ❌ | 시드 스크립트 명령어 |
74
- | `migrations.initShadowDb` | string | ❌ | Shadow DB 초기화 SQL |
75
- | `views.path` | string | ❌ | SQL 뷰 정의 폴더 |
76
- | `typedSql.path` | string | ❌ | TypedSQL 파일 폴더 |
77
- | `experimental` | object | ❌ | 실험적 기능 활성화 |
78
-
79
- ---
80
-
81
- ## 기본 설정 예시
82
-
83
- ### defineConfig 사용 (권장)
40
+ ## 전체 설정 예시
84
41
 
85
42
  ```typescript
86
43
  // prisma.config.ts
87
44
  import 'dotenv/config'
45
+ import path from 'node:path'
88
46
  import { defineConfig, env } from 'prisma/config'
89
47
 
90
48
  export default defineConfig({
91
- // Multi-File 스키마 설정
92
- schema: 'prisma/schema',
93
-
94
- // 마이그레이션 설정
49
+ schema: path.join('prisma', 'schema'),
95
50
  migrations: {
96
51
  path: 'prisma/migrations',
97
52
  seed: 'tsx prisma/seed.ts',
98
53
  },
99
-
100
- // 데이터베이스 연결
101
54
  datasource: {
102
55
  url: env('DATABASE_URL'),
103
56
  },
104
57
  })
105
58
  ```
106
59
 
107
- ### satisfies 사용
108
-
109
- ```typescript
110
- // prisma.config.ts
111
- import 'dotenv/config'
112
- import type { PrismaConfig } from 'prisma'
113
- import { env } from 'prisma/config'
114
-
115
- export default {
116
- schema: 'prisma/schema',
117
- migrations: {
118
- path: 'prisma/migrations',
119
- seed: 'tsx prisma/seed.ts',
120
- },
121
- datasource: {
122
- url: env('DATABASE_URL'),
123
- },
124
- } satisfies PrismaConfig
125
- ```
126
-
127
60
  ---
128
61
 
129
- ## Multi-File 스키마 설정
130
-
131
- ### 필수 설정
132
-
133
- ```typescript
134
- // prisma.config.ts
135
- import path from 'node:path'
136
- import { defineConfig, env } from 'prisma/config'
137
-
138
- export default defineConfig({
139
- // ⚠️ 폴더 경로 지정 (파일이 아님!)
140
- schema: path.join('prisma', 'schema'),
141
- datasource: {
142
- url: env('DATABASE_URL'),
143
- },
144
- })
145
- ```
146
-
147
- ### 폴더 구조
148
-
149
- ```
150
- prisma/
151
- ├── schema/ # Multi-File 스키마 폴더
152
- │ ├── +base.prisma # datasource, generator 설정
153
- │ ├── +enum.prisma # 모든 enum 정의
154
- │ ├── user.prisma # User 모델
155
- │ ├── post.prisma # Post 모델
156
- │ └── ...
157
- └── migrations/ # ⚠️ datasource와 같은 레벨에 위치
158
- ```
159
-
160
- ### +base.prisma 예시
62
+ ## +base.prisma
161
63
 
162
64
  ```prisma
163
65
  // prisma/schema/+base.prisma
164
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
165
- // Prisma 기본 설정 파일
166
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
167
-
168
- // 데이터베이스 연결 설정
169
66
  datasource db {
170
67
  provider = "postgresql"
171
68
  url = env("DATABASE_URL")
172
69
  }
173
70
 
174
- // Prisma Client 생성 설정
175
71
  generator client {
176
- provider = "prisma-client" // Prisma v7 필수
72
+ provider = "prisma-client" // v7 필수
177
73
  output = "../../generated/prisma"
178
74
  }
179
75
  ```
180
76
 
181
77
  ---
182
78
 
183
- ## 환경 변수 설정
184
-
185
- ### dotenv 설치
186
-
187
- ```bash
188
- npm install dotenv
189
- ```
190
-
191
- ### 환경 변수 사용
192
-
193
- ```typescript
194
- // prisma.config.ts
195
- import 'dotenv/config' // ⚠️ 반드시 최상단에 import
196
- import { defineConfig, env } from 'prisma/config'
197
-
198
- export default defineConfig({
199
- schema: 'prisma/schema',
200
- datasource: {
201
- url: env('DATABASE_URL'), // 타입 안전한 환경 변수 접근
202
- },
203
- })
204
- ```
205
-
206
- ### .env 파일
207
-
208
- ```env
209
- DATABASE_URL="postgresql://user:password@localhost:5432/mydb"
210
- ```
211
-
212
- ---
213
-
214
- ## 마이그레이션 설정
215
-
216
- ### 시드 스크립트
217
-
218
- ```typescript
219
- // prisma.config.ts
220
- import { defineConfig, env } from 'prisma/config'
221
-
222
- export default defineConfig({
223
- schema: 'prisma/schema',
224
- migrations: {
225
- path: 'prisma/migrations',
226
- seed: 'tsx prisma/seed.ts', // 시드 명령어
227
- },
228
- datasource: {
229
- url: env('DATABASE_URL'),
230
- },
231
- })
232
- ```
233
-
234
- ### 시드 파일 예시
79
+ ## 시드 스크립트
235
80
 
236
81
  ```typescript
237
82
  // prisma/seed.ts
@@ -240,12 +85,8 @@ import { PrismaClient } from '../generated/prisma'
240
85
  const prisma = new PrismaClient()
241
86
 
242
87
  async function main() {
243
- // 초기 데이터 생성
244
88
  await prisma.user.create({
245
- data: {
246
- email: 'admin@example.com',
247
- name: '관리자',
248
- },
89
+ data: { email: 'admin@example.com', name: '관리자' },
249
90
  })
250
91
  }
251
92
 
@@ -256,107 +97,25 @@ main()
256
97
 
257
98
  ---
258
99
 
259
- ## Cloudflare Workers 설정
260
-
261
- Cloudflare Workers/D1 환경에서는 추가 설정이 필요합니다.
262
-
263
- ```typescript
264
- // prisma.config.ts
265
- import { defineConfig, env } from 'prisma/config'
266
-
267
- export default defineConfig({
268
- schema: 'prisma/schema',
269
- datasource: {
270
- url: env('DATABASE_URL'),
271
- },
272
- })
273
- ```
100
+ ## Cloudflare Workers
274
101
 
275
102
  ```prisma
276
103
  // prisma/schema/+base.prisma
277
104
  generator client {
278
105
  provider = "prisma-client"
279
106
  output = "../../generated/prisma"
280
- runtime = "workerd" // Cloudflare Workers 런타임
107
+ runtime = "workerd" // Workers 런타임
281
108
  }
282
109
 
283
110
  datasource db {
284
- provider = "sqlite" // D1은 SQLite 기반
111
+ provider = "sqlite" // D1은 SQLite
285
112
  url = env("DATABASE_URL")
286
113
  }
287
114
  ```
288
115
 
289
116
  ---
290
117
 
291
- ## 경로 해석 규칙
292
-
293
- ### 중요 사항
294
-
295
- - 모든 경로는 **config 파일 위치 기준**으로 해석됩니다
296
- - CLI 명령어 실행 위치가 아닙니다!
297
-
298
- ### 예시
299
-
300
- ```
301
- 프로젝트/
302
- ├── prisma.config.ts # 여기가 기준!
303
- ├── prisma/
304
- │ └── schema/
305
- └── src/
306
- ```
307
-
308
- ```typescript
309
- // prisma.config.ts
310
- export default defineConfig({
311
- // ✅ prisma.config.ts 기준 상대 경로
312
- schema: 'prisma/schema',
313
-
314
- // ❌ 이렇게 하지 마세요
315
- schema: './prisma/schema', // ./ 불필요
316
- })
317
- ```
318
-
319
- ### 커스텀 경로 지정
320
-
321
- ```bash
322
- # --config 플래그로 config 파일 위치 지정
323
- npx prisma validate --config ./path/to/myconfig.ts
324
- ```
325
-
326
- ---
327
-
328
- ## 전체 설정 예시
329
-
330
- ```typescript
331
- // prisma.config.ts
332
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
333
- // Prisma v7 설정 파일
334
- // Multi-File 스키마 및 마이그레이션 설정
335
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
336
- import 'dotenv/config'
337
- import path from 'node:path'
338
- import { defineConfig, env } from 'prisma/config'
339
-
340
- export default defineConfig({
341
- // Multi-File 스키마 폴더
342
- schema: path.join('prisma', 'schema'),
343
-
344
- // 마이그레이션 설정
345
- migrations: {
346
- path: 'prisma/migrations',
347
- seed: 'tsx prisma/seed.ts',
348
- },
349
-
350
- // 데이터베이스 연결
351
- datasource: {
352
- url: env('DATABASE_URL'),
353
- },
354
- })
355
- ```
356
-
357
- ---
358
-
359
118
  ## 관련 문서
360
119
 
361
- - [Prisma v7 개요](./index.md)
120
+ - [Prisma 개요](./index.md)
362
121
  - [Cloudflare D1](./cloudflare-d1.md)