@react-spa-scaffold/mcp 0.3.0 → 1.1.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.
Files changed (83) hide show
  1. package/README.md +42 -20
  2. package/dist/features/registry.d.ts.map +1 -1
  3. package/dist/features/registry.js +59 -25
  4. package/dist/features/registry.js.map +1 -1
  5. package/dist/features/types.d.ts +1 -0
  6. package/dist/features/types.d.ts.map +1 -1
  7. package/dist/features/versions.json +1 -1
  8. package/dist/server.d.ts.map +1 -1
  9. package/dist/server.js +2 -1
  10. package/dist/server.js.map +1 -1
  11. package/dist/tools/get-example.d.ts +4 -6
  12. package/dist/tools/get-example.d.ts.map +1 -1
  13. package/dist/tools/get-example.js +2 -2
  14. package/dist/tools/get-example.js.map +1 -1
  15. package/dist/tools/get-scaffold.d.ts +3 -10
  16. package/dist/tools/get-scaffold.d.ts.map +1 -1
  17. package/dist/tools/get-scaffold.js +44 -20
  18. package/dist/tools/get-scaffold.js.map +1 -1
  19. package/dist/utils/examples.d.ts.map +1 -1
  20. package/dist/utils/examples.js +19 -16
  21. package/dist/utils/examples.js.map +1 -1
  22. package/dist/utils/paths.d.ts +2 -1
  23. package/dist/utils/paths.d.ts.map +1 -1
  24. package/dist/utils/paths.js +15 -2
  25. package/dist/utils/paths.js.map +1 -1
  26. package/dist/utils/scaffold.d.ts +6 -1
  27. package/dist/utils/scaffold.d.ts.map +1 -1
  28. package/dist/utils/scaffold.js +86 -13
  29. package/dist/utils/scaffold.js.map +1 -1
  30. package/package.json +2 -2
  31. package/templates/.env.example +21 -0
  32. package/templates/.github/PULL_REQUEST_TEMPLATE.md +24 -0
  33. package/templates/.github/actions/setup-node-deps/action.yml +32 -0
  34. package/templates/.github/dependabot.yml +104 -0
  35. package/templates/.github/workflows/ci.yml +156 -0
  36. package/templates/.husky/commit-msg +1 -0
  37. package/templates/.husky/pre-commit +2 -0
  38. package/templates/.nvmrc +1 -0
  39. package/templates/CLAUDE.md +4 -2
  40. package/templates/commitlint.config.js +1 -0
  41. package/templates/components.json +21 -0
  42. package/templates/docs/API_REFERENCE.md +0 -1
  43. package/templates/docs/INTERNATIONALIZATION.md +26 -0
  44. package/templates/e2e/fixtures/index.ts +10 -0
  45. package/templates/e2e/tests/home.spec.ts +42 -0
  46. package/templates/e2e/tests/language.spec.ts +42 -0
  47. package/templates/e2e/tests/navigation.spec.ts +18 -0
  48. package/templates/e2e/tests/theme.spec.ts +35 -0
  49. package/templates/eslint.config.js +42 -0
  50. package/templates/gitignore +33 -0
  51. package/templates/index.html +13 -0
  52. package/templates/lighthouse-budget.json +17 -0
  53. package/templates/lighthouserc.json +23 -0
  54. package/templates/lingui.config.js +18 -0
  55. package/templates/package.json +125 -0
  56. package/templates/playwright.config.ts +30 -0
  57. package/templates/prettier.config.js +1 -0
  58. package/templates/public/favicon.svg +4 -0
  59. package/templates/src/components/shared/RegisterForm/RegisterForm.tsx +91 -0
  60. package/templates/src/components/shared/RegisterForm/index.ts +1 -0
  61. package/templates/src/components/shared/index.ts +1 -0
  62. package/templates/src/components/ui/card.tsx +70 -0
  63. package/templates/src/components/ui/input.tsx +19 -0
  64. package/templates/src/components/ui/label.tsx +19 -0
  65. package/templates/src/hooks/index.ts +1 -1
  66. package/templates/src/hooks/useRegisterForm.ts +36 -0
  67. package/templates/src/lib/index.ts +1 -11
  68. package/templates/src/lib/validations.ts +6 -13
  69. package/templates/src/pages/Home.tsx +29 -10
  70. package/templates/tests/unit/components/RegisterForm.test.tsx +105 -0
  71. package/templates/tests/unit/hooks/useRegisterForm.test.tsx +153 -0
  72. package/templates/tests/unit/lib/validations.test.ts +22 -33
  73. package/templates/tests/unit/stores/preferencesStore.test.ts +81 -0
  74. package/templates/tsconfig.app.json +10 -0
  75. package/templates/tsconfig.json +11 -0
  76. package/templates/tsconfig.node.json +4 -0
  77. package/templates/vite.config.ts +54 -0
  78. package/templates/vitest.config.ts +38 -0
  79. package/templates/src/hooks/useContactForm.ts +0 -33
  80. package/templates/src/lib/constants.ts +0 -8
  81. package/templates/src/lib/format.ts +0 -119
  82. package/templates/tests/unit/hooks/useContactForm.test.ts +0 -60
  83. package/templates/tests/unit/lib/format.test.ts +0 -100
package/README.md CHANGED
@@ -42,7 +42,7 @@ Add to your MCP client config:
42
42
  "mcpServers": {
43
43
  "react-spa-scaffold": {
44
44
  "command": "npx",
45
- "args": ["@react-spa-scaffold/mcp"]
45
+ "args": ["-y", "@react-spa-scaffold/mcp@latest"]
46
46
  }
47
47
  }
48
48
  }
@@ -50,9 +50,18 @@ Add to your MCP client config:
50
50
 
51
51
  | Client | Config Location |
52
52
  | -------------- | ----------------------------------------------------------------- |
53
+ | Claude Code | `.mcp.json` (project) or `~/.claude/settings.json` (global) |
53
54
  | Claude Desktop | `~/Library/Application Support/Claude/claude_desktop_config.json` |
54
55
  | VS Code | `.vscode/mcp.json` |
55
- | Claude Code | `.claude/settings.json` |
56
+
57
+ **Quick Start (Claude Code):**
58
+
59
+ ```bash
60
+ mkdir my-app && cd my-app
61
+ echo '{"mcpServers":{"react-spa-scaffold":{"command":"npx","args":["-y","@react-spa-scaffold/mcp@latest"]}}}' > .mcp.json
62
+ ```
63
+
64
+ Open in Claude Code and start scaffolding.
56
65
 
57
66
  <details>
58
67
  <summary>Local Development Setup</summary>
@@ -94,20 +103,23 @@ Or point directly to the built file:
94
103
 
95
104
  ## Available Features
96
105
 
97
- 10 feature modules that can be combined:
98
-
99
- | Feature | Description | Required |
100
- | ---------- | --------------------------------------------- | -------- |
101
- | `core` | React 19 + TypeScript + Vite 7 + Tailwind CSS | Always |
102
- | `routing` | React Router 7 with lazy loading | Optional |
103
- | `ui` | Shadcn/UI + icons + theming + toasts | Optional |
104
- | `forms` | React Hook Form + Zod validation | Optional |
105
- | `state` | Zustand with persistence | Optional |
106
- | `api` | TanStack Query + API client | Optional |
107
- | `i18n` | LinguiJS internationalization | Optional |
108
- | `testing` | Vitest + Playwright + MSW | Optional |
109
- | `devtools` | ESLint + Prettier + Husky | Optional |
110
- | `ci` | GitHub Actions + Lighthouse | Optional |
106
+ 13 feature modules that can be combined:
107
+
108
+ | Feature | Description | Required |
109
+ | --------------- | --------------------------------------------- | -------- |
110
+ | `core` | React 19 + TypeScript + Vite 7 + Tailwind CSS | Always |
111
+ | `mobile` | Responsive design utilities + viewport hooks | Optional |
112
+ | `routing` | React Router 7 with lazy loading | Optional |
113
+ | `ui` | Shadcn/UI + icons + animations + toasts | Optional |
114
+ | `theming` | Light/dark/system theme (requires state) | Optional |
115
+ | `forms` | React Hook Form + Zod validation | Optional |
116
+ | `state` | Zustand with persistence + theme state | Optional |
117
+ | `api` | TanStack Query + API client | Optional |
118
+ | `i18n` | LinguiJS internationalization | Optional |
119
+ | `testing` | Vitest + Playwright + MSW | Optional |
120
+ | `devtools` | ESLint + Prettier + Husky | Optional |
121
+ | `ci` | GitHub Actions + Lighthouse | Optional |
122
+ | `observability` | Sentry error tracking | Optional |
111
123
 
112
124
  ## Tools
113
125
 
@@ -156,8 +168,10 @@ const result = await client.callTool('get_example', {
156
168
  | API | `api-client` |
157
169
  | Testing | `test-component`, `test-hook`, `test-store`, `msw-handler` |
158
170
  | i18n | `trans-component`, `t-function`, `use-language-hook` |
159
- | Utilities | `zod-schema`, `storage-utility`, `format-utility` |
160
- | UI | `theme-toggle`, `seo-component` |
171
+ | Utilities | `zod-schema`, `storage-utility` |
172
+ | Mobile | `mobile-context`, `use-media-query`, `use-touch-sizes` |
173
+ | UI | `seo-component` |
174
+ | Theming | `theme-toggle` |
161
175
 
162
176
  <details>
163
177
  <summary>Full Pattern Reference</summary>
@@ -210,13 +224,21 @@ const result = await client.callTool('get_example', {
210
224
 
211
225
  - `zod-schema` — Validation schema
212
226
  - `storage-utility` — localStorage utilities
213
- - `format-utility` — Formatting utilities
227
+
228
+ **Mobile:**
229
+
230
+ - `mobile-context` — Viewport detection context
231
+ - `use-media-query` — Media query hook with breakpoints
232
+ - `use-touch-sizes` — Touch-aware sizing hook
214
233
 
215
234
  **UI:**
216
235
 
217
- - `theme-toggle` — Theme toggle component
218
236
  - `seo-component` — SEO meta tags
219
237
 
238
+ **Theming:**
239
+
240
+ - `theme-toggle` — Theme toggle component
241
+
220
242
  </details>
221
243
 
222
244
  ## Resources
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/features/registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAW,eAAe,EAAE,MAAM,YAAY,CAAC;AAmgB3D,eAAO,MAAM,QAAQ,EAAE,eAatB,CAAC;AAEF,4BAA4B;AAC5B,eAAO,MAAM,WAAW,EAA4B,CAAC,MAAM,OAAO,QAAQ,CAAC,EAAE,CAAC;AAE9E,mDAAmD;AACnD,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/features/registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAW,eAAe,EAAE,MAAM,YAAY,CAAC;AAsiB3D,eAAO,MAAM,QAAQ,EAAE,eActB,CAAC;AAEF,4BAA4B;AAC5B,eAAO,MAAM,WAAW,EAA4B,CAAC,MAAM,OAAO,QAAQ,CAAC,EAAE,CAAC;AAE9E,mDAAmD;AACnD,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -15,11 +15,10 @@ const core = {
15
15
  'Tailwind CSS v4 with Vite plugin',
16
16
  'Inter variable font (@fontsource-variable/inter)',
17
17
  'Environment validation with Zod (src/lib/env.ts)',
18
- 'Format utilities - date, number, currency, bytes (src/lib/format.ts)',
19
18
  'cn() class merge utility (clsx + tailwind-merge)',
20
19
  'Basic SEO component (React 19 native head hoisting)',
21
20
  'App configuration (src/lib/config.ts)',
22
- 'Constants and type definitions',
21
+ 'Type definitions',
23
22
  'ErrorBoundary component with reset functionality',
24
23
  ],
25
24
  dependencies: {
@@ -47,9 +46,7 @@ const core = {
47
46
  'src/index.css',
48
47
  'src/vite-env.d.ts',
49
48
  'src/lib/config.ts',
50
- 'src/lib/constants.ts',
51
49
  'src/lib/env.ts',
52
- 'src/lib/format.ts',
53
50
  'src/lib/utils.ts',
54
51
  'src/lib/index.ts',
55
52
  'src/types/index.ts',
@@ -65,16 +62,24 @@ const core = {
65
62
  'tsconfig.app.json',
66
63
  'tsconfig.node.json',
67
64
  '.env.example',
65
+ '.gitignore',
68
66
  'public/favicon.svg',
69
67
  ],
70
- patterns: ['component-shared', 'hook-effect', 'error-boundary'],
68
+ patterns: ['component-shared', 'hook-effect', 'error-boundary', 'seo-component'],
71
69
  scripts: {
72
70
  dev: 'vite',
73
71
  build: 'tsc -b && vite build',
74
72
  preview: 'vite preview',
75
73
  typecheck: 'tsc --noEmit',
76
74
  },
77
- configFiles: ['vite.config.ts', 'tsconfig.json', 'tsconfig.app.json', 'tsconfig.node.json'],
75
+ configFiles: [
76
+ 'vite.config.ts',
77
+ 'tsconfig.json',
78
+ 'tsconfig.app.json',
79
+ 'tsconfig.node.json',
80
+ '.gitignore',
81
+ 'src/index.css',
82
+ ],
78
83
  };
79
84
  // ═══════════════════════════════════════════════════════════════════════════
80
85
  // MOBILE FEATURE
@@ -108,7 +113,7 @@ const routing = {
108
113
  includes: [
109
114
  'React Router 7',
110
115
  'Lazy-loaded pages with React.lazy()',
111
- 'Route constants with TypeScript types (src/lib/routes.ts)',
116
+ 'Route constants with TypeScript types (generated based on features)',
112
117
  '404 Not Found page',
113
118
  'App.tsx with Suspense fallback',
114
119
  'PageLoading component for transitions',
@@ -118,7 +123,7 @@ const routing = {
118
123
  },
119
124
  devDependencies: {},
120
125
  files: [
121
- 'src/lib/routes.ts',
126
+ // routes.ts is generated dynamically (see routesTs in scaffold output)
122
127
  'src/pages/Home.tsx',
123
128
  'src/pages/NotFound.tsx',
124
129
  'src/pages/index.ts',
@@ -133,7 +138,7 @@ const routing = {
133
138
  // ═══════════════════════════════════════════════════════════════════════════
134
139
  const ui = {
135
140
  name: 'UI Components',
136
- description: 'Shadcn/UI + icons + animations + toasts + theming',
141
+ description: 'Shadcn/UI + icons + animations + toasts',
137
142
  required: false,
138
143
  includes: [
139
144
  'Shadcn/UI component system (radix-nova style)',
@@ -146,8 +151,6 @@ const ui = {
146
151
  'DropdownMenu component',
147
152
  'Loading, Skeleton, Spinner components',
148
153
  'VisuallyHidden and SkipLink (accessibility)',
149
- 'Theme toggle (light/dark/system)',
150
- 'useThemeEffect hook',
151
154
  'components.json for shadcn CLI',
152
155
  ],
153
156
  dependencies: {
@@ -169,14 +172,11 @@ const ui = {
169
172
  'src/components/ui/spinner.tsx',
170
173
  'src/components/ui/sonner.tsx',
171
174
  'src/components/ui/visually-hidden.tsx',
172
- 'src/components/shared/ThemeToggle/ThemeToggle.tsx',
173
- 'src/components/shared/ThemeToggle/index.ts',
174
175
  'src/components/layout/Header.tsx',
175
176
  'src/components/layout/index.ts',
176
- 'src/hooks/useThemeEffect.ts',
177
177
  'components.json',
178
178
  ],
179
- patterns: ['component-ui', 'button-variants', 'forward-ref-component', 'theme-toggle'],
179
+ patterns: ['component-ui', 'button-variants', 'forward-ref-component'],
180
180
  scripts: {},
181
181
  configFiles: ['components.json'],
182
182
  };
@@ -185,16 +185,15 @@ const ui = {
185
185
  // ═══════════════════════════════════════════════════════════════════════════
186
186
  const forms = {
187
187
  name: 'Form Handling',
188
- description: 'React Hook Form + Zod validation + error components',
188
+ description: 'React Hook Form + Zod validation + working demo form',
189
189
  required: false,
190
190
  includes: [
191
- 'React Hook Form',
192
- 'Zod schema validation',
193
- '@hookform/resolvers for Zod integration',
191
+ 'React Hook Form with Zod validation',
192
+ '@hookform/resolvers for schema integration',
193
+ 'RegisterForm component with validation demo (displayed on HomePage)',
194
194
  'Form error components (FieldErrorMessage, FormErrorSummary, RootFormError)',
195
- 'Example useContactForm hook',
196
- 'Example validation schemas (contact, register)',
197
- 'Type-safe form data inference',
195
+ 'useRegisterForm custom hook pattern',
196
+ 'Zod schema with refine() for cross-field validation',
198
197
  ],
199
198
  dependencies: {
200
199
  '@hookform/resolvers': '^5.0.1',
@@ -202,8 +201,17 @@ const forms = {
202
201
  // zod already in core
203
202
  },
204
203
  devDependencies: {},
205
- files: ['src/lib/validations.ts', 'src/hooks/useContactForm.ts', 'src/components/ui/form-error.tsx'],
206
- patterns: ['zod-schema', 'use-form-hook', 'form-error-component'],
204
+ files: [
205
+ 'src/lib/validations.ts',
206
+ 'src/hooks/useRegisterForm.ts',
207
+ 'src/components/ui/form-error.tsx',
208
+ 'src/components/ui/input.tsx',
209
+ 'src/components/ui/label.tsx',
210
+ 'src/components/ui/card.tsx',
211
+ 'src/components/shared/RegisterForm/RegisterForm.tsx',
212
+ 'src/components/shared/RegisterForm/index.ts',
213
+ ],
214
+ patterns: ['zod-schema', 'hook-form', 'form-error-component', 'register-form'],
207
215
  scripts: {},
208
216
  };
209
217
  // ═══════════════════════════════════════════════════════════════════════════
@@ -364,7 +372,7 @@ const testing = {
364
372
  e2e: 'playwright test',
365
373
  'e2e:ui': 'playwright test --ui',
366
374
  },
367
- configFiles: ['vitest.config.ts', 'playwright.config.ts'],
375
+ configFiles: ['vitest.config.ts', 'playwright.config.ts', 'src/test-setup.ts'],
368
376
  };
369
377
  // ═══════════════════════════════════════════════════════════════════════════
370
378
  // DEVELOPER TOOLING FEATURE
@@ -487,6 +495,31 @@ const observability = {
487
495
  },
488
496
  };
489
497
  // ═══════════════════════════════════════════════════════════════════════════
498
+ // THEMING FEATURE
499
+ // ═══════════════════════════════════════════════════════════════════════════
500
+ const theming = {
501
+ name: 'Theming',
502
+ description: 'Light/dark/system theme toggle with CSS variables (requires state feature)',
503
+ required: false,
504
+ includes: [
505
+ 'Light/dark/system theme modes',
506
+ 'useThemeEffect hook (applies .dark class to document)',
507
+ 'ThemeToggle component',
508
+ 'System preference detection (prefers-color-scheme)',
509
+ 'Zustand persistence via preferencesStore',
510
+ 'Multi-tab sync via storage events',
511
+ ],
512
+ dependencies: {},
513
+ devDependencies: {},
514
+ files: [
515
+ 'src/hooks/useThemeEffect.ts',
516
+ 'src/components/shared/ThemeToggle/ThemeToggle.tsx',
517
+ 'src/components/shared/ThemeToggle/index.ts',
518
+ ],
519
+ patterns: ['theme-toggle', 'hook-effect'],
520
+ scripts: {},
521
+ };
522
+ // ═══════════════════════════════════════════════════════════════════════════
490
523
  // FEATURE REGISTRY EXPORT
491
524
  // ═══════════════════════════════════════════════════════════════════════════
492
525
  export const FEATURES = {
@@ -502,6 +535,7 @@ export const FEATURES = {
502
535
  devtools,
503
536
  ci,
504
537
  observability,
538
+ theming,
505
539
  };
506
540
  /** All valid feature IDs */
507
541
  export const FEATURE_IDS = Object.keys(FEATURES);
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/features/registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,8EAA8E;AAC9E,iCAAiC;AACjC,8EAA8E;AAE9E,MAAM,IAAI,GAAY;IACpB,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,kDAAkD;IAC/D,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE;QACR,mCAAmC;QACnC,qBAAqB;QACrB,kCAAkC;QAClC,kDAAkD;QAClD,kDAAkD;QAClD,sEAAsE;QACtE,kDAAkD;QAClD,qDAAqD;QACrD,uCAAuC;QACvC,gCAAgC;QAChC,kDAAkD;KACnD;IACD,YAAY,EAAE;QACZ,4BAA4B,EAAE,QAAQ;QACtC,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,SAAS;QACtB,gBAAgB,EAAE,QAAQ;QAC1B,GAAG,EAAE,UAAU;KAChB;IACD,eAAe,EAAE;QACf,mBAAmB,EAAE,SAAS;QAC9B,aAAa,EAAE,UAAU;QACzB,cAAc,EAAE,SAAS;QACzB,kBAAkB,EAAE,SAAS;QAC7B,sBAAsB,EAAE,QAAQ;QAChC,8BAA8B,EAAE,eAAe,CAAC,8BAA8B,CAAC;QAC/E,WAAW,EAAE,SAAS;QACtB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,QAAQ;KACf;IACD,KAAK,EAAE;QACL,cAAc;QACd,aAAa;QACb,eAAe;QACf,mBAAmB;QACnB,mBAAmB;QACnB,sBAAsB;QACtB,gBAAgB;QAChB,mBAAmB;QACnB,kBAAkB;QAClB,kBAAkB;QAClB,oBAAoB;QACpB,oBAAoB;QACpB,mCAAmC;QACnC,oCAAoC;QACpC,uDAAuD;QACvD,8CAA8C;QAC9C,gCAAgC;QAChC,YAAY;QACZ,gBAAgB;QAChB,eAAe;QACf,mBAAmB;QACnB,oBAAoB;QACpB,cAAc;QACd,oBAAoB;KACrB;IACD,QAAQ,EAAE,CAAC,kBAAkB,EAAE,aAAa,EAAE,gBAAgB,CAAC;IAC/D,OAAO,EAAE;QACP,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,sBAAsB;QAC7B,OAAO,EAAE,cAAc;QACvB,SAAS,EAAE,cAAc;KAC1B;IACD,WAAW,EAAE,CAAC,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAAE,oBAAoB,CAAC;CAC5F,CAAC;AAEF,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E,MAAM,MAAM,GAAY;IACtB,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,0FAA0F;IACvG,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE;QACR,+CAA+C;QAC/C,8DAA8D;QAC9D,gEAAgE;QAChE,gDAAgD;QAChD,qDAAqD;QACrD,iDAAiD;QACjD,4CAA4C;KAC7C;IACD,YAAY,EAAE,EAAE;IAChB,eAAe,EAAE,EAAE;IACnB,KAAK,EAAE,CAAC,gCAAgC,EAAE,4BAA4B,EAAE,4BAA4B,CAAC;IACrG,QAAQ,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,CAAC;IAClE,OAAO,EAAE,EAAE;CACZ,CAAC;AAEF,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,MAAM,OAAO,GAAY;IACvB,IAAI,EAAE,SAAS;IACf,WAAW,EAAE,sDAAsD;IACnE,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE;QACR,gBAAgB;QAChB,qCAAqC;QACrC,2DAA2D;QAC3D,oBAAoB;QACpB,gCAAgC;QAChC,uCAAuC;KACxC;IACD,YAAY,EAAE;QACZ,cAAc,EAAE,SAAS;KAC1B;IACD,eAAe,EAAE,EAAE;IACnB,KAAK,EAAE;QACL,mBAAmB;QACnB,oBAAoB;QACpB,wBAAwB;QACxB,oBAAoB;QACpB,+BAA+B;QAC/B,uCAAuC;KACxC;IACD,QAAQ,EAAE,CAAC,WAAW,EAAE,iBAAiB,EAAE,gBAAgB,CAAC;IAC5D,OAAO,EAAE,EAAE;CACZ,CAAC;AAEF,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E,MAAM,EAAE,GAAY;IAClB,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,mDAAmD;IAChE,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE;QACR,+CAA+C;QAC/C,qBAAqB;QACrB,6CAA6C;QAC7C,oBAAoB;QACpB,+BAA+B;QAC/B,4BAA4B;QAC5B,4DAA4D;QAC5D,wBAAwB;QACxB,uCAAuC;QACvC,6CAA6C;QAC7C,kCAAkC;QAClC,qBAAqB;QACrB,gCAAgC;KACjC;IACD,YAAY,EAAE;QACZ,sBAAsB,EAAE,QAAQ;QAChC,0BAA0B,EAAE,QAAQ;QACpC,cAAc,EAAE,UAAU;QAC1B,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,QAAQ;QAChB,gBAAgB,EAAE,QAAQ;KAC3B;IACD,eAAe,EAAE;QACf,MAAM,EAAE,QAAQ;KACjB;IACD,KAAK,EAAE;QACL,8BAA8B;QAC9B,qCAAqC;QACrC,+BAA+B;QAC/B,gCAAgC;QAChC,+BAA+B;QAC/B,8BAA8B;QAC9B,uCAAuC;QACvC,mDAAmD;QACnD,4CAA4C;QAC5C,kCAAkC;QAClC,gCAAgC;QAChC,6BAA6B;QAC7B,iBAAiB;KAClB;IACD,QAAQ,EAAE,CAAC,cAAc,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,cAAc,CAAC;IACtF,OAAO,EAAE,EAAE;IACX,WAAW,EAAE,CAAC,iBAAiB,CAAC;CACjC,CAAC;AAEF,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E,MAAM,KAAK,GAAY;IACrB,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,qDAAqD;IAClE,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE;QACR,iBAAiB;QACjB,uBAAuB;QACvB,yCAAyC;QACzC,4EAA4E;QAC5E,6BAA6B;QAC7B,gDAAgD;QAChD,+BAA+B;KAChC;IACD,YAAY,EAAE;QACZ,qBAAqB,EAAE,QAAQ;QAC/B,iBAAiB,EAAE,SAAS;QAC5B,sBAAsB;KACvB;IACD,eAAe,EAAE,EAAE;IACnB,KAAK,EAAE,CAAC,wBAAwB,EAAE,6BAA6B,EAAE,kCAAkC,CAAC;IACpG,QAAQ,EAAE,CAAC,YAAY,EAAE,eAAe,EAAE,sBAAsB,CAAC;IACjE,OAAO,EAAE,EAAE;CACZ,CAAC;AAEF,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E,MAAM,KAAK,GAAY;IACrB,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,wDAAwD;IACrE,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE;QACR,eAAe;QACf,mCAAmC;QACnC,qBAAqB;QACrB,8CAA8C;QAC9C,0CAA0C;QAC1C,uBAAuB;QACvB,mCAAmC;QACnC,2BAA2B;KAC5B;IACD,YAAY,EAAE;QACZ,OAAO,EAAE,QAAQ;KAClB;IACD,eAAe,EAAE,EAAE;IACnB,KAAK,EAAE;QACL,gCAAgC;QAChC,qBAAqB;QACrB,oBAAoB;QACpB,wBAAwB;QACxB,0BAA0B;KAC3B;IACD,QAAQ,EAAE,CAAC,eAAe,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,iBAAiB,CAAC;IACrF,OAAO,EAAE,EAAE;CACZ,CAAC;AAEF,8EAA8E;AAC9E,cAAc;AACd,8EAA8E;AAE9E,MAAM,GAAG,GAAY;IACnB,IAAI,EAAE,KAAK;IACX,WAAW,EAAE,mCAAmC;IAChD,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE;QACR,mBAAmB;QACnB,kEAAkE;QAClE,2DAA2D;QAC3D,2CAA2C;QAC3C,0BAA0B;QAC1B,8BAA8B;QAC9B,2CAA2C;KAC5C;IACD,YAAY,EAAE;QACZ,uBAAuB,EAAE,SAAS;KACnC;IACD,eAAe,EAAE,EAAE;IACnB,KAAK,EAAE,CAAC,gBAAgB,EAAE,+BAA+B,EAAE,8BAA8B,EAAE,kBAAkB,CAAC;IAC9G,QAAQ,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,YAAY,CAAC;IAC5D,OAAO,EAAE,EAAE;CACZ,CAAC;AAEF,8EAA8E;AAC9E,+BAA+B;AAC/B,8EAA8E;AAE9E,MAAM,IAAI,GAAY;IACpB,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EAAE,sDAAsD;IACnE,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE;QACR,iCAAiC;QACjC,8BAA8B;QAC9B,oCAAoC;QACpC,qDAAqD;QACrD,4BAA4B;QAC5B,6BAA6B;QAC7B,gDAAgD;QAChD,0CAA0C;QAC1C,6BAA6B;QAC7B,kBAAkB;KACnB;IACD,YAAY,EAAE;QACZ,cAAc,EAAE,QAAQ;QACxB,eAAe,EAAE,QAAQ;KAC1B;IACD,eAAe,EAAE;QACf,mCAAmC,EAAE,QAAQ;QAC7C,aAAa,EAAE,QAAQ;QACvB,qBAAqB,EAAE,QAAQ;QAC/B,qBAAqB,EAAE,QAAQ;QAC/B,sBAAsB,EAAE,SAAS;KAClC;IACD,KAAK,EAAE;QACL,oBAAoB;QACpB,4BAA4B;QAC5B,yBAAyB;QACzB,mBAAmB;QACnB,mBAAmB;QACnB,mBAAmB;QACnB,mBAAmB;QACnB,0BAA0B;QAC1B,6DAA6D;QAC7D,iDAAiD;QACjD,kBAAkB;KACnB;IACD,QAAQ,EAAE,CAAC,iBAAiB,EAAE,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,CAAC;IACrF,OAAO,EAAE;QACP,cAAc,EAAE,gBAAgB;KACjC;CACF,CAAC;AAEF,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,MAAM,OAAO,GAAY;IACvB,IAAI,EAAE,SAAS;IACf,WAAW,EAAE,6CAA6C;IAC1D,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE;QACR,yBAAyB;QACzB,uBAAuB;QACvB,8CAA8C;QAC9C,uCAAuC;QACvC,2CAA2C;QAC3C,2CAA2C;QAC3C,iEAAiE;QACjE,mBAAmB;QACnB,wDAAwD;QACxD,gCAAgC;QAChC,6BAA6B;KAC9B;IACD,YAAY,EAAE,EAAE;IAChB,eAAe,EAAE;QACf,kBAAkB,EAAE,SAAS;QAC7B,2BAA2B,EAAE,QAAQ;QACrC,wBAAwB,EAAE,SAAS;QACnC,6BAA6B,EAAE,SAAS;QACxC,qBAAqB,EAAE,SAAS;QAChC,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,SAAS;QACd,MAAM,EAAE,SAAS;KAClB;IACD,KAAK,EAAE;QACL,mBAAmB;QACnB,mBAAmB;QACnB,wBAAwB;QACxB,mBAAmB;QACnB,6BAA6B;QAC7B,6BAA6B;QAC7B,6BAA6B;QAC7B,6BAA6B;QAC7B,mBAAmB;QACnB,oBAAoB;QACpB,aAAa;QACb,YAAY;QACZ,kBAAkB;QAClB,sBAAsB;KACvB;IACD,QAAQ,EAAE,CAAC,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,cAAc,CAAC;IACtG,OAAO,EAAE;QACP,IAAI,EAAE,YAAY;QAClB,YAAY,EAAE,QAAQ;QACtB,eAAe,EAAE,uBAAuB;QACxC,GAAG,EAAE,iBAAiB;QACtB,QAAQ,EAAE,sBAAsB;KACjC;IACD,WAAW,EAAE,CAAC,kBAAkB,EAAE,sBAAsB,CAAC;CAC1D,CAAC;AAEF,8EAA8E;AAC9E,4BAA4B;AAC5B,8EAA8E;AAE9E,MAAM,QAAQ,GAAY;IACxB,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,mFAAmF;IAChG,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE;QACR,mEAAmE;QACnE,4DAA4D;QAC5D,gDAAgD;QAChD,qCAAqC;QACrC,mCAAmC;QACnC,qBAAqB;QACrB,oCAAoC;QACpC,qCAAqC;QACrC,iCAAiC;QACjC,0CAA0C;QAC1C,6BAA6B;KAC9B;IACD,YAAY,EAAE,EAAE;IAChB,eAAe,EAAE;QACf,iCAAiC,EAAE,SAAS;QAC5C,YAAY,EAAE,SAAS;QACvB,mCAAmC,EAAE,eAAe,CAAC,mCAAmC,CAAC;QACzF,qCAAqC,EAAE,eAAe,CAAC,qCAAqC,CAAC;QAC7F,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,SAAS;QACjB,wBAAwB,EAAE,SAAS;QACnC,sBAAsB,EAAE,SAAS;QACjC,2BAA2B,EAAE,QAAQ;QACrC,6BAA6B,EAAE,SAAS;QACxC,KAAK,EAAE,QAAQ;QACf,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,QAAQ;QAClB,6BAA6B,EAAE,QAAQ;QACvC,mBAAmB,EAAE,SAAS;KAC/B;IACD,KAAK,EAAE;QACL,kBAAkB;QAClB,oBAAoB;QACpB,sBAAsB;QACtB,mBAAmB;QACnB,mBAAmB;QACnB,QAAQ;KACT;IACD,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAE;QACP,IAAI,EAAE,UAAU;QAChB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,oBAAoB;QAC5B,cAAc,EAAE,oBAAoB;QACpC,OAAO,EAAE,OAAO;KACjB;IACD,WAAW,EAAE,CAAC,kBAAkB,EAAE,oBAAoB,EAAE,sBAAsB,CAAC;CAChF,CAAC;AAEF,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E,MAAM,EAAE,GAAY;IAClB,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,0CAA0C;IACvD,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE;QACR,4BAA4B;QAC5B,8EAA8E;QAC9E,wCAAwC;QACxC,6CAA6C;QAC7C,aAAa;QACb,uDAAuD;QACvD,sCAAsC;QACtC,+BAA+B;KAChC;IACD,YAAY,EAAE,EAAE;IAChB,eAAe,EAAE,EAAE;IACnB,KAAK,EAAE;QACL,0BAA0B;QAC1B,4CAA4C;QAC5C,wBAAwB;QACxB,kCAAkC;QAClC,mBAAmB;QACnB,wBAAwB;KACzB;IACD,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAE,EAAE;IACX,WAAW,EAAE,CAAC,mBAAmB,EAAE,wBAAwB,CAAC;CAC7D,CAAC;AAEF,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E,MAAM,aAAa,GAAY;IAC7B,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,gFAAgF;IAC7F,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE;QACR,kCAAkC;QAClC,kDAAkD;QAClD,6BAA6B;QAC7B,4DAA4D;QAC5D,iDAAiD;QACjD,2CAA2C;QAC3C,sCAAsC;QACtC,gCAAgC;KACjC;IACD,YAAY,EAAE;QACZ,eAAe,EAAE,UAAU;KAC5B;IACD,eAAe,EAAE;QACf,qBAAqB,EAAE,QAAQ;KAChC;IACD,KAAK,EAAE,EAAE;IACT,QAAQ,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC;IAC3C,OAAO,EAAE,EAAE;IACX,OAAO,EAAE;QACP,OAAO,EAAE;YACP,WAAW,EAAE,kEAAkE;YAC/E,OAAO,EAAE,IAAI;SACd;KACF;CACF,CAAC;AAEF,8EAA8E;AAC9E,0BAA0B;AAC1B,8EAA8E;AAE9E,MAAM,CAAC,MAAM,QAAQ,GAAoB;IACvC,IAAI;IACJ,MAAM;IACN,OAAO;IACP,EAAE;IACF,KAAK;IACL,KAAK;IACL,GAAG;IACH,IAAI;IACJ,OAAO;IACP,QAAQ;IACR,EAAE;IACF,aAAa;CACd,CAAC;AAEF,4BAA4B;AAC5B,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAA8B,CAAC"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/features/registry.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,7 @@ export interface ScaffoldResult {
40
40
  claudeMd: string;
41
41
  viteEnvDts: string;
42
42
  envTs: string;
43
+ routesTs?: string;
43
44
  docs: Record<string, string>;
44
45
  }
45
46
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/features/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE;QACX,IAAI,EAAE,MAAM,CAAC;QACb,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACrC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACxC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACjC,CAAC;IACF,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/features/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE;QACX,IAAI,EAAE,MAAM,CAAC;QACb,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACrC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACxC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACjC,CAAC;IACF,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B"}
@@ -1,5 +1,5 @@
1
1
  {
2
- "@react-spa-scaffold/eslint-config": "^1.0.0",
2
+ "@react-spa-scaffold/eslint-config": "^1.1.0",
3
3
  "@react-spa-scaffold/prettier-config": "^1.0.0",
4
4
  "@react-spa-scaffold/tsconfig": "^1.0.0"
5
5
  }
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AA0DnE;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAoFrC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AA2DnE;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAoFrC"}
package/dist/server.js CHANGED
@@ -37,7 +37,8 @@ Usage:
37
37
 
38
38
  Tips:
39
39
  - Core feature is always included automatically
40
- - Features are independent - select only what you need
40
+ - Features are mostly independent - select only what you need
41
+ - Theming feature automatically includes state (requires Zustand)
41
42
  - Check docs://conventions before generating code
42
43
  `.trim();
43
44
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EACL,WAAW,EACX,yBAAyB,EACzB,WAAW,EACX,iBAAiB,EACjB,yBAAyB,EACzB,UAAU,EACV,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC7G,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,SAAS,YAAY,CAAC,IAAa;IACjC,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;KAC1E,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,OAAe;IACpC,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QACnD,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;CAa3B,CAAC,IAAI,EAAE,CAAC;AAET;;GAEG;AACH,MAAM,UAAU,YAAY;IAC1B,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB;QACE,IAAI,EAAE,wBAAwB;QAC9B,OAAO,EAAE,OAAO;KACjB,EACD;QACE,YAAY,EAAE;YACZ,KAAK,EAAE,EAAE;YACT,SAAS,EAAE,EAAE;SACd;QACD,YAAY,EAAE,mBAAmB;KAClC,CACF,CAAC;IAEF,0EAA0E;IAC1E,QAAQ;IACR,0EAA0E;IAE1E,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QAC1D,OAAO;YACL,KAAK,EAAE,CAAC,yBAAyB,EAAE,yBAAyB,EAAE,wBAAwB,CAAC;SACxF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAChE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;QAEjD,IAAI,CAAC;YACH,QAAQ,IAAI,EAAE,CAAC;gBACb,KAAK,cAAc;oBACjB,OAAO,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC;gBAErC,KAAK,cAAc,CAAC,CAAC,CAAC;oBACpB,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;oBACjD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpB,OAAO,aAAa,CAAC,kBAAkB,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;oBACjE,CAAC;oBACD,OAAO,YAAY,CAAC,MAAM,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gBACtD,CAAC;gBAED,KAAK,aAAa,CAAC,CAAC,CAAC;oBACnB,MAAM,MAAM,GAAG,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;oBAChD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpB,OAAO,aAAa,CAAC,kBAAkB,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;oBACjE,CAAC;oBACD,OAAO,YAAY,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gBACrD,CAAC;gBAED;oBACE,OAAO,aAAa,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,OAAO,aAAa,CAAC,mBAAmB,IAAI,KAAK,OAAO,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,0EAA0E;IAC1E,YAAY;IACZ,0EAA0E;IAE1E,MAAM,CAAC,iBAAiB,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QAC9D,OAAO,EAAE,SAAS,EAAE,yBAAyB,EAAE,EAAE,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,iBAAiB,CAAC,yBAAyB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACpE,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;QAE/B,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;SAC9D,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -7,12 +7,10 @@
7
7
  */
8
8
  import { z } from 'zod';
9
9
  export declare const getExampleSchema: z.ZodObject<{
10
- pattern: z.ZodEnum<[string, ...string[]]>;
11
- }, "strip", z.ZodTypeAny, {
12
- pattern: string;
13
- }, {
14
- pattern: string;
15
- }>;
10
+ pattern: z.ZodEnum<{
11
+ [x: string]: string;
12
+ }>;
13
+ }, z.core.$strip>;
16
14
  export type GetExampleInput = z.infer<typeof getExampleSchema>;
17
15
  export declare function getExample(input: GetExampleInput): Promise<{
18
16
  error: string;
@@ -1 +1 @@
1
- {"version":3,"file":"get-example.d.ts","sourceRoot":"","sources":["../../src/tools/get-example.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,gBAAgB;;;;;;EAI3B,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE/D,wBAAsB,UAAU,CAAC,KAAK,EAAE,eAAe;;;;;;;;;;;;;;;;;;GAoBtD;AAuBD,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;CAoCpC,CAAC"}
1
+ {"version":3,"file":"get-example.d.ts","sourceRoot":"","sources":["../../src/tools/get-example.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,gBAAgB;;;;iBAI3B,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE/D,wBAAsB,UAAU,CAAC,KAAK,EAAE,eAAe;;;;;;;;;;;;;;;;;;GAoBtD;AAuBD,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;CAoCpC,CAAC"}
@@ -10,7 +10,7 @@ import { getCodeExample, getAvailablePatterns } from '../utils/index.js';
10
10
  const AVAILABLE_PATTERNS = getAvailablePatterns();
11
11
  export const getExampleSchema = z.object({
12
12
  pattern: z.enum(AVAILABLE_PATTERNS, {
13
- errorMap: () => ({ message: `Invalid pattern. Available: ${AVAILABLE_PATTERNS.join(', ')}` }),
13
+ error: `Invalid pattern. Available: ${AVAILABLE_PATTERNS.join(', ')}`,
14
14
  }),
15
15
  });
16
16
  export async function getExample(input) {
@@ -67,7 +67,7 @@ Available patterns:
67
67
  - Tests: test-component, test-hook, test-store, msw-handler
68
68
  - Validation: zod-schema, form-error-component
69
69
  - i18n: trans-component, t-function, language-switcher
70
- - Utils: storage-utility, format-utility
70
+ - Utils: storage-utility
71
71
  - Theme: theme-toggle
72
72
  - SEO: seo-component
73
73
 
@@ -1 +1 @@
1
- {"version":3,"file":"get-example.js","sourceRoot":"","sources":["../../src/tools/get-example.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzE,MAAM,kBAAkB,GAAG,oBAAoB,EAA2B,CAAC;AAE3E,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,EAAE;QAClC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,+BAA+B,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;KAC9F,CAAC;CACH,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,KAAsB;IACrD,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAE1B,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,CAAC;IAE9C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,KAAK,EAAE,uCAAuC,OAAO,EAAE;YACvD,IAAI,EAAE,gEAAgE;SACvE,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK,EAAE,iBAAiB,CAAC,OAAO,CAAC;KAClC,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAe;IACxC,MAAM,KAAK,GAA2B;QACpC,cAAc,EAAE,sDAAsD;QACtE,kBAAkB,EAAE,oEAAoE;QACxF,kBAAkB,EAAE,iCAAiC;QACrD,YAAY,EAAE,2CAA2C;QACzD,YAAY,EAAE,mDAAmD;QACjE,WAAW,EAAE,0DAA0D;QACvE,aAAa,EAAE,uCAAuC;QACtD,eAAe,EAAE,8CAA8C;QAC/D,gBAAgB,EAAE,+CAA+C;QACjE,kBAAkB,EAAE,wDAAwD;QAC5E,gBAAgB,EAAE,yDAAyD;QAC3E,WAAW,EAAE,4BAA4B;QACzC,aAAa,EAAE,8BAA8B;QAC7C,YAAY,EAAE,+BAA+B;KAC9C,CAAC;IAEF,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,2CAA2C,CAAC;AACvE,CAAC;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;sCAsBuB;IACpC,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,OAAO,EAAE;gBACP,IAAI,EAAE,QAAiB;gBACvB,WAAW,EAAE,iCAAiC;gBAC9C,IAAI,EAAE,kBAAkB;aACzB;SACF;QACD,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;CACF,CAAC"}
1
+ {"version":3,"file":"get-example.js","sourceRoot":"","sources":["../../src/tools/get-example.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzE,MAAM,kBAAkB,GAAG,oBAAoB,EAA2B,CAAC;AAE3E,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,EAAE;QAClC,KAAK,EAAE,+BAA+B,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;KACtE,CAAC;CACH,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,KAAsB;IACrD,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAE1B,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,CAAC;IAE9C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,KAAK,EAAE,uCAAuC,OAAO,EAAE;YACvD,IAAI,EAAE,gEAAgE;SACvE,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK,EAAE,iBAAiB,CAAC,OAAO,CAAC;KAClC,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAe;IACxC,MAAM,KAAK,GAA2B;QACpC,cAAc,EAAE,sDAAsD;QACtE,kBAAkB,EAAE,oEAAoE;QACxF,kBAAkB,EAAE,iCAAiC;QACrD,YAAY,EAAE,2CAA2C;QACzD,YAAY,EAAE,mDAAmD;QACjE,WAAW,EAAE,0DAA0D;QACvE,aAAa,EAAE,uCAAuC;QACtD,eAAe,EAAE,8CAA8C;QAC/D,gBAAgB,EAAE,+CAA+C;QACjE,kBAAkB,EAAE,wDAAwD;QAC5E,gBAAgB,EAAE,yDAAyD;QAC3E,WAAW,EAAE,4BAA4B;QACzC,aAAa,EAAE,8BAA8B;QAC7C,YAAY,EAAE,+BAA+B;KAC9C,CAAC;IAEF,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,2CAA2C,CAAC;AACvE,CAAC;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;sCAsBuB;IACpC,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,OAAO,EAAE;gBACP,IAAI,EAAE,QAAiB;gBACvB,WAAW,EAAE,iCAAiC;gBAC9C,IAAI,EAAE,kBAAkB;aACzB;SACF;QACD,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;CACF,CAAC"}
@@ -8,18 +8,10 @@
8
8
  import { z } from 'zod';
9
9
  import { type CodeExample } from '../utils/index.js';
10
10
  export declare const getScaffoldSchema: z.ZodObject<{
11
- features: z.ZodEffects<z.ZodArray<z.ZodString, "many">, string[], string[]>;
11
+ features: z.ZodArray<z.ZodString>;
12
12
  projectName: z.ZodOptional<z.ZodString>;
13
13
  includeExamples: z.ZodOptional<z.ZodBoolean>;
14
- }, "strip", z.ZodTypeAny, {
15
- features: string[];
16
- projectName?: string | undefined;
17
- includeExamples?: boolean | undefined;
18
- }, {
19
- features: string[];
20
- projectName?: string | undefined;
21
- includeExamples?: boolean | undefined;
22
- }>;
14
+ }, z.core.$strip>;
23
15
  export type GetScaffoldInput = z.infer<typeof getScaffoldSchema>;
24
16
  export declare function getScaffold(input: GetScaffoldInput): Promise<{
25
17
  projectName: string;
@@ -45,6 +37,7 @@ export declare function getScaffold(input: GetScaffoldInput): Promise<{
45
37
  claudeMd: string;
46
38
  viteEnvDts: string;
47
39
  envTs: string;
40
+ routesTs: string | undefined;
48
41
  docs: Record<string, string>;
49
42
  examples: Record<string, CodeExample[]> | undefined;
50
43
  instructions: string;
@@ -1 +1 @@
1
- {"version":3,"file":"get-scaffold.d.ts","sourceRoot":"","sources":["../../src/tools/get-scaffold.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAmE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEtH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;EAkB5B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEjE,wBAAsB,WAAW,CAAC,KAAK,EAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDxD;AA0CD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;CAyCrC,CAAC"}
1
+ {"version":3,"file":"get-scaffold.d.ts","sourceRoot":"","sources":["../../src/tools/get-scaffold.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAmE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEtH,eAAO,MAAM,iBAAiB;;;;iBAuB5B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEjE,wBAAsB,WAAW,CAAC,KAAK,EAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDxD;AA2CD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;CAwDrC,CAAC"}
@@ -12,9 +12,17 @@ export const getScaffoldSchema = z.object({
12
12
  features: z
13
13
  .array(z.string())
14
14
  .max(15, 'Maximum 15 features allowed')
15
- .refine((features) => features.every((f) => f in FEATURES), (features) => ({
16
- message: `Invalid features: ${features.filter((f) => !(f in FEATURES)).join(', ')}. Valid: ${FEATURE_IDS.join(', ')}`,
17
- }))
15
+ .check((ctx) => {
16
+ const invalidFeatures = ctx.value.filter((f) => !(f in FEATURES));
17
+ if (invalidFeatures.length > 0) {
18
+ ctx.issues.push({
19
+ code: 'custom',
20
+ message: `Invalid features: ${invalidFeatures.join(', ')}. Valid: ${FEATURE_IDS.join(', ')}`,
21
+ input: ctx.value,
22
+ path: [],
23
+ });
24
+ }
25
+ })
18
26
  .describe('List of feature IDs to include (e.g., ["routing", "ui", "forms"])'),
19
27
  projectName: z
20
28
  .string()
@@ -64,12 +72,14 @@ export async function getScaffold(input) {
64
72
  claudeMd: scaffold.claudeMd,
65
73
  viteEnvDts: scaffold.viteEnvDts,
66
74
  envTs: scaffold.envTs,
75
+ routesTs: scaffold.routesTs, // Only present when routing feature is selected
67
76
  docs: scaffold.docs,
68
77
  examples,
69
- instructions: generateInstructions(projectName, scaffold.setupCommands),
78
+ instructions: generateInstructions(projectName, scaffold.setupCommands, resolvedFeatures),
70
79
  };
71
80
  }
72
- function generateInstructions(projectName, setupCommands) {
81
+ function generateInstructions(projectName, setupCommands, features) {
82
+ const hasRouting = features.includes('routing');
73
83
  return `## Setup Instructions
74
84
 
75
85
  1. Create project directory:
@@ -84,29 +94,28 @@ function generateInstructions(projectName, setupCommands) {
84
94
  4. Create src/vite-env.d.ts using the provided viteEnvDts content
85
95
 
86
96
  5. Create src/lib/env.ts using the provided envTs content
97
+ ${hasRouting ? '\n6. Create src/lib/routes.ts using the provided routesTs content\n' : ''}
98
+ 7. Create CLAUDE.md using the provided claudeMd content
87
99
 
88
- 6. Create CLAUDE.md using the provided claudeMd content
89
-
90
- 7. Create docs/ directory with the provided docs content
100
+ 8. Create docs/ directory with the provided docs content
91
101
 
92
- 8. Run setup commands:
102
+ 9. Run setup commands:
93
103
  \`\`\`bash
94
104
  ${setupCommands.join('\n ')}
95
105
  \`\`\`
96
106
 
97
- 9. Start development:
107
+ 10. Start development:
98
108
  \`\`\`bash
99
109
  npm run dev
100
110
  \`\`\`
101
111
 
112
+ ## SEO Setup
113
+ - SEO component is always included (from core feature)
114
+
102
115
  ## Notes
103
116
  - Core feature is always included
104
- - Auto-included features are dependencies of selected features
105
117
  - Use get_example tool to get code patterns for each file type
106
- - CLAUDE.md content is dynamically generated based on selected features
107
- - vite-env.d.ts content is dynamically generated based on selected features
108
- - env.ts content is dynamically generated based on selected features
109
- - docs/ content is filtered based on selected features`;
118
+ - CLAUDE.md, vite-env.d.ts, env.ts content is dynamically generated based on selected features`;
110
119
  }
111
120
  export const getScaffoldToolDefinition = {
112
121
  name: 'get_scaffold',
@@ -119,17 +128,32 @@ Given a list of features, returns:
119
128
  - Config files needed
120
129
  - Documentation files (filtered by selected features)
121
130
  - Setup commands to run after creation
131
+ - Generated file contents (env.ts, routes.ts, etc.) based on selected features
122
132
 
123
133
  The AI agent should use this information to:
124
134
  1. Create the project directory
125
135
  2. Write package.json
126
- 3. Create all files using get_example for patterns
127
- 4. Create docs/ with provided documentation
128
- 5. Run setup commands
136
+ 3. Create generated files (viteEnvDts, envTs, routesTs) using provided content
137
+ 4. Create all other files using get_example for patterns
138
+ 5. Create docs/ with provided documentation
139
+ 6. Run setup commands
140
+
141
+ Feature dependencies (auto-included):
142
+ - theming → state (for Zustand persistence)
143
+
144
+ SEO Component (always included from core):
145
+ - Import in App.tsx: import { SEO } from '@/components/shared';
146
+ - Add <SEO description="..." /> in App.tsx for site-wide default meta tags
147
+ - Individual pages can override with page-specific SEO props
148
+ - Use get_example with pattern 'seo-component' for implementation details
149
+
150
+ When forms feature is selected:
151
+ - RegisterForm component is displayed on HomePage
152
+ - No additional routing required
129
153
 
130
154
  Example usage:
131
- - features: ["routing", "ui", "forms", "testing"]
132
- - This will auto-include: core, state (ui requires it)`,
155
+ - features: ["routing", "ui", "theming", "testing"]
156
+ - This will auto-include: core, state`,
133
157
  inputSchema: {
134
158
  type: 'object',
135
159
  properties: {
@@ -1 +1 @@
1
- {"version":3,"file":"get-scaffold.js","sourceRoot":"","sources":["../../src/tools/get-scaffold.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,0BAA0B,EAAE,kBAAkB,EAAoB,MAAM,mBAAmB,CAAC;AAEtH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,QAAQ,EAAE,CAAC;SACR,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,GAAG,CAAC,EAAE,EAAE,6BAA6B,CAAC;SACtC,MAAM,CACL,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,QAAQ,CAAC,EAClD,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACb,OAAO,EAAE,qBAAqB,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;KACtH,CAAC,CACH;SACA,QAAQ,CAAC,mEAAmE,CAAC;IAChF,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,GAAG,CAAC,EAAE,EAAE,uBAAuB,CAAC;SAChC,KAAK,CAAC,cAAc,EAAE,mEAAmE,CAAC;SAC1F,QAAQ,EAAE;SACV,QAAQ,CAAC,iDAAiD,CAAC;IAC9D,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iEAAiE,CAAC;CACpH,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAAuB;IACvD,MAAM,EAAE,QAAQ,EAAE,WAAW,GAAG,QAAQ,EAAE,eAAe,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC;IAE5E,uBAAuB;IACvB,MAAM,gBAAgB,GAAG,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IAE9D,sBAAsB;IACtB,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAE9D,wBAAwB;IACxB,MAAM,cAAc,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACjD,MAAM,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC7B,OAAO;YACL,EAAE;YACF,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,qBAAqB,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5C,eAAe,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvC,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,8BAA8B;IAC9B,IAAI,QAAmD,CAAC;IACxD,IAAI,eAAe,EAAE,CAAC;QACpB,QAAQ,GAAG,EAAE,CAAC;QACd,KAAK,MAAM,EAAE,IAAI,gBAAgB,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC7B,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,QAAQ,CAAC,EAAE,CAAC,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,WAAW;QACX,gBAAgB,EAAE,QAAQ;QAC1B,gBAAgB;QAChB,cAAc;QACd,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,aAAa,EAAE,QAAQ,CAAC,SAAS;QACjC,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,aAAa,EAAE,QAAQ,CAAC,aAAa;QACrC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,QAAQ;QACR,YAAY,EAAE,oBAAoB,CAAC,WAAW,EAAE,QAAQ,CAAC,aAAa,CAAC;KACxE,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,WAAmB,EAAE,aAAuB;IACxE,OAAO;;;;WAIE,WAAW,UAAU,WAAW;;;;;;;;;;;;;;;;;KAiBtC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;;;;;;;;;;;;;;;uDAeuB,CAAC;AACxD,CAAC;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;uDAmBwC;IACrD,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,QAAQ,EAAE;gBACR,IAAI,EAAE,OAAgB;gBACtB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE;gBAClC,WAAW,EAAE,gCAAgC;aAC9C;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAiB;gBACvB,WAAW,EAAE,0BAA0B;aACxC;YACD,eAAe,EAAE;gBACf,IAAI,EAAE,SAAkB;gBACxB,WAAW,EAAE,oCAAoC;aAClD;SACF;QACD,QAAQ,EAAE,CAAC,UAAU,CAAC;KACvB;CACF,CAAC"}
1
+ {"version":3,"file":"get-scaffold.js","sourceRoot":"","sources":["../../src/tools/get-scaffold.ts"],"names":[],"mappings":"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"}