qualia-framework 2.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 (261) hide show
  1. package/README.md +50 -0
  2. package/bin/cli.js +519 -0
  3. package/framework/agents/architecture-strategist.md +53 -0
  4. package/framework/agents/backend-agent.md +150 -0
  5. package/framework/agents/code-simplicity-reviewer.md +86 -0
  6. package/framework/agents/frontend-agent.md +111 -0
  7. package/framework/agents/kieran-typescript-reviewer.md +96 -0
  8. package/framework/agents/performance-oracle.md +111 -0
  9. package/framework/agents/qualia-codebase-mapper.md +760 -0
  10. package/framework/agents/qualia-debugger.md +1203 -0
  11. package/framework/agents/qualia-executor.md +881 -0
  12. package/framework/agents/qualia-integration-checker.md +423 -0
  13. package/framework/agents/qualia-phase-researcher.md +453 -0
  14. package/framework/agents/qualia-plan-checker.md +699 -0
  15. package/framework/agents/qualia-planner.md +1241 -0
  16. package/framework/agents/qualia-project-researcher.md +602 -0
  17. package/framework/agents/qualia-research-synthesizer.md +236 -0
  18. package/framework/agents/qualia-roadmapper.md +605 -0
  19. package/framework/agents/qualia-verifier.md +685 -0
  20. package/framework/agents/team-orchestrator.md +228 -0
  21. package/framework/agents/teams/full-stack-team.md +48 -0
  22. package/framework/agents/teams/optimize-team.md +53 -0
  23. package/framework/agents/teams/review-team.md +62 -0
  24. package/framework/agents/teams/ship-team.md +86 -0
  25. package/framework/agents/test-agent.md +182 -0
  26. package/framework/askpass.sh +2 -0
  27. package/framework/commands/design.md +53 -0
  28. package/framework/commands/quick-db.md +22 -0
  29. package/framework/config/retention.json +35 -0
  30. package/framework/core/PRINCIPLES.md +77 -0
  31. package/framework/hooks/auto-format.sh +45 -0
  32. package/framework/hooks/block-env-edit.sh +42 -0
  33. package/framework/hooks/branch-guard.sh +46 -0
  34. package/framework/hooks/confirm-delete.sh +56 -0
  35. package/framework/hooks/migration-validate.sh +68 -0
  36. package/framework/hooks/notification-speak.sh +15 -0
  37. package/framework/hooks/pre-commit.sh +80 -0
  38. package/framework/hooks/pre-compact.sh +55 -0
  39. package/framework/hooks/pre-deploy-gate.sh +151 -0
  40. package/framework/hooks/qualia-colors.sh +32 -0
  41. package/framework/hooks/retention-cleanup.sh +43 -0
  42. package/framework/hooks/save-session-state.sh +153 -0
  43. package/framework/hooks/session-context-loader.sh +28 -0
  44. package/framework/hooks/session-learn.sh +30 -0
  45. package/framework/knowledge/claudecode-bible.md +1384 -0
  46. package/framework/knowledge/client-prefs.md +22 -0
  47. package/framework/knowledge/common-fixes.md +25 -0
  48. package/framework/knowledge/deployment-map.md +35 -0
  49. package/framework/knowledge/email-signature.html +1 -0
  50. package/framework/knowledge/employees.md +8 -0
  51. package/framework/knowledge/learned-patterns.md +51 -0
  52. package/framework/knowledge/optimization-research-2026.md +137 -0
  53. package/framework/knowledge/qualia-context.md +67 -0
  54. package/framework/knowledge/supabase-patterns.md +50 -0
  55. package/framework/knowledge/voice-agent-patterns.md +46 -0
  56. package/framework/qualia-engine/VERSION +1 -0
  57. package/framework/qualia-engine/bin/qualia-tools.js +2160 -0
  58. package/framework/qualia-engine/bin/qualia-tools.test.js +1054 -0
  59. package/framework/qualia-engine/references/checkpoints.md +775 -0
  60. package/framework/qualia-engine/references/continuation-format.md +249 -0
  61. package/framework/qualia-engine/references/decimal-phase-calculation.md +65 -0
  62. package/framework/qualia-engine/references/design-quality.md +56 -0
  63. package/framework/qualia-engine/references/git-integration.md +254 -0
  64. package/framework/qualia-engine/references/git-planning-commit.md +50 -0
  65. package/framework/qualia-engine/references/model-profile-resolution.md +32 -0
  66. package/framework/qualia-engine/references/model-profiles.md +73 -0
  67. package/framework/qualia-engine/references/phase-argument-parsing.md +61 -0
  68. package/framework/qualia-engine/references/planning-config.md +195 -0
  69. package/framework/qualia-engine/references/questioning.md +141 -0
  70. package/framework/qualia-engine/references/tdd.md +263 -0
  71. package/framework/qualia-engine/references/ui-brand.md +160 -0
  72. package/framework/qualia-engine/references/verification-patterns.md +612 -0
  73. package/framework/qualia-engine/templates/DEBUG.md +159 -0
  74. package/framework/qualia-engine/templates/DESIGN.md +81 -0
  75. package/framework/qualia-engine/templates/UAT.md +247 -0
  76. package/framework/qualia-engine/templates/codebase/architecture.md +255 -0
  77. package/framework/qualia-engine/templates/codebase/concerns.md +310 -0
  78. package/framework/qualia-engine/templates/codebase/conventions.md +307 -0
  79. package/framework/qualia-engine/templates/codebase/integrations.md +280 -0
  80. package/framework/qualia-engine/templates/codebase/stack.md +186 -0
  81. package/framework/qualia-engine/templates/codebase/structure.md +285 -0
  82. package/framework/qualia-engine/templates/codebase/testing.md +480 -0
  83. package/framework/qualia-engine/templates/config.json +35 -0
  84. package/framework/qualia-engine/templates/context.md +283 -0
  85. package/framework/qualia-engine/templates/continue-here.md +78 -0
  86. package/framework/qualia-engine/templates/debug-subagent-prompt.md +91 -0
  87. package/framework/qualia-engine/templates/discovery.md +146 -0
  88. package/framework/qualia-engine/templates/milestone-archive.md +123 -0
  89. package/framework/qualia-engine/templates/milestone.md +115 -0
  90. package/framework/qualia-engine/templates/phase-prompt.md +567 -0
  91. package/framework/qualia-engine/templates/planner-subagent-prompt.md +117 -0
  92. package/framework/qualia-engine/templates/project.md +184 -0
  93. package/framework/qualia-engine/templates/projects/ai-agent.md +156 -0
  94. package/framework/qualia-engine/templates/projects/mobile-app.md +181 -0
  95. package/framework/qualia-engine/templates/projects/voice-agent.md +134 -0
  96. package/framework/qualia-engine/templates/projects/website.md +137 -0
  97. package/framework/qualia-engine/templates/requirements.md +231 -0
  98. package/framework/qualia-engine/templates/research-project/ARCHITECTURE.md +204 -0
  99. package/framework/qualia-engine/templates/research-project/FEATURES.md +147 -0
  100. package/framework/qualia-engine/templates/research-project/PITFALLS.md +200 -0
  101. package/framework/qualia-engine/templates/research-project/STACK.md +120 -0
  102. package/framework/qualia-engine/templates/research-project/SUMMARY.md +170 -0
  103. package/framework/qualia-engine/templates/research.md +552 -0
  104. package/framework/qualia-engine/templates/roadmap.md +202 -0
  105. package/framework/qualia-engine/templates/state.md +176 -0
  106. package/framework/qualia-engine/templates/summary-complex.md +59 -0
  107. package/framework/qualia-engine/templates/summary-minimal.md +41 -0
  108. package/framework/qualia-engine/templates/summary-standard.md +48 -0
  109. package/framework/qualia-engine/templates/summary.md +246 -0
  110. package/framework/qualia-engine/templates/user-setup.md +311 -0
  111. package/framework/qualia-engine/templates/verification-report.md +322 -0
  112. package/framework/qualia-engine/workflows/add-phase.md +179 -0
  113. package/framework/qualia-engine/workflows/add-todo.md +157 -0
  114. package/framework/qualia-engine/workflows/audit-milestone.md +241 -0
  115. package/framework/qualia-engine/workflows/check-todos.md +176 -0
  116. package/framework/qualia-engine/workflows/complete-milestone.md +858 -0
  117. package/framework/qualia-engine/workflows/diagnose-issues.md +219 -0
  118. package/framework/qualia-engine/workflows/discovery-phase.md +289 -0
  119. package/framework/qualia-engine/workflows/discuss-phase.md +534 -0
  120. package/framework/qualia-engine/workflows/execute-phase.md +559 -0
  121. package/framework/qualia-engine/workflows/execute-plan.md +438 -0
  122. package/framework/qualia-engine/workflows/help.md +470 -0
  123. package/framework/qualia-engine/workflows/insert-phase.md +220 -0
  124. package/framework/qualia-engine/workflows/list-phase-assumptions.md +178 -0
  125. package/framework/qualia-engine/workflows/map-codebase.md +327 -0
  126. package/framework/qualia-engine/workflows/new-milestone.md +363 -0
  127. package/framework/qualia-engine/workflows/new-project.md +1037 -0
  128. package/framework/qualia-engine/workflows/pause-work.md +122 -0
  129. package/framework/qualia-engine/workflows/plan-milestone-gaps.md +256 -0
  130. package/framework/qualia-engine/workflows/plan-phase.md +422 -0
  131. package/framework/qualia-engine/workflows/progress.md +354 -0
  132. package/framework/qualia-engine/workflows/quick.md +252 -0
  133. package/framework/qualia-engine/workflows/remove-phase.md +326 -0
  134. package/framework/qualia-engine/workflows/research-phase.md +74 -0
  135. package/framework/qualia-engine/workflows/resume-project.md +306 -0
  136. package/framework/qualia-engine/workflows/set-profile.md +80 -0
  137. package/framework/qualia-engine/workflows/settings.md +145 -0
  138. package/framework/qualia-engine/workflows/transition.md +556 -0
  139. package/framework/qualia-engine/workflows/update.md +197 -0
  140. package/framework/qualia-engine/workflows/verify-phase.md +195 -0
  141. package/framework/qualia-engine/workflows/verify-work.md +625 -0
  142. package/framework/rules/context7.md +11 -0
  143. package/framework/rules/deployment.md +29 -0
  144. package/framework/rules/frontend.md +33 -0
  145. package/framework/rules/security.md +12 -0
  146. package/framework/rules/speed.md +20 -0
  147. package/framework/scripts/__pycache__/say.cpython-314.pyc +0 -0
  148. package/framework/scripts/apply-retention.sh +120 -0
  149. package/framework/scripts/bootstrap-pop-os.sh +354 -0
  150. package/framework/scripts/claude-voice +13 -0
  151. package/framework/scripts/cleanup.sh +131 -0
  152. package/framework/scripts/cowork-mode.sh +141 -0
  153. package/framework/scripts/generate-project-claude-md.sh +153 -0
  154. package/framework/scripts/load-test-webhook.js +172 -0
  155. package/framework/scripts/say.py +236 -0
  156. package/framework/scripts/showcase-video-recorder/ffmpeg-builder.js +167 -0
  157. package/framework/scripts/showcase-video-recorder/playwright-helpers.js +216 -0
  158. package/framework/scripts/speak.py +55 -0
  159. package/framework/scripts/speak.sh +18 -0
  160. package/framework/scripts/status.sh +138 -0
  161. package/framework/scripts/sync-to-framework.sh +65 -0
  162. package/framework/scripts/voice-hotkey.py +227 -0
  163. package/framework/scripts/voice-input.sh +51 -0
  164. package/framework/skills/animate/SKILL.md +202 -0
  165. package/framework/skills/bolder/SKILL.md +144 -0
  166. package/framework/skills/browser-qa/SKILL.md +536 -0
  167. package/framework/skills/clarify/SKILL.md +179 -0
  168. package/framework/skills/colorize/SKILL.md +170 -0
  169. package/framework/skills/critique/SKILL.md +126 -0
  170. package/framework/skills/deep-research/SKILL.md +271 -0
  171. package/framework/skills/delight/SKILL.md +329 -0
  172. package/framework/skills/deploy/SKILL.md +261 -0
  173. package/framework/skills/deploy-verify/SKILL.md +377 -0
  174. package/framework/skills/deploy-verify/scripts/canary-check.sh +206 -0
  175. package/framework/skills/deploy-verify/scripts/check-console-errors.js +147 -0
  176. package/framework/skills/deploy-verify/scripts/check-cwv.js +139 -0
  177. package/framework/skills/deploy-verify/scripts/project-detect.sh +84 -0
  178. package/framework/skills/deploy-verify/scripts/verify.sh +548 -0
  179. package/framework/skills/design-quieter/SKILL.md +130 -0
  180. package/framework/skills/distill/SKILL.md +149 -0
  181. package/framework/skills/docs-lookup/SKILL.md +78 -0
  182. package/framework/skills/fcm-notifications/SKILL.md +125 -0
  183. package/framework/skills/financial-ledger/SKILL.md +1039 -0
  184. package/framework/skills/frontend-master/NOTICE.md +4 -0
  185. package/framework/skills/frontend-master/SKILL.md +127 -0
  186. package/framework/skills/frontend-master/reference/color-and-contrast.md +132 -0
  187. package/framework/skills/frontend-master/reference/interaction-design.md +123 -0
  188. package/framework/skills/frontend-master/reference/motion-design.md +99 -0
  189. package/framework/skills/frontend-master/reference/responsive-design.md +114 -0
  190. package/framework/skills/frontend-master/reference/spatial-design.md +100 -0
  191. package/framework/skills/frontend-master/reference/typography.md +131 -0
  192. package/framework/skills/frontend-master/reference/ux-writing.md +107 -0
  193. package/framework/skills/harden/SKILL.md +357 -0
  194. package/framework/skills/i18n-rtl/SKILL.md +752 -0
  195. package/framework/skills/learn/SKILL.md +71 -0
  196. package/framework/skills/memory/SKILL.md +50 -0
  197. package/framework/skills/mobile-expo/SKILL.md +864 -0
  198. package/framework/skills/mobile-expo/references/store-checklist.md +550 -0
  199. package/framework/skills/nestjs-backend/README.md +73 -0
  200. package/framework/skills/nestjs-backend/SKILL.md +446 -0
  201. package/framework/skills/nestjs-backend/references/templates.md +1173 -0
  202. package/framework/skills/normalize/SKILL.md +79 -0
  203. package/framework/skills/onboard/SKILL.md +242 -0
  204. package/framework/skills/polish/SKILL.md +209 -0
  205. package/framework/skills/pr/SKILL.md +66 -0
  206. package/framework/skills/qualia/SKILL.md +153 -0
  207. package/framework/skills/qualia-add-todo/SKILL.md +68 -0
  208. package/framework/skills/qualia-audit-milestone/SKILL.md +92 -0
  209. package/framework/skills/qualia-check-todos/SKILL.md +55 -0
  210. package/framework/skills/qualia-complete-milestone/SKILL.md +108 -0
  211. package/framework/skills/qualia-debug/SKILL.md +149 -0
  212. package/framework/skills/qualia-design/SKILL.md +203 -0
  213. package/framework/skills/qualia-discuss-phase/SKILL.md +72 -0
  214. package/framework/skills/qualia-execute-phase/SKILL.md +86 -0
  215. package/framework/skills/qualia-help/SKILL.md +67 -0
  216. package/framework/skills/qualia-idk/SKILL.md +352 -0
  217. package/framework/skills/qualia-list-phase-assumptions/SKILL.md +67 -0
  218. package/framework/skills/qualia-new-milestone/SKILL.md +72 -0
  219. package/framework/skills/qualia-new-project/SKILL.md +92 -0
  220. package/framework/skills/qualia-optimize/SKILL.md +417 -0
  221. package/framework/skills/qualia-pause-work/SKILL.md +96 -0
  222. package/framework/skills/qualia-plan-milestone-gaps/SKILL.md +57 -0
  223. package/framework/skills/qualia-plan-phase/SKILL.md +101 -0
  224. package/framework/skills/qualia-progress/SKILL.md +53 -0
  225. package/framework/skills/qualia-quick/SKILL.md +89 -0
  226. package/framework/skills/qualia-research-phase/SKILL.md +88 -0
  227. package/framework/skills/qualia-resume-work/SKILL.md +62 -0
  228. package/framework/skills/qualia-review/SKILL.md +263 -0
  229. package/framework/skills/qualia-start/SKILL.md +182 -0
  230. package/framework/skills/qualia-verify-work/SKILL.md +105 -0
  231. package/framework/skills/qualia-workflow/SKILL.md +130 -0
  232. package/framework/skills/rag/SKILL.md +750 -0
  233. package/framework/skills/responsive/SKILL.md +231 -0
  234. package/framework/skills/retro/SKILL.md +284 -0
  235. package/framework/skills/sakani-conventions/SKILL.md +136 -0
  236. package/framework/skills/sakani-conventions/evals/evals.json +23 -0
  237. package/framework/skills/sakani-conventions/references/entities.md +365 -0
  238. package/framework/skills/sakani-conventions/references/error-codes.md +95 -0
  239. package/framework/skills/seo-master/SKILL.md +490 -0
  240. package/framework/skills/seo-master/references/checklist.md +199 -0
  241. package/framework/skills/seo-master/references/structured-data.md +609 -0
  242. package/framework/skills/ship/SKILL.md +202 -0
  243. package/framework/skills/stack-researcher/SKILL.md +215 -0
  244. package/framework/skills/status/SKILL.md +154 -0
  245. package/framework/skills/status/scripts/health-check.sh +562 -0
  246. package/framework/skills/subscription-payments/SKILL.md +250 -0
  247. package/framework/skills/supabase/SKILL.md +973 -0
  248. package/framework/skills/supabase/references/templates.md +159 -0
  249. package/framework/skills/team/SKILL.md +67 -0
  250. package/framework/skills/test-runner/SKILL.md +202 -0
  251. package/framework/skills/voice-agent/SKILL.md +407 -0
  252. package/framework/skills/zoho-workflow/SKILL.md +51 -0
  253. package/framework/statusline-command.sh +117 -0
  254. package/package.json +24 -0
  255. package/profiles/fawzi.json +16 -0
  256. package/profiles/hasan.json +16 -0
  257. package/profiles/moayad.json +16 -0
  258. package/templates/CLAUDE-owner.md +52 -0
  259. package/templates/CLAUDE.md.hbs +58 -0
  260. package/templates/env.claude.template +12 -0
  261. package/templates/settings.json +141 -0
@@ -0,0 +1,134 @@
1
+ # Project Template: Voice Agent
2
+
3
+ > Voice AI agent with Supabase Edge Functions, VAPI/Retell AI, and ElevenLabs.
4
+
5
+ **Stack:** Supabase Edge Functions (Deno), VAPI / Retell AI, ElevenLabs, TypeScript
6
+ **Phases:** 6
7
+ **Type:** voice-agent
8
+
9
+ ## Phases
10
+
11
+ ### Phase 1: Foundation
12
+ **Goal:** Supabase project with schema, edge function boilerplate, and voice provider connection
13
+ **Skills:** [@supabase, @voice-agent]
14
+ **Tasks:**
15
+ - Design Supabase schema: calls, call_events, contacts, tools, system_config
16
+ - Create edge function scaffold (Deno, cors headers, error handling)
17
+ - Configure voice provider (VAPI or Retell AI): API keys, assistant creation
18
+ - Environment variables in Supabase (voice provider keys, webhook secret)
19
+ - Basic webhook endpoint that receives and logs call events
20
+ - RLS policies on all tables
21
+
22
+ **Success Criteria:**
23
+ 1. Edge function deployed and responding to health check
24
+ 2. Voice provider can reach webhook endpoint
25
+ 3. Schema deployed with RLS enabled
26
+ 4. Call events logging to database
27
+
28
+ ---
29
+
30
+ ### Phase 2: Voice Flow Design
31
+ **Goal:** Complete conversation state machine with branching paths and slot filling
32
+ **Skills:** [@voice-agent]
33
+ **Tasks:**
34
+ - Design conversation flow (state machine: greeting → discovery → action → closing)
35
+ - Create VAPI/Retell assistant configuration (system prompt, voice, language)
36
+ - Define conversation states and transitions
37
+ - Slot filling logic (extract key info from conversation)
38
+ - Multi-language support (if applicable — e.g., Greek/English/Russian)
39
+ - Interruption handling (user interrupts mid-sentence)
40
+ - Silence detection and re-engagement prompts
41
+ - Transfer-to-human escalation path
42
+
43
+ **Success Criteria:**
44
+ 1. Assistant follows designed flow in test calls
45
+ 2. Slot filling correctly extracts required information
46
+ 3. Language switching works naturally (if multi-language)
47
+ 4. Escalation to human triggers correctly
48
+
49
+ ---
50
+
51
+ ### Phase 3: Webhook Handlers
52
+ **Goal:** Robust webhook processing for all voice provider events
53
+ **Skills:** [@supabase, @voice-agent]
54
+ **Tasks:**
55
+ - Webhook signature verification (prevent spoofing)
56
+ - Call start handler: create call record, load contact context
57
+ - Call end handler: save transcript, update call status, trigger follow-ups
58
+ - Function call handler: route tool calls to appropriate handlers
59
+ - Status update handler: track call progress in real-time
60
+ - Error handler: graceful failure with logging
61
+ - Idempotency: handle duplicate webhook deliveries
62
+
63
+ **Success Criteria:**
64
+ 1. All webhook events processed and logged
65
+ 2. Signature verification blocks invalid requests
66
+ 3. Duplicate deliveries don't create duplicate records
67
+ 4. Failed handlers don't crash the entire endpoint
68
+
69
+ ---
70
+
71
+ ### Phase 4: Tool Functions
72
+ **Goal:** Business logic tools the voice agent can call during conversations
73
+ **Skills:** [@supabase]
74
+ **Tasks:**
75
+ - Tool definition schema (name, description, parameters)
76
+ - Tool router: dispatch function calls to handlers
77
+ - Business-specific tools (varies per project):
78
+ - Database lookups (order status, product search, appointment check)
79
+ - External API calls (CRM, inventory, booking system)
80
+ - Data mutations (create appointment, update record, send notification)
81
+ - Tool response formatting (structured → natural language for voice)
82
+ - Tool error handling (timeout, API failure → graceful voice response)
83
+ - Tool call logging (for analytics and debugging)
84
+
85
+ **Success Criteria:**
86
+ 1. Voice agent can call tools mid-conversation and use results
87
+ 2. Tool failures produce graceful voice responses (not errors)
88
+ 3. All tool calls logged with input/output
89
+ 4. Tool response latency < 2s (voice conversations are latency-sensitive)
90
+
91
+ ---
92
+
93
+ ### Phase 5: Testing & Tuning
94
+ **Goal:** Reliable voice agent with optimized latency and conversation quality
95
+ **Skills:** [@voice-agent]
96
+ **Tasks:**
97
+ - Test call suite: happy path, edge cases, error scenarios
98
+ - Latency profiling: identify slow tool calls, optimize
99
+ - Voice quality tuning: adjust voice provider settings (speed, pitch, stability)
100
+ - Prompt engineering: refine system prompt based on test call results
101
+ - Edge case handling: unknown inputs, off-topic queries, hostile callers
102
+ - Load testing: concurrent calls (if applicable)
103
+ - Transcript review: analyze test transcripts for quality issues
104
+ - Cost analysis: per-call cost breakdown (voice + AI + telephony)
105
+
106
+ **Success Criteria:**
107
+ 1. Happy path call completes successfully in < 3 minutes
108
+ 2. All tool calls respond within 2s
109
+ 3. Voice sounds natural (no robotic artifacts or awkward pauses)
110
+ 4. Edge cases handled gracefully (no hangups or infinite loops)
111
+
112
+ ---
113
+
114
+ ### Phase 6: Deploy & Verify
115
+ **Goal:** Production edge functions deployed with voice provider configured
116
+ **Skills:** [@deploy-verify, @voice-agent]
117
+ **Team:** ship-team
118
+ **Tasks:**
119
+ - Final type check on edge functions
120
+ - Deploy edge functions to Supabase production
121
+ - Configure voice provider webhooks to production URLs
122
+ - Verify webhook signature validation in production
123
+ - Test call in production environment
124
+ - Monitor first 10 production calls for issues
125
+ - Set up alerting for webhook failures
126
+ - Document: phone number, webhook URLs, provider dashboard links
127
+
128
+ **Success Criteria:**
129
+ 1. Edge function responds 200 to health check
130
+ 2. Voice provider webhook configured and verified
131
+ 3. Test call completes full flow in production
132
+ 4. Tool calls work with production data
133
+ 5. No secrets exposed in edge function logs
134
+ 6. Webhook failures trigger alerts
@@ -0,0 +1,137 @@
1
+ # Project Template: Website
2
+
3
+ > Opinionated Next.js + Supabase + Vercel template. Fawzi's exact stack.
4
+
5
+ **Stack:** Next.js 16+, React 19, TypeScript, Tailwind v4, Supabase, Vercel
6
+ **Phases:** 6
7
+ **Type:** website
8
+
9
+ ## Phases
10
+
11
+ ### Phase 1: Foundation
12
+ **Goal:** Working Next.js app with auth, Supabase connected, protected routes, base layout
13
+ **Skills:** [@supabase]
14
+ **Tasks:**
15
+ - Initialize Next.js 16+ with App Router, TypeScript strict, Tailwind v4
16
+ - Configure Supabase client (server.ts + client.ts pattern from `lib/supabase/`)
17
+ - Implement auth: login, signup, password reset (Supabase Auth)
18
+ - Create protected route middleware (redirect unauthenticated users)
19
+ - Set up base layout: header, footer, navigation shell
20
+ - Configure environment variables (.env.local)
21
+ - Set up RLS on auth-related tables
22
+
23
+ **Success Criteria:**
24
+ 1. User can create account, log in, and see protected dashboard
25
+ 2. Unauthenticated users redirected to login
26
+ 3. Server-side auth check works (not just client-side)
27
+ 4. `npx tsc --noEmit` passes
28
+
29
+ ---
30
+
31
+ ### Phase 2: Landing & Marketing
32
+ **Goal:** Polished public-facing pages that convert visitors
33
+ **Skills:** [@frontend-master, @seo-master]
34
+ **Team:** full-stack-team
35
+ **Tasks:**
36
+ - Hero section with distinctive typography and animations
37
+ - Features section with staggered reveal animations
38
+ - Testimonials/social proof section
39
+ - Pricing section (if applicable)
40
+ - CTA sections with micro-interactions
41
+ - About/company page
42
+ - Contact page with form (Supabase insert or email)
43
+ - Footer with navigation, social links
44
+
45
+ **Success Criteria:**
46
+ 1. Landing page loads in under 3s on mobile
47
+ 2. All sections have CSS transitions and staggered animations
48
+ 3. No generic card grids or blue-purple gradients (Fawzi's frontend rules)
49
+ 4. Distinctive fonts (not Inter/Arial)
50
+ 5. Mobile-responsive from the start
51
+
52
+ ---
53
+
54
+ ### Phase 3: Dashboard / App
55
+ **Goal:** Authenticated user area with full CRUD and real-time data
56
+ **Skills:** [@admin-panel, @supabase]
57
+ **Team:** full-stack-team
58
+ **Tasks:**
59
+ - Dashboard overview page with key metrics
60
+ - Data listing pages with pagination, search, filters
61
+ - Create/edit forms with Zod validation
62
+ - Delete with confirmation dialog
63
+ - Real-time updates (Supabase subscriptions)
64
+ - User profile/settings page
65
+ - Role-based access (if multi-user)
66
+
67
+ **Success Criteria:**
68
+ 1. User can create, read, update, delete core resources
69
+ 2. Forms validate with Zod and show clear error messages
70
+ 3. Data persists correctly in Supabase with RLS
71
+ 4. Loading states and error boundaries on all data-fetching pages
72
+
73
+ ---
74
+
75
+ ### Phase 4: SEO & Performance
76
+ **Goal:** Production-grade SEO and Core Web Vitals passing scores
77
+ **Skills:** [@seo-master]
78
+ **Tasks:**
79
+ - Dynamic metadata for all pages (title, description, OG image)
80
+ - JSON-LD structured data (Organization, WebSite, BreadcrumbList)
81
+ - Sitemap.xml generation (dynamic from routes)
82
+ - robots.txt
83
+ - Open Graph and Twitter card meta tags
84
+ - Image optimization (next/image, WebP, lazy loading)
85
+ - Font optimization (next/font, preload critical fonts)
86
+ - Bundle analysis and code splitting review
87
+
88
+ **Success Criteria:**
89
+ 1. Lighthouse SEO score ≥ 95
90
+ 2. Core Web Vitals: LCP < 2.5s, FID < 100ms, CLS < 0.1
91
+ 3. All pages have unique title and description
92
+ 4. JSON-LD renders correctly in Google Rich Results Test
93
+
94
+ ---
95
+
96
+ ### Phase 5: Responsive & Polish
97
+ **Goal:** Flawless experience across all screen sizes with refined animations
98
+ **Skills:** [@responsive, @frontend-master]
99
+ **Tasks:**
100
+ - Mobile layout audit and fixes (320px–480px)
101
+ - Tablet layout adjustments (768px–1024px)
102
+ - Desktop optimization (1280px+)
103
+ - Touch targets ≥ 44px on mobile
104
+ - Loading skeletons for all async content
105
+ - Error boundaries with recovery UI
106
+ - Page transitions and route animations
107
+ - Micro-interactions on buttons, links, form elements
108
+ - Dark mode (if in scope)
109
+
110
+ **Success Criteria:**
111
+ 1. Usable on 320px width without horizontal scroll
112
+ 2. Touch targets ≥ 44px on all interactive elements
113
+ 3. No layout shifts on route navigation
114
+ 4. Loading states visible for all data-fetching operations
115
+
116
+ ---
117
+
118
+ ### Phase 6: Deploy & Verify
119
+ **Goal:** Production deployment with full verification suite passing
120
+ **Skills:** [@deploy-verify]
121
+ **Team:** ship-team
122
+ **Tasks:**
123
+ - Final `npx tsc --noEmit` check
124
+ - Final `next lint` check
125
+ - Production build (`next build`)
126
+ - Deploy to Vercel (`vercel --prod`)
127
+ - Configure custom domain (if applicable)
128
+ - Run 6-check post-deploy verification
129
+ - Supabase production config review (RLS, service key not exposed)
130
+
131
+ **Success Criteria:**
132
+ 1. HTTP 200 on homepage
133
+ 2. Auth flow works in production
134
+ 3. No console errors on key pages
135
+ 4. API latency < 500ms
136
+ 5. SSL certificate valid
137
+ 6. No source maps exposed
@@ -0,0 +1,231 @@
1
+ # Requirements Template
2
+
3
+ Template for `.planning/REQUIREMENTS.md` — checkable requirements that define "done."
4
+
5
+ <template>
6
+
7
+ ```markdown
8
+ # Requirements: [Project Name]
9
+
10
+ **Defined:** [date]
11
+ **Core Value:** [from PROJECT.md]
12
+
13
+ ## v1 Requirements
14
+
15
+ Requirements for initial release. Each maps to roadmap phases.
16
+
17
+ ### Authentication
18
+
19
+ - [ ] **AUTH-01**: User can sign up with email and password
20
+ - [ ] **AUTH-02**: User receives email verification after signup
21
+ - [ ] **AUTH-03**: User can reset password via email link
22
+ - [ ] **AUTH-04**: User session persists across browser refresh
23
+
24
+ ### [Category 2]
25
+
26
+ - [ ] **[CAT]-01**: [Requirement description]
27
+ - [ ] **[CAT]-02**: [Requirement description]
28
+ - [ ] **[CAT]-03**: [Requirement description]
29
+
30
+ ### [Category 3]
31
+
32
+ - [ ] **[CAT]-01**: [Requirement description]
33
+ - [ ] **[CAT]-02**: [Requirement description]
34
+
35
+ ## v2 Requirements
36
+
37
+ Deferred to future release. Tracked but not in current roadmap.
38
+
39
+ ### [Category]
40
+
41
+ - **[CAT]-01**: [Requirement description]
42
+ - **[CAT]-02**: [Requirement description]
43
+
44
+ ## Out of Scope
45
+
46
+ Explicitly excluded. Documented to prevent scope creep.
47
+
48
+ | Feature | Reason |
49
+ |---------|--------|
50
+ | [Feature] | [Why excluded] |
51
+ | [Feature] | [Why excluded] |
52
+
53
+ ## Traceability
54
+
55
+ Which phases cover which requirements. Updated during roadmap creation.
56
+
57
+ | Requirement | Phase | Status |
58
+ |-------------|-------|--------|
59
+ | AUTH-01 | Phase 1 | Pending |
60
+ | AUTH-02 | Phase 1 | Pending |
61
+ | AUTH-03 | Phase 1 | Pending |
62
+ | AUTH-04 | Phase 1 | Pending |
63
+ | [REQ-ID] | Phase [N] | Pending |
64
+
65
+ **Coverage:**
66
+ - v1 requirements: [X] total
67
+ - Mapped to phases: [Y]
68
+ - Unmapped: [Z] ⚠️
69
+
70
+ ---
71
+ *Requirements defined: [date]*
72
+ *Last updated: [date] after [trigger]*
73
+ ```
74
+
75
+ </template>
76
+
77
+ <guidelines>
78
+
79
+ **Requirement Format:**
80
+ - ID: `[CATEGORY]-[NUMBER]` (AUTH-01, CONTENT-02, SOCIAL-03)
81
+ - Description: User-centric, testable, atomic
82
+ - Checkbox: Only for v1 requirements (v2 are not yet actionable)
83
+
84
+ **Categories:**
85
+ - Derive from research FEATURES.md categories
86
+ - Keep consistent with domain conventions
87
+ - Typical: Authentication, Content, Social, Notifications, Moderation, Payments, Admin
88
+
89
+ **v1 vs v2:**
90
+ - v1: Committed scope, will be in roadmap phases
91
+ - v2: Acknowledged but deferred, not in current roadmap
92
+ - Moving v2 → v1 requires roadmap update
93
+
94
+ **Out of Scope:**
95
+ - Explicit exclusions with reasoning
96
+ - Prevents "why didn't you include X?" later
97
+ - Anti-features from research belong here with warnings
98
+
99
+ **Traceability:**
100
+ - Empty initially, populated during roadmap creation
101
+ - Each requirement maps to exactly one phase
102
+ - Unmapped requirements = roadmap gap
103
+
104
+ **Status Values:**
105
+ - Pending: Not started
106
+ - In Progress: Phase is active
107
+ - Complete: Requirement verified
108
+ - Blocked: Waiting on external factor
109
+
110
+ </guidelines>
111
+
112
+ <evolution>
113
+
114
+ **After each phase completes:**
115
+ 1. Mark covered requirements as Complete
116
+ 2. Update traceability status
117
+ 3. Note any requirements that changed scope
118
+
119
+ **After roadmap updates:**
120
+ 1. Verify all v1 requirements still mapped
121
+ 2. Add new requirements if scope expanded
122
+ 3. Move requirements to v2/out of scope if descoped
123
+
124
+ **Requirement completion criteria:**
125
+ - Requirement is "Complete" when:
126
+ - Feature is implemented
127
+ - Feature is verified (tests pass, manual check done)
128
+ - Feature is committed
129
+
130
+ </evolution>
131
+
132
+ <example>
133
+
134
+ ```markdown
135
+ # Requirements: CommunityApp
136
+
137
+ **Defined:** 2025-01-14
138
+ **Core Value:** Users can share and discuss content with people who share their interests
139
+
140
+ ## v1 Requirements
141
+
142
+ ### Authentication
143
+
144
+ - [ ] **AUTH-01**: User can sign up with email and password
145
+ - [ ] **AUTH-02**: User receives email verification after signup
146
+ - [ ] **AUTH-03**: User can reset password via email link
147
+ - [ ] **AUTH-04**: User session persists across browser refresh
148
+
149
+ ### Profiles
150
+
151
+ - [ ] **PROF-01**: User can create profile with display name
152
+ - [ ] **PROF-02**: User can upload avatar image
153
+ - [ ] **PROF-03**: User can write bio (max 500 chars)
154
+ - [ ] **PROF-04**: User can view other users' profiles
155
+
156
+ ### Content
157
+
158
+ - [ ] **CONT-01**: User can create text post
159
+ - [ ] **CONT-02**: User can upload image with post
160
+ - [ ] **CONT-03**: User can edit own posts
161
+ - [ ] **CONT-04**: User can delete own posts
162
+ - [ ] **CONT-05**: User can view feed of posts
163
+
164
+ ### Social
165
+
166
+ - [ ] **SOCL-01**: User can follow other users
167
+ - [ ] **SOCL-02**: User can unfollow users
168
+ - [ ] **SOCL-03**: User can like posts
169
+ - [ ] **SOCL-04**: User can comment on posts
170
+ - [ ] **SOCL-05**: User can view activity feed (followed users' posts)
171
+
172
+ ## v2 Requirements
173
+
174
+ ### Notifications
175
+
176
+ - **NOTF-01**: User receives in-app notifications
177
+ - **NOTF-02**: User receives email for new followers
178
+ - **NOTF-03**: User receives email for comments on own posts
179
+ - **NOTF-04**: User can configure notification preferences
180
+
181
+ ### Moderation
182
+
183
+ - **MODR-01**: User can report content
184
+ - **MODR-02**: User can block other users
185
+ - **MODR-03**: Admin can view reported content
186
+ - **MODR-04**: Admin can remove content
187
+ - **MODR-05**: Admin can ban users
188
+
189
+ ## Out of Scope
190
+
191
+ | Feature | Reason |
192
+ |---------|--------|
193
+ | Real-time chat | High complexity, not core to community value |
194
+ | Video posts | Storage/bandwidth costs, defer to v2+ |
195
+ | OAuth login | Email/password sufficient for v1 |
196
+ | Mobile app | Web-first, mobile later |
197
+
198
+ ## Traceability
199
+
200
+ | Requirement | Phase | Status |
201
+ |-------------|-------|--------|
202
+ | AUTH-01 | Phase 1 | Pending |
203
+ | AUTH-02 | Phase 1 | Pending |
204
+ | AUTH-03 | Phase 1 | Pending |
205
+ | AUTH-04 | Phase 1 | Pending |
206
+ | PROF-01 | Phase 2 | Pending |
207
+ | PROF-02 | Phase 2 | Pending |
208
+ | PROF-03 | Phase 2 | Pending |
209
+ | PROF-04 | Phase 2 | Pending |
210
+ | CONT-01 | Phase 3 | Pending |
211
+ | CONT-02 | Phase 3 | Pending |
212
+ | CONT-03 | Phase 3 | Pending |
213
+ | CONT-04 | Phase 3 | Pending |
214
+ | CONT-05 | Phase 3 | Pending |
215
+ | SOCL-01 | Phase 4 | Pending |
216
+ | SOCL-02 | Phase 4 | Pending |
217
+ | SOCL-03 | Phase 4 | Pending |
218
+ | SOCL-04 | Phase 4 | Pending |
219
+ | SOCL-05 | Phase 4 | Pending |
220
+
221
+ **Coverage:**
222
+ - v1 requirements: 18 total
223
+ - Mapped to phases: 18
224
+ - Unmapped: 0 ✓
225
+
226
+ ---
227
+ *Requirements defined: 2025-01-14*
228
+ *Last updated: 2025-01-14 after initial definition*
229
+ ```
230
+
231
+ </example>
@@ -0,0 +1,204 @@
1
+ # Architecture Research Template
2
+
3
+ Template for `.planning/research/ARCHITECTURE.md` — system structure patterns for the project domain.
4
+
5
+ <template>
6
+
7
+ ```markdown
8
+ # Architecture Research
9
+
10
+ **Domain:** [domain type]
11
+ **Researched:** [date]
12
+ **Confidence:** [HIGH/MEDIUM/LOW]
13
+
14
+ ## Standard Architecture
15
+
16
+ ### System Overview
17
+
18
+ ```
19
+ ┌─────────────────────────────────────────────────────────────┐
20
+ │ [Layer Name] │
21
+ ├─────────────────────────────────────────────────────────────┤
22
+ │ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
23
+ │ │ [Comp] │ │ [Comp] │ │ [Comp] │ │ [Comp] │ │
24
+ │ └────┬────┘ └────┬────┘ └────┬────┘ └────┬────┘ │
25
+ │ │ │ │ │ │
26
+ ├───────┴────────────┴────────────┴────────────┴──────────────┤
27
+ │ [Layer Name] │
28
+ ├─────────────────────────────────────────────────────────────┤
29
+ │ ┌─────────────────────────────────────────────────────┐ │
30
+ │ │ [Component] │ │
31
+ │ └─────────────────────────────────────────────────────┘ │
32
+ ├─────────────────────────────────────────────────────────────┤
33
+ │ [Layer Name] │
34
+ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
35
+ │ │ [Store] │ │ [Store] │ │ [Store] │ │
36
+ │ └──────────┘ └──────────┘ └──────────┘ │
37
+ └─────────────────────────────────────────────────────────────┘
38
+ ```
39
+
40
+ ### Component Responsibilities
41
+
42
+ | Component | Responsibility | Typical Implementation |
43
+ |-----------|----------------|------------------------|
44
+ | [name] | [what it owns] | [how it's usually built] |
45
+ | [name] | [what it owns] | [how it's usually built] |
46
+ | [name] | [what it owns] | [how it's usually built] |
47
+
48
+ ## Recommended Project Structure
49
+
50
+ ```
51
+ src/
52
+ ├── [folder]/ # [purpose]
53
+ │ ├── [subfolder]/ # [purpose]
54
+ │ └── [file].ts # [purpose]
55
+ ├── [folder]/ # [purpose]
56
+ │ ├── [subfolder]/ # [purpose]
57
+ │ └── [file].ts # [purpose]
58
+ ├── [folder]/ # [purpose]
59
+ └── [folder]/ # [purpose]
60
+ ```
61
+
62
+ ### Structure Rationale
63
+
64
+ - **[folder]/:** [why organized this way]
65
+ - **[folder]/:** [why organized this way]
66
+
67
+ ## Architectural Patterns
68
+
69
+ ### Pattern 1: [Pattern Name]
70
+
71
+ **What:** [description]
72
+ **When to use:** [conditions]
73
+ **Trade-offs:** [pros and cons]
74
+
75
+ **Example:**
76
+ ```typescript
77
+ // [Brief code example showing the pattern]
78
+ ```
79
+
80
+ ### Pattern 2: [Pattern Name]
81
+
82
+ **What:** [description]
83
+ **When to use:** [conditions]
84
+ **Trade-offs:** [pros and cons]
85
+
86
+ **Example:**
87
+ ```typescript
88
+ // [Brief code example showing the pattern]
89
+ ```
90
+
91
+ ### Pattern 3: [Pattern Name]
92
+
93
+ **What:** [description]
94
+ **When to use:** [conditions]
95
+ **Trade-offs:** [pros and cons]
96
+
97
+ ## Data Flow
98
+
99
+ ### Request Flow
100
+
101
+ ```
102
+ [User Action]
103
+
104
+ [Component] → [Handler] → [Service] → [Data Store]
105
+ ↓ ↓ ↓ ↓
106
+ [Response] ← [Transform] ← [Query] ← [Database]
107
+ ```
108
+
109
+ ### State Management
110
+
111
+ ```
112
+ [State Store]
113
+ ↓ (subscribe)
114
+ [Components] ←→ [Actions] → [Reducers/Mutations] → [State Store]
115
+ ```
116
+
117
+ ### Key Data Flows
118
+
119
+ 1. **[Flow name]:** [description of how data moves]
120
+ 2. **[Flow name]:** [description of how data moves]
121
+
122
+ ## Scaling Considerations
123
+
124
+ | Scale | Architecture Adjustments |
125
+ |-------|--------------------------|
126
+ | 0-1k users | [approach — usually monolith is fine] |
127
+ | 1k-100k users | [approach — what to optimize first] |
128
+ | 100k+ users | [approach — when to consider splitting] |
129
+
130
+ ### Scaling Priorities
131
+
132
+ 1. **First bottleneck:** [what breaks first, how to fix]
133
+ 2. **Second bottleneck:** [what breaks next, how to fix]
134
+
135
+ ## Anti-Patterns
136
+
137
+ ### Anti-Pattern 1: [Name]
138
+
139
+ **What people do:** [the mistake]
140
+ **Why it's wrong:** [the problem it causes]
141
+ **Do this instead:** [the correct approach]
142
+
143
+ ### Anti-Pattern 2: [Name]
144
+
145
+ **What people do:** [the mistake]
146
+ **Why it's wrong:** [the problem it causes]
147
+ **Do this instead:** [the correct approach]
148
+
149
+ ## Integration Points
150
+
151
+ ### External Services
152
+
153
+ | Service | Integration Pattern | Notes |
154
+ |---------|---------------------|-------|
155
+ | [service] | [how to connect] | [gotchas] |
156
+ | [service] | [how to connect] | [gotchas] |
157
+
158
+ ### Internal Boundaries
159
+
160
+ | Boundary | Communication | Notes |
161
+ |----------|---------------|-------|
162
+ | [module A ↔ module B] | [API/events/direct] | [considerations] |
163
+
164
+ ## Sources
165
+
166
+ - [Architecture references]
167
+ - [Official documentation]
168
+ - [Case studies]
169
+
170
+ ---
171
+ *Architecture research for: [domain]*
172
+ *Researched: [date]*
173
+ ```
174
+
175
+ </template>
176
+
177
+ <guidelines>
178
+
179
+ **System Overview:**
180
+ - Use ASCII box-drawing diagrams for clarity (├── └── │ ─ for structure visualization only)
181
+ - Show major components and their relationships
182
+ - Don't over-detail — this is conceptual, not implementation
183
+
184
+ **Project Structure:**
185
+ - Be specific about folder organization
186
+ - Explain the rationale for grouping
187
+ - Match conventions of the chosen stack
188
+
189
+ **Patterns:**
190
+ - Include code examples where helpful
191
+ - Explain trade-offs honestly
192
+ - Note when patterns are overkill for small projects
193
+
194
+ **Scaling Considerations:**
195
+ - Be realistic — most projects don't need to scale to millions
196
+ - Focus on "what breaks first" not theoretical limits
197
+ - Avoid premature optimization recommendations
198
+
199
+ **Anti-Patterns:**
200
+ - Specific to this domain
201
+ - Include what to do instead
202
+ - Helps prevent common mistakes during implementation
203
+
204
+ </guidelines>