@nextsparkjs/ai-workflow 0.1.0-beta.100

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 (272) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +115 -0
  3. package/claude/_docs/workflows-optimizations.md +359 -0
  4. package/claude/agents/api-tester.md +634 -0
  5. package/claude/agents/architecture-supervisor.md +1351 -0
  6. package/claude/agents/backend-developer.md +997 -0
  7. package/claude/agents/backend-validator.md +417 -0
  8. package/claude/agents/bdd-docs-writer.md +737 -0
  9. package/claude/agents/block-developer.md +677 -0
  10. package/claude/agents/code-reviewer.md +1432 -0
  11. package/claude/agents/db-developer.md +721 -0
  12. package/claude/agents/db-validator.md +407 -0
  13. package/claude/agents/demo-video-generator.md +493 -0
  14. package/claude/agents/documentation-writer.md +1268 -0
  15. package/claude/agents/frontend-developer.md +1234 -0
  16. package/claude/agents/frontend-validator.md +777 -0
  17. package/claude/agents/functional-validator.md +630 -0
  18. package/claude/agents/mock-analyst.md +387 -0
  19. package/claude/agents/product-manager.md +963 -0
  20. package/claude/agents/qa-automation.md +1762 -0
  21. package/claude/agents/release-manager.md +634 -0
  22. package/claude/agents/selectors-translator.md +262 -0
  23. package/claude/agents/unit-test-writer.md +785 -0
  24. package/claude/agents/visual-comparator.md +329 -0
  25. package/claude/agents/workflow-maintainer.md +352 -0
  26. package/claude/commands/do/README.md +88 -0
  27. package/claude/commands/do/create-api.md +64 -0
  28. package/claude/commands/do/create-entity.md +66 -0
  29. package/claude/commands/do/create-migration.md +64 -0
  30. package/claude/commands/do/create-plugin.md +56 -0
  31. package/claude/commands/do/create-theme.md +70 -0
  32. package/claude/commands/do/mock-data.md +67 -0
  33. package/claude/commands/do/reset-db.md +71 -0
  34. package/claude/commands/do/setup-scheduled-action.md +75 -0
  35. package/claude/commands/do/sync-code-review.md +117 -0
  36. package/claude/commands/do/update-selectors.md +112 -0
  37. package/claude/commands/do/use-skills.md +90 -0
  38. package/claude/commands/do/validate-blocks.md +69 -0
  39. package/claude/commands/how-to/README.md +261 -0
  40. package/claude/commands/how-to/add-metadata.md +692 -0
  41. package/claude/commands/how-to/add-taxonomies.md +806 -0
  42. package/claude/commands/how-to/add-translations.md +571 -0
  43. package/claude/commands/how-to/create-api.md +577 -0
  44. package/claude/commands/how-to/create-block.md +575 -0
  45. package/claude/commands/how-to/create-child-entities.md +771 -0
  46. package/claude/commands/how-to/create-entity.md +597 -0
  47. package/claude/commands/how-to/create-migrations.md +605 -0
  48. package/claude/commands/how-to/create-plugin.md +654 -0
  49. package/claude/commands/how-to/customize-app.md +481 -0
  50. package/claude/commands/how-to/customize-dashboard.md +553 -0
  51. package/claude/commands/how-to/customize-theme.md +438 -0
  52. package/claude/commands/how-to/define-features-flows.md +632 -0
  53. package/claude/commands/how-to/deploy.md +507 -0
  54. package/claude/commands/how-to/handle-file-uploads.md +746 -0
  55. package/claude/commands/how-to/implement-search.md +1001 -0
  56. package/claude/commands/how-to/install-plugins.md +352 -0
  57. package/claude/commands/how-to/manage-test-coverage.md +984 -0
  58. package/claude/commands/how-to/run-tests.md +400 -0
  59. package/claude/commands/how-to/set-app-languages.md +601 -0
  60. package/claude/commands/how-to/set-plans-and-permissions.md +575 -0
  61. package/claude/commands/how-to/set-scheduled-actions.md +527 -0
  62. package/claude/commands/how-to/set-user-roles-and-permissions.md +550 -0
  63. package/claude/commands/how-to/setup-authentication.md +388 -0
  64. package/claude/commands/how-to/setup-claude-code.md +440 -0
  65. package/claude/commands/how-to/setup-database.md +274 -0
  66. package/claude/commands/how-to/setup-email-providers.md +598 -0
  67. package/claude/commands/how-to/setup-mobile-dev.md +627 -0
  68. package/claude/commands/how-to/start.md +500 -0
  69. package/claude/commands/how-to/use-devtools.md +639 -0
  70. package/claude/commands/how-to/use-superadmin.md +622 -0
  71. package/claude/commands/session/README.md +193 -0
  72. package/claude/commands/session/block-create.md +190 -0
  73. package/claude/commands/session/block-list.md +203 -0
  74. package/claude/commands/session/block-update.md +192 -0
  75. package/claude/commands/session/block-validate.md +218 -0
  76. package/claude/commands/session/changelog.md +115 -0
  77. package/claude/commands/session/close.md +225 -0
  78. package/claude/commands/session/commit.md +174 -0
  79. package/claude/commands/session/db-entity.md +206 -0
  80. package/claude/commands/session/db-fix.md +212 -0
  81. package/claude/commands/session/db-sample.md +206 -0
  82. package/claude/commands/session/demo.md +178 -0
  83. package/claude/commands/session/doc-bdd.md +207 -0
  84. package/claude/commands/session/doc-feature.md +218 -0
  85. package/claude/commands/session/doc-read.md +225 -0
  86. package/claude/commands/session/execute.md +204 -0
  87. package/claude/commands/session/explain.md +202 -0
  88. package/claude/commands/session/fix-bug.md +210 -0
  89. package/claude/commands/session/fix-build.md +182 -0
  90. package/claude/commands/session/fix-test.md +189 -0
  91. package/claude/commands/session/pending.md +232 -0
  92. package/claude/commands/session/refine.md +188 -0
  93. package/claude/commands/session/resume.md +192 -0
  94. package/claude/commands/session/review.md +192 -0
  95. package/claude/commands/session/scope-change.md +181 -0
  96. package/claude/commands/session/start-blocks.md +347 -0
  97. package/claude/commands/session/start.md +604 -0
  98. package/claude/commands/session/status.md +169 -0
  99. package/claude/commands/session/test-fix.md +221 -0
  100. package/claude/commands/session/test-run.md +203 -0
  101. package/claude/commands/session/test-write.md +242 -0
  102. package/claude/commands/session/validate.md +162 -0
  103. package/claude/config/context.json +40 -0
  104. package/claude/config/github.json +69 -0
  105. package/claude/config/github.schema.json +106 -0
  106. package/claude/config/team.json +46 -0
  107. package/claude/config/team.schema.json +106 -0
  108. package/claude/config/workspace.json +43 -0
  109. package/claude/config/workspace.schema.json +75 -0
  110. package/claude/skills/README.md +228 -0
  111. package/claude/skills/accessibility/SKILL.md +573 -0
  112. package/claude/skills/api-bypass-layers/SKILL.md +550 -0
  113. package/claude/skills/asana-integration/SKILL.md +499 -0
  114. package/claude/skills/better-auth/SKILL.md +666 -0
  115. package/claude/skills/billing-subscriptions/SKILL.md +660 -0
  116. package/claude/skills/block-decision-matrix/SKILL.md +359 -0
  117. package/claude/skills/clickup-integration/SKILL.md +434 -0
  118. package/claude/skills/core-theme-responsibilities/SKILL.md +485 -0
  119. package/claude/skills/create-plugin/SKILL.md +425 -0
  120. package/claude/skills/create-theme/SKILL.md +331 -0
  121. package/claude/skills/cypress-api/SKILL.md +511 -0
  122. package/claude/skills/cypress-api/scripts/generate-api-controller.py +329 -0
  123. package/claude/skills/cypress-api/scripts/generate-api-test.py +930 -0
  124. package/claude/skills/cypress-e2e/SKILL.md +526 -0
  125. package/claude/skills/cypress-e2e/scripts/extract-selectors.py +383 -0
  126. package/claude/skills/cypress-e2e/scripts/generate-uat-test.py +788 -0
  127. package/claude/skills/cypress-selectors/SKILL.md +309 -0
  128. package/claude/skills/cypress-selectors/scripts/extract-missing.py +243 -0
  129. package/claude/skills/cypress-selectors/scripts/generate-block-selectors.py +283 -0
  130. package/claude/skills/cypress-selectors/scripts/validate-selectors.py +145 -0
  131. package/claude/skills/database-migrations/SKILL.md +335 -0
  132. package/claude/skills/database-migrations/scripts/generate-sample-data.py +284 -0
  133. package/claude/skills/database-migrations/scripts/validate-migration.py +323 -0
  134. package/claude/skills/design-system/SKILL.md +682 -0
  135. package/claude/skills/documentation/SKILL.md +540 -0
  136. package/claude/skills/entity-api/SKILL.md +482 -0
  137. package/claude/skills/entity-system/SKILL.md +635 -0
  138. package/claude/skills/entity-system/scripts/generate-child-migration.py +298 -0
  139. package/claude/skills/entity-system/scripts/generate-metas-migration.py +233 -0
  140. package/claude/skills/entity-system/scripts/generate-migration.py +382 -0
  141. package/claude/skills/entity-system/scripts/generate-sample-data.py +418 -0
  142. package/claude/skills/entity-system/scripts/scaffold-entity.py +661 -0
  143. package/claude/skills/github/SKILL.md +467 -0
  144. package/claude/skills/i18n-nextintl/SKILL.md +302 -0
  145. package/claude/skills/i18n-nextintl/scripts/add-translation.py +243 -0
  146. package/claude/skills/i18n-nextintl/scripts/extract-hardcoded.py +246 -0
  147. package/claude/skills/i18n-nextintl/scripts/validate-translations.py +260 -0
  148. package/claude/skills/impact-analysis/SKILL.md +203 -0
  149. package/claude/skills/jest-unit/SKILL.md +306 -0
  150. package/claude/skills/jest-unit/references/component-testing.md +371 -0
  151. package/claude/skills/jest-unit/references/mocking-patterns.md +380 -0
  152. package/claude/skills/jest-unit/references/service-hook-testing.md +454 -0
  153. package/claude/skills/jira-integration/SKILL.md +539 -0
  154. package/claude/skills/media-library/SKILL.md +743 -0
  155. package/claude/skills/mock-analysis/SKILL.md +276 -0
  156. package/claude/skills/monorepo-architecture/SKILL.md +162 -0
  157. package/claude/skills/nextjs-api-development/SKILL.md +364 -0
  158. package/claude/skills/nextjs-api-development/scripts/generate-crud-tests.py +456 -0
  159. package/claude/skills/nextjs-api-development/scripts/scaffold-endpoint.py +481 -0
  160. package/claude/skills/nextjs-api-development/scripts/validate-api.py +283 -0
  161. package/claude/skills/notion-integration/SKILL.md +641 -0
  162. package/claude/skills/npm-development-workflow/SKILL.md +480 -0
  163. package/claude/skills/page-builder-blocks/SKILL.md +530 -0
  164. package/claude/skills/page-builder-blocks/scripts/scaffold-block.py +444 -0
  165. package/claude/skills/permissions-system/SKILL.md +619 -0
  166. package/claude/skills/plugins/SKILL.md +340 -0
  167. package/claude/skills/plugins/references/plugin-templates.md +414 -0
  168. package/claude/skills/plugins/references/plugin-testing.md +353 -0
  169. package/claude/skills/plugins/references/plugin-types.md +198 -0
  170. package/claude/skills/plugins/scripts/scaffold-plugin.py +443 -0
  171. package/claude/skills/pom-patterns/SKILL.md +452 -0
  172. package/claude/skills/pom-patterns/scripts/generate-pom.py +392 -0
  173. package/claude/skills/rate-limiting/SKILL.md +342 -0
  174. package/claude/skills/react-best-practices/AGENTS.md +2410 -0
  175. package/claude/skills/react-best-practices/README.md +123 -0
  176. package/claude/skills/react-best-practices/SKILL.md +125 -0
  177. package/claude/skills/react-best-practices/metadata.json +15 -0
  178. package/claude/skills/react-best-practices/rules/_sections.md +46 -0
  179. package/claude/skills/react-best-practices/rules/_template.md +28 -0
  180. package/claude/skills/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  181. package/claude/skills/react-best-practices/rules/advanced-use-latest.md +49 -0
  182. package/claude/skills/react-best-practices/rules/async-api-routes.md +38 -0
  183. package/claude/skills/react-best-practices/rules/async-defer-await.md +80 -0
  184. package/claude/skills/react-best-practices/rules/async-dependencies.md +36 -0
  185. package/claude/skills/react-best-practices/rules/async-parallel.md +28 -0
  186. package/claude/skills/react-best-practices/rules/async-suspense-boundaries.md +99 -0
  187. package/claude/skills/react-best-practices/rules/bundle-barrel-imports.md +59 -0
  188. package/claude/skills/react-best-practices/rules/bundle-conditional.md +31 -0
  189. package/claude/skills/react-best-practices/rules/bundle-defer-third-party.md +49 -0
  190. package/claude/skills/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  191. package/claude/skills/react-best-practices/rules/bundle-preload.md +50 -0
  192. package/claude/skills/react-best-practices/rules/client-event-listeners.md +74 -0
  193. package/claude/skills/react-best-practices/rules/client-localstorage-schema.md +71 -0
  194. package/claude/skills/react-best-practices/rules/client-passive-event-listeners.md +48 -0
  195. package/claude/skills/react-best-practices/rules/client-swr-dedup.md +56 -0
  196. package/claude/skills/react-best-practices/rules/js-batch-dom-css.md +82 -0
  197. package/claude/skills/react-best-practices/rules/js-cache-function-results.md +80 -0
  198. package/claude/skills/react-best-practices/rules/js-cache-property-access.md +28 -0
  199. package/claude/skills/react-best-practices/rules/js-cache-storage.md +70 -0
  200. package/claude/skills/react-best-practices/rules/js-combine-iterations.md +32 -0
  201. package/claude/skills/react-best-practices/rules/js-early-exit.md +50 -0
  202. package/claude/skills/react-best-practices/rules/js-hoist-regexp.md +45 -0
  203. package/claude/skills/react-best-practices/rules/js-index-maps.md +37 -0
  204. package/claude/skills/react-best-practices/rules/js-length-check-first.md +49 -0
  205. package/claude/skills/react-best-practices/rules/js-min-max-loop.md +82 -0
  206. package/claude/skills/react-best-practices/rules/js-set-map-lookups.md +24 -0
  207. package/claude/skills/react-best-practices/rules/js-tosorted-immutable.md +57 -0
  208. package/claude/skills/react-best-practices/rules/rendering-activity.md +26 -0
  209. package/claude/skills/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  210. package/claude/skills/react-best-practices/rules/rendering-conditional-render.md +40 -0
  211. package/claude/skills/react-best-practices/rules/rendering-content-visibility.md +38 -0
  212. package/claude/skills/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  213. package/claude/skills/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  214. package/claude/skills/react-best-practices/rules/rendering-svg-precision.md +28 -0
  215. package/claude/skills/react-best-practices/rules/rerender-defer-reads.md +39 -0
  216. package/claude/skills/react-best-practices/rules/rerender-dependencies.md +45 -0
  217. package/claude/skills/react-best-practices/rules/rerender-derived-state.md +29 -0
  218. package/claude/skills/react-best-practices/rules/rerender-functional-setstate.md +74 -0
  219. package/claude/skills/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  220. package/claude/skills/react-best-practices/rules/rerender-memo.md +44 -0
  221. package/claude/skills/react-best-practices/rules/rerender-transitions.md +40 -0
  222. package/claude/skills/react-best-practices/rules/server-after-nonblocking.md +73 -0
  223. package/claude/skills/react-best-practices/rules/server-cache-lru.md +41 -0
  224. package/claude/skills/react-best-practices/rules/server-cache-react.md +76 -0
  225. package/claude/skills/react-best-practices/rules/server-parallel-fetching.md +83 -0
  226. package/claude/skills/react-best-practices/rules/server-serialization.md +38 -0
  227. package/claude/skills/react-patterns/SKILL.md +688 -0
  228. package/claude/skills/registry-system/SKILL.md +331 -0
  229. package/claude/skills/scheduled-actions/SKILL.md +671 -0
  230. package/claude/skills/scope-enforcement/SKILL.md +542 -0
  231. package/claude/skills/scope-enforcement/scripts/validate-scope.py +357 -0
  232. package/claude/skills/server-actions/SKILL.md +493 -0
  233. package/claude/skills/service-layer/SKILL.md +587 -0
  234. package/claude/skills/session-management/SKILL.md +266 -0
  235. package/claude/skills/session-management/scripts/create-session.py +166 -0
  236. package/claude/skills/session-management/scripts/iteration-close.sh +105 -0
  237. package/claude/skills/session-management/scripts/iteration-init.sh +180 -0
  238. package/claude/skills/session-management/scripts/session-archive.sh +87 -0
  239. package/claude/skills/session-management/scripts/session-close.sh +133 -0
  240. package/claude/skills/session-management/scripts/session-init.sh +225 -0
  241. package/claude/skills/session-management/scripts/session-list.sh +163 -0
  242. package/claude/skills/session-management/scripts/split-plan.sh +116 -0
  243. package/claude/skills/shadcn-components/SKILL.md +586 -0
  244. package/claude/skills/shadcn-theming/SKILL.md +446 -0
  245. package/claude/skills/suspense-loading/SKILL.md +280 -0
  246. package/claude/skills/tailwind-theming/SKILL.md +507 -0
  247. package/claude/skills/tanstack-query/SKILL.md +608 -0
  248. package/claude/skills/test-coverage/SKILL.md +239 -0
  249. package/claude/skills/web-design-guidelines/SKILL.md +39 -0
  250. package/claude/skills/zod-validation/SKILL.md +537 -0
  251. package/claude/templates/blocks/progress.md +86 -0
  252. package/claude/templates/iteration/changes.md +61 -0
  253. package/claude/templates/iteration/progress.md +55 -0
  254. package/claude/templates/log.md +31 -0
  255. package/claude/templates/story/context.md +77 -0
  256. package/claude/templates/story/pendings.md +37 -0
  257. package/claude/templates/story/plan.md +299 -0
  258. package/claude/templates/story/requirements.md +109 -0
  259. package/claude/templates/story/scope.json +10 -0
  260. package/claude/templates/story/tests.md +91 -0
  261. package/claude/templates/task/progress.md +58 -0
  262. package/claude/templates/task/requirements.md +54 -0
  263. package/claude/workflows/README.md +154 -0
  264. package/claude/workflows/blocks.md +614 -0
  265. package/claude/workflows/story.md +1207 -0
  266. package/claude/workflows/task.md +927 -0
  267. package/claude/workflows/tweak.md +527 -0
  268. package/cursor/.gitkeep +0 -0
  269. package/package.json +35 -0
  270. package/scripts/postinstall.mjs +198 -0
  271. package/scripts/setup.mjs +282 -0
  272. package/scripts/sync.mjs +209 -0
@@ -0,0 +1,440 @@
1
+ # /how-to:setup-claude-code
2
+
3
+ Configure Claude Code AI workflow system for your project.
4
+
5
+ **Aliases:** `/how-to:setup-ai`, `/how-to:configure-claude`
6
+
7
+ ---
8
+
9
+ ## Syntax
10
+
11
+ ```
12
+ /how-to:setup-claude-code
13
+ /how-to:setup-claude-code --validate
14
+ ```
15
+
16
+ ---
17
+
18
+ ## Overview
19
+
20
+ This is the **first step** when starting with NextSpark. Before you can use any AI-assisted development features, you need to configure Claude Code's workflow system.
21
+
22
+ **What you'll configure:**
23
+ 1. `context.json` - Monorepo vs Consumer project type
24
+ 2. `workspace.json` - Your personal preferences, active user, and task manager config
25
+ 3. `team.json` - Team members and their platform IDs
26
+ 4. `github.json` - Git workflow conventions (branches, commits, PRs)
27
+
28
+ ---
29
+
30
+ ## Flow
31
+
32
+ ```
33
+ ┌─────────────────────────────────────────────────────────────────┐
34
+ │ /how-to:setup-claude-code │
35
+ ├─────────────────────────────────────────────────────────────────┤
36
+ │ │
37
+ │ 1. Introduction │
38
+ │ - Explain the config file structure │
39
+ │ - What each file does │
40
+ │ ↓ │
41
+ │ 2. Step 1: Context Configuration │
42
+ │ - Determine: monorepo or consumer? │
43
+ │ - Create/update .claude/config/context.json │
44
+ │ ↓ │
45
+ │ 3. Step 2: Team Configuration │
46
+ │ - Add team members │
47
+ │ - Configure platform IDs (GitHub, task manager) │
48
+ │ - Create/update .claude/config/team.json │
49
+ │ ↓ │
50
+ │ 4. Step 3: Workspace Configuration │
51
+ │ - Set active user (from team.json) │
52
+ │ - Set language preference │
53
+ │ - Configure task manager integration │
54
+ │ - Create/update .claude/config/workspace.json │
55
+ │ ↓ │
56
+ │ 5. Step 4: GitHub Workflow Configuration │
57
+ │ - Configure gitflow (develop → qa → main) │
58
+ │ - Set branch naming conventions │
59
+ │ - Set commit message patterns │
60
+ │ - Create/update .claude/config/github.json │
61
+ │ ↓ │
62
+ │ 6. Validation │
63
+ │ - Verify all config files exist │
64
+ │ - Validate JSON syntax │
65
+ │ - Check required fields │
66
+ │ ↓ │
67
+ │ 8. Next Steps │
68
+ │ - Ready for /how-to:setup-database │
69
+ │ - Or /session:start for development │
70
+ │ │
71
+ └─────────────────────────────────────────────────────────────────┘
72
+ ```
73
+
74
+ ---
75
+
76
+ ## Step-by-Step Content
77
+
78
+ ### Step 1: Context Configuration
79
+
80
+ ```
81
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
82
+ 📚 STEP 1 OF 4: Project Context
83
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
84
+
85
+ First, let's determine your project type.
86
+
87
+ 📋 MONOREPO (Core Framework Development)
88
+ - You're developing the NextSpark framework itself
89
+ - You CAN modify core/ directory
90
+ - You CAN modify any theme
91
+
92
+ 📋 CONSUMER (Application Development)
93
+ - You're building an app WITH NextSpark
94
+ - Core is READ-ONLY (via npm packages)
95
+ - You can only modify your active theme
96
+
97
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
98
+
99
+ What type of project is this?
100
+
101
+ [1] Monorepo - I'm developing NextSpark core
102
+ [2] Consumer - I'm building an app with NextSpark
103
+ ```
104
+
105
+ **After selection, create `.claude/config/context.json`:**
106
+
107
+ ```json
108
+ {
109
+ "$schema": "./context.schema.json",
110
+ "context": "monorepo" // or "consumer"
111
+ }
112
+ ```
113
+
114
+ ---
115
+
116
+ ### Step 2: Team Configuration
117
+
118
+ ```
119
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
120
+ 📚 STEP 2 OF 4: Team Members
121
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
122
+
123
+ Now let's configure your team. This enables:
124
+ - Proper git commit attribution
125
+ - Task manager assignment
126
+ - Code review workflows
127
+
128
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
129
+
130
+ How many people are on your team?
131
+
132
+ [1] Just me (solo developer)
133
+ [2] Small team (2-5 people)
134
+ [3] I'll configure this later
135
+ ```
136
+
137
+ **For each team member, collect:**
138
+
139
+ ```
140
+ Team Member #1:
141
+ - Full name: _______________
142
+ - Initials (for branches): __
143
+ - Role: [lead | developer | reviewer]
144
+ - GitHub username: _______________
145
+ - Task Manager ID (optional): _______________
146
+ - Can review PRs? [yes/no]
147
+ - Can merge to main? [yes/no]
148
+ ```
149
+
150
+ **Create `.claude/config/team.json`:**
151
+
152
+ ```json
153
+ {
154
+ "$schema": "./team.schema.json",
155
+ "members": [
156
+ {
157
+ "name": "Pablo Capello",
158
+ "initials": "pc",
159
+ "role": "lead",
160
+ "ids": {
161
+ "github": "capellopablo",
162
+ "taskManager": "3020828",
163
+ "slack": ""
164
+ },
165
+ "permissions": {
166
+ "canReview": true,
167
+ "canMerge": true,
168
+ "canApproveProduction": true
169
+ }
170
+ }
171
+ ],
172
+ "roles": {
173
+ "lead": {
174
+ "canReview": true,
175
+ "canMerge": true,
176
+ "canApproveProduction": true
177
+ },
178
+ "developer": {
179
+ "canReview": true,
180
+ "canMerge": false,
181
+ "canApproveProduction": false
182
+ },
183
+ "reviewer": {
184
+ "canReview": true,
185
+ "canMerge": false,
186
+ "canApproveProduction": false
187
+ }
188
+ },
189
+ "reviewRules": {
190
+ "minRequired": 1,
191
+ "requireLeadForProduction": false,
192
+ "requireQaForProduction": false
193
+ }
194
+ }
195
+ ```
196
+
197
+ ---
198
+
199
+ ### Step 3: Workspace Configuration
200
+
201
+ ```
202
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
203
+ 📚 STEP 3 OF 4: Your Workspace
204
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
205
+
206
+ This is YOUR personal workspace configuration.
207
+ Each developer has their own workspace.json.
208
+
209
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
210
+
211
+ Who are you? (Select from team members)
212
+
213
+ [1] Pablo Capello
214
+ [2] Other team member...
215
+
216
+ Preferred language: (use language already chosen in /how-to:start,
217
+ or read from workspace.json preferences.language if available.
218
+ Only ask if no language has been selected yet in this session.)
219
+
220
+ Do you use a task manager?
221
+
222
+ [1] No task manager
223
+ [2] ClickUp
224
+ [3] Jira
225
+ [4] Linear
226
+ [5] Asana
227
+ ```
228
+
229
+ **Create `.claude/config/workspace.json`:**
230
+
231
+ ```json
232
+ {
233
+ "$schema": "./workspace.schema.json",
234
+ "project": {
235
+ "name": "My NextSpark App",
236
+ "activeTheme": "default"
237
+ },
238
+ "activeUser": "Pablo Capello",
239
+ "preferences": {
240
+ "language": "es",
241
+ "defaultWorkflow": "standard",
242
+ "autoCommit": false,
243
+ "verboseOutput": true
244
+ },
245
+ "taskManager": {
246
+ "enabled": true,
247
+ "provider": "clickup",
248
+ "syncWithSession": true,
249
+ "autoUpdateStatus": true,
250
+ "defaultList": ""
251
+ },
252
+ "integrations": {
253
+ "github": {
254
+ "enabled": true
255
+ }
256
+ }
257
+ }
258
+ ```
259
+
260
+ ---
261
+
262
+ ### Step 4: GitHub Workflow Configuration
263
+
264
+ ```
265
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
266
+ 📚 STEP 4 OF 4: Git Workflow
267
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
268
+
269
+ Let's configure your git workflow conventions.
270
+
271
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
272
+
273
+ What branch strategy do you use?
274
+
275
+ [1] Gitflow (feature → develop → qa → main)
276
+ [2] GitHub Flow (feature → main)
277
+ [3] Custom (I'll configure manually)
278
+
279
+ Branch naming convention?
280
+
281
+ [1] {type}/{issue-key}-{description}-{initials}
282
+ Example: feature/CU-abc123-add-products-pc
283
+
284
+ [2] {type}/{description}
285
+ Example: feature/add-products
286
+
287
+ Commit message pattern?
288
+
289
+ [1] [{issue-key}] {description}
290
+ Example: [CU-abc123] Add products entity
291
+
292
+ [2] {type}: {description}
293
+ Example: feat: Add products entity
294
+ ```
295
+
296
+ **Create `.claude/config/github.json`:**
297
+
298
+ ```json
299
+ {
300
+ "$schema": "./github.schema.json",
301
+ "gitflow": {
302
+ "enabled": true,
303
+ "environments": ["develop", "qa", "main"],
304
+ "featureBranch": {
305
+ "baseBranch": "main",
306
+ "targetBranch": "develop"
307
+ },
308
+ "hotfixBranch": {
309
+ "baseBranch": "main",
310
+ "targetBranch": "main",
311
+ "skipEnvironments": true
312
+ }
313
+ },
314
+ "branches": {
315
+ "pattern": "{type}/{issue-key}-{description}-{initials}",
316
+ "types": ["feature", "fix", "hotfix", "refactor", "docs", "test"],
317
+ "examples": [
318
+ "feature/CU-abc123-add-products-pc",
319
+ "fix/CU-def456-login-error-pc",
320
+ "hotfix/critical-payment-fix-pc"
321
+ ]
322
+ },
323
+ "commits": {
324
+ "pattern": "[{issue-key}] {description}",
325
+ "types": ["feat", "fix", "refactor", "docs", "test", "chore"],
326
+ "examples": [
327
+ "[CU-abc123] Add products entity with CRUD",
328
+ "[CU-def456] Fix login redirect issue"
329
+ ]
330
+ },
331
+ "pullRequests": {
332
+ "titlePattern": "[{issue-key}] {description}",
333
+ "bodyTemplate": "## Summary\n\n{summary}\n\n## Changes\n\n{changes}\n\n## Testing\n\n{testing}",
334
+ "labels": {
335
+ "auto": true,
336
+ "mapping": {
337
+ "feature": "enhancement",
338
+ "fix": "bug",
339
+ "hotfix": "critical",
340
+ "docs": "documentation"
341
+ }
342
+ }
343
+ },
344
+ "reviewers": {
345
+ "source": ".claude/config/team.json",
346
+ "askUserToSelect": true
347
+ }
348
+ }
349
+ ```
350
+
351
+ ---
352
+
353
+ ## Validation
354
+
355
+ After all steps are complete:
356
+
357
+ ```
358
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
359
+ ✅ CONFIGURATION COMPLETE
360
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
361
+
362
+ Validating your configuration...
363
+
364
+ ✓ .claude/config/context.json - Valid
365
+ ✓ .claude/config/team.json - Valid
366
+ ✓ .claude/config/workspace.json - Valid
367
+ ✓ .claude/config/github.json - Valid
368
+
369
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
370
+
371
+ 🎉 Claude Code is ready!
372
+
373
+ Your configuration:
374
+ ├── Context: monorepo
375
+ ├── Active User: Pablo Capello
376
+ ├── Language: Spanish
377
+ ├── Task Manager: ClickUp (enabled)
378
+ └── Git Flow: feature → develop → qa → main
379
+
380
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
381
+
382
+ What would you like to do next?
383
+
384
+ [1] Continue to /how-to:setup-database
385
+ [2] Start development with /session:start
386
+ [3] Return to /how-to:start
387
+ ```
388
+
389
+ ---
390
+
391
+ ## Config Files Summary
392
+
393
+ | File | Purpose | Shared? |
394
+ |------|---------|---------|
395
+ | `context.json` | Project type (monorepo/consumer) | Yes |
396
+ | `team.json` | Team members and roles | Yes |
397
+ | `workspace.json` | Personal preferences + task manager config | No (per developer) |
398
+ | `github.json` | Git workflow conventions | Yes |
399
+
400
+ ---
401
+
402
+ ## Troubleshooting
403
+
404
+ ### Missing config files
405
+
406
+ ```bash
407
+ # Check if .claude/config/ exists
408
+ ls -la .claude/config/
409
+
410
+ # If not, create the directory
411
+ mkdir -p .claude/config/
412
+ ```
413
+
414
+ ### Invalid JSON syntax
415
+
416
+ ```bash
417
+ # Validate JSON files
418
+ cat .claude/config/workspace.json | jq .
419
+ ```
420
+
421
+ ### Team member not found
422
+
423
+ Ensure `workspace.json.activeUser` matches exactly a `team.json.members[].name`.
424
+
425
+ ---
426
+
427
+ ## Related Commands
428
+
429
+ | Command | Description |
430
+ |---------|-------------|
431
+ | `/how-to:setup-database` | Next step: Configure database |
432
+ | `/how-to:start` | Return to learning hub |
433
+ | `/session:start` | Start a development session |
434
+
435
+ ---
436
+
437
+ ## Related Skills
438
+
439
+ - `.claude/skills/github/SKILL.md` - GitHub workflow patterns
440
+ - `.claude/skills/session-management/SKILL.md` - Session configuration
@@ -0,0 +1,274 @@
1
+ # /how-to:setup-database
2
+
3
+ Interactive guide to set up PostgreSQL database for NextSpark.
4
+
5
+ ---
6
+
7
+ ## Required Skills
8
+
9
+ Before executing, these skills provide deeper context:
10
+ - `.claude/skills/database-migrations/SKILL.md` - PostgreSQL migration patterns
11
+
12
+ ---
13
+
14
+ ## Syntax
15
+
16
+ ```
17
+ /how-to:setup-database
18
+ ```
19
+
20
+ ---
21
+
22
+ ## Behavior
23
+
24
+ Guides the user through setting up PostgreSQL, running migrations, and configuring database access.
25
+
26
+ ---
27
+
28
+ ## Tutorial Overview
29
+
30
+ ```
31
+ STEPS OVERVIEW (4 steps)
32
+
33
+ Step 1: Install PostgreSQL
34
+ └── Local or cloud setup
35
+
36
+ Step 2: Configure Connection
37
+ └── Environment variables
38
+
39
+ Step 3: Run Migrations
40
+ └── Execute initial setup
41
+
42
+ Step 4: Verify Setup
43
+ └── Test database connection
44
+ ```
45
+
46
+ ---
47
+
48
+ ## Step 1: Install PostgreSQL
49
+
50
+ ```
51
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
52
+ 📚 HOW TO: SETUP DATABASE
53
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
54
+
55
+ STEP 1 OF 4: Install PostgreSQL
56
+
57
+ Choose your setup option:
58
+
59
+ 📋 Option A: Local PostgreSQL (macOS)
60
+
61
+ ```bash
62
+ # Install with Homebrew
63
+ brew install postgresql@16
64
+
65
+ # Start PostgreSQL
66
+ brew services start postgresql@16
67
+
68
+ # Create database
69
+ createdb nextspark_dev
70
+ ```
71
+
72
+ 📋 Option B: Docker
73
+
74
+ ```bash
75
+ # Run PostgreSQL in Docker
76
+ docker run --name nextspark-db \
77
+ -e POSTGRES_USER=postgres \
78
+ -e POSTGRES_PASSWORD=postgres \
79
+ -e POSTGRES_DB=nextspark_dev \
80
+ -p 5432:5432 \
81
+ -d postgres:16
82
+
83
+ # Verify it's running
84
+ docker ps
85
+ ```
86
+
87
+ 📋 Option C: Cloud (Supabase/Neon)
88
+
89
+ 1. Create account at supabase.com or neon.tech
90
+ 2. Create new project
91
+ 3. Copy connection string from dashboard
92
+
93
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
94
+
95
+ What option would you like to use?
96
+ ```
97
+
98
+ ---
99
+
100
+ ## Step 2: Configure Connection
101
+
102
+ ```
103
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
104
+ STEP 2 OF 4: Configure Connection
105
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
106
+
107
+ Add database connection to your environment:
108
+
109
+ ```env
110
+ # .env.local
111
+
112
+ # Local PostgreSQL
113
+ DATABASE_URL="postgresql://postgres:postgres@localhost:5432/nextspark_dev"
114
+
115
+ # Docker PostgreSQL
116
+ DATABASE_URL="postgresql://postgres:postgres@localhost:5432/nextspark_dev"
117
+
118
+ # Supabase
119
+ DATABASE_URL="postgresql://postgres:[PASSWORD]@db.[PROJECT].supabase.co:5432/postgres"
120
+
121
+ # Neon
122
+ DATABASE_URL="postgresql://[USER]:[PASSWORD]@[HOST]/[DATABASE]?sslmode=require"
123
+ ```
124
+
125
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
126
+
127
+ 📋 Connection String Format:
128
+
129
+ ```
130
+ postgresql://[USER]:[PASSWORD]@[HOST]:[PORT]/[DATABASE]?[OPTIONS]
131
+ ```
132
+
133
+ • USER: Database username
134
+ • PASSWORD: Database password
135
+ • HOST: Server address (localhost for local)
136
+ • PORT: Default is 5432
137
+ • DATABASE: Database name
138
+ • OPTIONS: sslmode=require for cloud
139
+
140
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
141
+
142
+ 📋 Test Connection:
143
+
144
+ ```bash
145
+ # Using psql
146
+ psql $DATABASE_URL -c "SELECT 1"
147
+
148
+ # Or via the app
149
+ pnpm db:test
150
+ ```
151
+ ```
152
+
153
+ ---
154
+
155
+ ## Step 3: Run Migrations
156
+
157
+ ```
158
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
159
+ STEP 3 OF 4: Run Migrations
160
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
161
+
162
+ Execute migrations to set up database schema:
163
+
164
+ ```bash
165
+ # Run all migrations
166
+ pnpm db:migrate
167
+
168
+ # This executes:
169
+ # 1. Core migrations (core/migrations/)
170
+ # 2. Theme entity migrations (themes/*/entities/*/migrations/)
171
+ # 3. Plugin migrations (plugins/*/migrations/)
172
+ ```
173
+
174
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
175
+
176
+ 📋 Migration Commands:
177
+
178
+ ```bash
179
+ # Run migrations
180
+ pnpm db:migrate
181
+
182
+ # Create new migration
183
+ pnpm db:migrate:create "description"
184
+
185
+ # Rollback last migration
186
+ pnpm db:migrate:rollback
187
+
188
+ # Reset database (WARNING: destroys data)
189
+ pnpm db:reset
190
+
191
+ # Seed sample data
192
+ pnpm db:seed
193
+ ```
194
+
195
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
196
+
197
+ 📋 What Migrations Create:
198
+
199
+ Core tables:
200
+ • user - User accounts
201
+ • session - Auth sessions
202
+ • team - Teams/organizations
203
+ • teamMembers - Team memberships
204
+ • account - OAuth accounts
205
+ • apiKey - API keys
206
+
207
+ Theme entities (from your config):
208
+ • products, customers, etc.
209
+ ```
210
+
211
+ ---
212
+
213
+ ## Step 4: Verify Setup
214
+
215
+ ```
216
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
217
+ STEP 4 OF 4: Verify Setup
218
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
219
+
220
+ Verify everything is working:
221
+
222
+ ```bash
223
+ # 1. Test connection
224
+ pnpm db:test
225
+
226
+ # 2. List tables
227
+ psql $DATABASE_URL -c "\dt"
228
+
229
+ # 3. Start the app
230
+ pnpm dev
231
+
232
+ # 4. Try to sign up at http://localhost:3000
233
+ ```
234
+
235
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
236
+
237
+ 📋 Expected Tables:
238
+
239
+ After migration, you should see:
240
+ ```
241
+ user
242
+ session
243
+ account
244
+ team
245
+ teamMembers
246
+ apiKey
247
+ [your entity tables]
248
+ ```
249
+
250
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
251
+
252
+ ✅ TUTORIAL STORY!
253
+
254
+ Your database is set up with:
255
+ • PostgreSQL connection
256
+ • Core schema tables
257
+ • Entity tables
258
+ • Sample data (if seeded)
259
+
260
+ 📚 Related tutorials:
261
+ • /how-to:create-entity - Create new entities
262
+ • /how-to:create-migrations - Write migrations
263
+
264
+ 🔙 Back to menu: /how-to:start
265
+ ```
266
+
267
+ ---
268
+
269
+ ## Related Commands
270
+
271
+ | Command | Action |
272
+ |---------|--------|
273
+ | `/how-to:create-entity` | Create entities |
274
+ | `/session:db:fix` | Fix migration issues |