qualia-framework 2.6.0 → 3.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.
- package/CLAUDE.md +63 -0
- package/README.md +108 -30
- package/agents/builder.md +110 -0
- package/agents/planner.md +186 -0
- package/agents/qa-browser.md +186 -0
- package/agents/verifier.md +369 -0
- package/bin/cli.js +691 -492
- package/bin/install.js +622 -0
- package/bin/qualia-ui.js +284 -0
- package/bin/state.js +824 -0
- package/bin/statusline.js +252 -0
- package/docs/erp-contract.md +161 -0
- package/guide.md +63 -0
- package/hooks/auto-update.js +117 -0
- package/hooks/block-env-edit.js +52 -0
- package/hooks/branch-guard.js +68 -0
- package/hooks/migration-guard.js +83 -0
- package/hooks/pre-compact.js +52 -0
- package/hooks/pre-deploy-gate.js +149 -0
- package/hooks/pre-push.js +53 -0
- package/hooks/session-start.js +126 -0
- package/package.json +30 -20
- package/rules/design-reference.md +179 -0
- package/rules/frontend.md +126 -0
- package/rules/infrastructure.md +87 -0
- package/skills/qualia/SKILL.md +88 -0
- package/skills/qualia-build/SKILL.md +115 -0
- package/skills/qualia-debug/SKILL.md +87 -0
- package/skills/qualia-design/SKILL.md +99 -0
- package/skills/qualia-handoff/SKILL.md +66 -0
- package/skills/qualia-help/SKILL.md +60 -0
- package/skills/qualia-idk/SKILL.md +8 -0
- package/skills/qualia-learn/SKILL.md +111 -0
- package/skills/qualia-new/SKILL.md +323 -0
- package/skills/qualia-pause/SKILL.md +63 -0
- package/skills/qualia-plan/SKILL.md +101 -0
- package/skills/qualia-polish/SKILL.md +207 -0
- package/skills/qualia-quick/SKILL.md +37 -0
- package/skills/qualia-report/SKILL.md +114 -0
- package/skills/qualia-resume/SKILL.md +49 -0
- package/skills/qualia-review/SKILL.md +161 -0
- package/skills/qualia-ship/SKILL.md +90 -0
- package/skills/qualia-skill-new/SKILL.md +167 -0
- package/skills/qualia-task/SKILL.md +91 -0
- package/skills/qualia-test/SKILL.md +134 -0
- package/skills/qualia-verify/SKILL.md +113 -0
- package/templates/DESIGN.md +475 -0
- package/templates/help.html +476 -0
- package/templates/plan.md +42 -0
- package/templates/project.md +22 -0
- package/templates/state.md +27 -0
- package/templates/tracking.json +20 -0
- package/tests/bin.test.sh +687 -0
- package/tests/hooks.test.sh +384 -0
- package/tests/runner.js +1956 -0
- package/tests/state.test.sh +713 -0
- package/tests/statusline.test.sh +243 -0
- package/bin/collect-metrics.sh +0 -62
- package/framework/.claudeignore +0 -51
- package/framework/CLAUDE.md +0 -51
- package/framework/MCP_SETUP.md +0 -229
- package/framework/agents/architecture-strategist.md +0 -53
- package/framework/agents/backend-agent.md +0 -150
- package/framework/agents/code-simplicity-reviewer.md +0 -86
- package/framework/agents/frontend-agent.md +0 -111
- package/framework/agents/kieran-typescript-reviewer.md +0 -96
- package/framework/agents/performance-oracle.md +0 -111
- package/framework/agents/qualia-codebase-mapper.md +0 -761
- package/framework/agents/qualia-debugger.md +0 -1204
- package/framework/agents/qualia-executor.md +0 -882
- package/framework/agents/qualia-integration-checker.md +0 -424
- package/framework/agents/qualia-phase-researcher.md +0 -457
- package/framework/agents/qualia-plan-checker.md +0 -700
- package/framework/agents/qualia-planner.md +0 -1245
- package/framework/agents/qualia-project-researcher.md +0 -603
- package/framework/agents/qualia-research-synthesizer.md +0 -200
- package/framework/agents/qualia-roadmapper.md +0 -606
- package/framework/agents/qualia-verifier.md +0 -686
- package/framework/agents/red-team-qa.md +0 -130
- package/framework/agents/security-auditor.md +0 -72
- package/framework/agents/team-orchestrator.md +0 -229
- package/framework/agents/teams/framework-audit-team.md +0 -66
- package/framework/agents/teams/full-stack-team.md +0 -48
- package/framework/agents/teams/optimize-team.md +0 -53
- package/framework/agents/teams/review-team.md +0 -70
- package/framework/agents/teams/ship-team.md +0 -86
- package/framework/agents/test-agent.md +0 -182
- package/framework/hooks/auto-format.sh +0 -54
- package/framework/hooks/block-env-edit.sh +0 -42
- package/framework/hooks/branch-guard.sh +0 -43
- package/framework/hooks/confirm-delete.sh +0 -59
- package/framework/hooks/migration-validate.sh +0 -77
- package/framework/hooks/notification-speak.sh +0 -16
- package/framework/hooks/pre-commit.sh +0 -100
- package/framework/hooks/pre-compact.sh +0 -56
- package/framework/hooks/pre-deploy-gate.sh +0 -160
- package/framework/hooks/qualia-colors.sh +0 -32
- package/framework/hooks/retention-cleanup.sh +0 -62
- package/framework/hooks/save-session-state.sh +0 -185
- package/framework/hooks/session-context-loader.sh +0 -96
- package/framework/hooks/session-learn.sh +0 -32
- package/framework/hooks/skill-announce.sh +0 -123
- package/framework/hooks/tool-error-announce.sh +0 -27
- package/framework/install.ps1 +0 -323
- package/framework/install.sh +0 -313
- package/framework/qualia-framework/VERSION +0 -1
- package/framework/qualia-framework/assets/qualia-logo.png +0 -0
- package/framework/qualia-framework/bin/collect-metrics.sh +0 -67
- package/framework/qualia-framework/bin/generate-report-docx.py +0 -429
- package/framework/qualia-framework/bin/qualia-tools.js +0 -2201
- package/framework/qualia-framework/bin/qualia-tools.test.js +0 -1054
- package/framework/qualia-framework/references/checkpoints.md +0 -775
- package/framework/qualia-framework/references/completion-checklists.md +0 -359
- package/framework/qualia-framework/references/continuation-format.md +0 -249
- package/framework/qualia-framework/references/continuation-prompt.md +0 -97
- package/framework/qualia-framework/references/decimal-phase-calculation.md +0 -65
- package/framework/qualia-framework/references/design-quality.md +0 -56
- package/framework/qualia-framework/references/employee-guide.md +0 -167
- package/framework/qualia-framework/references/git-integration.md +0 -254
- package/framework/qualia-framework/references/git-planning-commit.md +0 -50
- package/framework/qualia-framework/references/model-profile-resolution.md +0 -32
- package/framework/qualia-framework/references/model-profiles.md +0 -73
- package/framework/qualia-framework/references/phase-argument-parsing.md +0 -61
- package/framework/qualia-framework/references/planning-config.md +0 -195
- package/framework/qualia-framework/references/questioning.md +0 -141
- package/framework/qualia-framework/references/tdd.md +0 -263
- package/framework/qualia-framework/references/ui-brand.md +0 -160
- package/framework/qualia-framework/references/verification-patterns.md +0 -612
- package/framework/qualia-framework/templates/DEBUG.md +0 -159
- package/framework/qualia-framework/templates/DESIGN.md +0 -81
- package/framework/qualia-framework/templates/UAT.md +0 -247
- package/framework/qualia-framework/templates/codebase/architecture.md +0 -255
- package/framework/qualia-framework/templates/codebase/concerns.md +0 -310
- package/framework/qualia-framework/templates/codebase/conventions.md +0 -307
- package/framework/qualia-framework/templates/codebase/integrations.md +0 -280
- package/framework/qualia-framework/templates/codebase/stack.md +0 -186
- package/framework/qualia-framework/templates/codebase/structure.md +0 -285
- package/framework/qualia-framework/templates/codebase/testing.md +0 -480
- package/framework/qualia-framework/templates/config.json +0 -35
- package/framework/qualia-framework/templates/context.md +0 -283
- package/framework/qualia-framework/templates/continue-here.md +0 -78
- package/framework/qualia-framework/templates/debug-subagent-prompt.md +0 -91
- package/framework/qualia-framework/templates/discovery.md +0 -146
- package/framework/qualia-framework/templates/lab-notes.md +0 -16
- package/framework/qualia-framework/templates/milestone-archive.md +0 -123
- package/framework/qualia-framework/templates/milestone.md +0 -115
- package/framework/qualia-framework/templates/phase-prompt.md +0 -567
- package/framework/qualia-framework/templates/planner-subagent-prompt.md +0 -117
- package/framework/qualia-framework/templates/project.md +0 -184
- package/framework/qualia-framework/templates/projects/ai-agent.md +0 -156
- package/framework/qualia-framework/templates/projects/mobile-app.md +0 -181
- package/framework/qualia-framework/templates/projects/voice-agent.md +0 -134
- package/framework/qualia-framework/templates/projects/website.md +0 -137
- package/framework/qualia-framework/templates/requirements.md +0 -231
- package/framework/qualia-framework/templates/research-project/ARCHITECTURE.md +0 -204
- package/framework/qualia-framework/templates/research-project/FEATURES.md +0 -147
- package/framework/qualia-framework/templates/research-project/PITFALLS.md +0 -200
- package/framework/qualia-framework/templates/research-project/STACK.md +0 -120
- package/framework/qualia-framework/templates/research-project/SUMMARY.md +0 -170
- package/framework/qualia-framework/templates/research.md +0 -552
- package/framework/qualia-framework/templates/roadmap.md +0 -206
- package/framework/qualia-framework/templates/state.md +0 -179
- package/framework/qualia-framework/templates/summary-complex.md +0 -59
- package/framework/qualia-framework/templates/summary-minimal.md +0 -41
- package/framework/qualia-framework/templates/summary-standard.md +0 -48
- package/framework/qualia-framework/templates/summary.md +0 -246
- package/framework/qualia-framework/templates/user-setup.md +0 -311
- package/framework/qualia-framework/templates/verification-report.md +0 -322
- package/framework/qualia-framework/workflows/add-phase.md +0 -179
- package/framework/qualia-framework/workflows/add-todo.md +0 -157
- package/framework/qualia-framework/workflows/audit-milestone.md +0 -241
- package/framework/qualia-framework/workflows/check-todos.md +0 -176
- package/framework/qualia-framework/workflows/complete-milestone.md +0 -858
- package/framework/qualia-framework/workflows/diagnose-issues.md +0 -219
- package/framework/qualia-framework/workflows/discovery-phase.md +0 -289
- package/framework/qualia-framework/workflows/discuss-phase.md +0 -534
- package/framework/qualia-framework/workflows/execute-phase.md +0 -559
- package/framework/qualia-framework/workflows/execute-plan.md +0 -438
- package/framework/qualia-framework/workflows/help.md +0 -470
- package/framework/qualia-framework/workflows/insert-phase.md +0 -220
- package/framework/qualia-framework/workflows/list-phase-assumptions.md +0 -178
- package/framework/qualia-framework/workflows/map-codebase.md +0 -327
- package/framework/qualia-framework/workflows/new-milestone.md +0 -363
- package/framework/qualia-framework/workflows/new-project.md +0 -982
- package/framework/qualia-framework/workflows/pause-work.md +0 -122
- package/framework/qualia-framework/workflows/plan-milestone-gaps.md +0 -256
- package/framework/qualia-framework/workflows/plan-phase.md +0 -422
- package/framework/qualia-framework/workflows/progress.md +0 -389
- package/framework/qualia-framework/workflows/quick.md +0 -252
- package/framework/qualia-framework/workflows/remove-phase.md +0 -326
- package/framework/qualia-framework/workflows/research-phase.md +0 -74
- package/framework/qualia-framework/workflows/resume-project.md +0 -306
- package/framework/qualia-framework/workflows/set-profile.md +0 -80
- package/framework/qualia-framework/workflows/settings.md +0 -145
- package/framework/qualia-framework/workflows/transition.md +0 -556
- package/framework/qualia-framework/workflows/update.md +0 -197
- package/framework/qualia-framework/workflows/verify-phase.md +0 -195
- package/framework/qualia-framework/workflows/verify-work.md +0 -625
- package/framework/rules/context7.md +0 -14
- package/framework/rules/frontend.md +0 -33
- package/framework/rules/speed.md +0 -23
- package/framework/scripts/__pycache__/say.cpython-314.pyc +0 -0
- package/framework/scripts/apply-retention.sh +0 -120
- package/framework/scripts/bootstrap-pop-os.sh +0 -354
- package/framework/scripts/claude-voice +0 -13
- package/framework/scripts/cleanup.sh +0 -131
- package/framework/scripts/cowork-mode.sh +0 -141
- package/framework/scripts/generate-project-claude-md.sh +0 -153
- package/framework/scripts/load-test-webhook.js +0 -172
- package/framework/scripts/say.py +0 -236
- package/framework/scripts/showcase-video-recorder/ffmpeg-builder.js +0 -167
- package/framework/scripts/showcase-video-recorder/playwright-helpers.js +0 -216
- package/framework/scripts/speak.py +0 -55
- package/framework/scripts/speak.sh +0 -18
- package/framework/scripts/status.sh +0 -138
- package/framework/scripts/sync-to-framework.sh +0 -65
- package/framework/scripts/voice-hotkey.py +0 -227
- package/framework/scripts/voice-input.sh +0 -51
- package/framework/skills/animate/SKILL.md +0 -202
- package/framework/skills/bolder/SKILL.md +0 -144
- package/framework/skills/browser-qa/SKILL.md +0 -536
- package/framework/skills/clarify/SKILL.md +0 -179
- package/framework/skills/client-handoff/SKILL.md +0 -135
- package/framework/skills/collab-onboard/SKILL.md +0 -111
- package/framework/skills/colorize/SKILL.md +0 -170
- package/framework/skills/critique/SKILL.md +0 -126
- package/framework/skills/deep-research/SKILL.md +0 -240
- package/framework/skills/delight/SKILL.md +0 -329
- package/framework/skills/deploy/SKILL.md +0 -261
- package/framework/skills/deploy-verify/SKILL.md +0 -377
- package/framework/skills/deploy-verify/scripts/canary-check.sh +0 -206
- package/framework/skills/deploy-verify/scripts/check-console-errors.js +0 -147
- package/framework/skills/deploy-verify/scripts/check-cwv.js +0 -139
- package/framework/skills/deploy-verify/scripts/project-detect.sh +0 -84
- package/framework/skills/deploy-verify/scripts/verify.sh +0 -548
- package/framework/skills/design-quieter/SKILL.md +0 -130
- package/framework/skills/distill/SKILL.md +0 -149
- package/framework/skills/docs-lookup/SKILL.md +0 -79
- package/framework/skills/fcm-notifications/SKILL.md +0 -125
- package/framework/skills/financial-ledger/SKILL.md +0 -1039
- package/framework/skills/frontend-master/NOTICE.md +0 -4
- package/framework/skills/frontend-master/SKILL.md +0 -127
- package/framework/skills/frontend-master/reference/color-and-contrast.md +0 -132
- package/framework/skills/frontend-master/reference/interaction-design.md +0 -123
- package/framework/skills/frontend-master/reference/motion-design.md +0 -99
- package/framework/skills/frontend-master/reference/responsive-design.md +0 -114
- package/framework/skills/frontend-master/reference/spatial-design.md +0 -100
- package/framework/skills/frontend-master/reference/typography.md +0 -131
- package/framework/skills/frontend-master/reference/ux-writing.md +0 -107
- package/framework/skills/harden/SKILL.md +0 -357
- package/framework/skills/i18n-rtl/SKILL.md +0 -752
- package/framework/skills/learn/SKILL.md +0 -95
- package/framework/skills/memory/SKILL.md +0 -50
- package/framework/skills/mobile-expo/SKILL.md +0 -977
- package/framework/skills/mobile-expo/references/store-checklist.md +0 -550
- package/framework/skills/nestjs-backend/README.md +0 -73
- package/framework/skills/nestjs-backend/SKILL.md +0 -446
- package/framework/skills/nestjs-backend/references/templates.md +0 -1173
- package/framework/skills/normalize/SKILL.md +0 -79
- package/framework/skills/onboard/SKILL.md +0 -242
- package/framework/skills/openrouter-agent/SKILL.md +0 -922
- package/framework/skills/polish/SKILL.md +0 -209
- package/framework/skills/pr/SKILL.md +0 -66
- package/framework/skills/qualia/SKILL.md +0 -199
- package/framework/skills/qualia-add-todo/SKILL.md +0 -68
- package/framework/skills/qualia-audit-milestone/SKILL.md +0 -95
- package/framework/skills/qualia-check-todos/SKILL.md +0 -55
- package/framework/skills/qualia-complete-milestone/SKILL.md +0 -134
- package/framework/skills/qualia-debug/SKILL.md +0 -149
- package/framework/skills/qualia-design/SKILL.md +0 -203
- package/framework/skills/qualia-discuss-phase/SKILL.md +0 -72
- package/framework/skills/qualia-evolve/SKILL.md +0 -200
- package/framework/skills/qualia-execute-phase/SKILL.md +0 -89
- package/framework/skills/qualia-framework-audit/SKILL.md +0 -604
- package/framework/skills/qualia-guide/SKILL.md +0 -32
- package/framework/skills/qualia-help/SKILL.md +0 -114
- package/framework/skills/qualia-idk/SKILL.md +0 -352
- package/framework/skills/qualia-list-phase-assumptions/SKILL.md +0 -67
- package/framework/skills/qualia-new-milestone/SKILL.md +0 -72
- package/framework/skills/qualia-new-project/SKILL.md +0 -232
- package/framework/skills/qualia-optimize/SKILL.md +0 -417
- package/framework/skills/qualia-pause-work/SKILL.md +0 -96
- package/framework/skills/qualia-plan-milestone-gaps/SKILL.md +0 -57
- package/framework/skills/qualia-plan-phase/SKILL.md +0 -104
- package/framework/skills/qualia-production-check/SKILL.md +0 -0
- package/framework/skills/qualia-progress/SKILL.md +0 -53
- package/framework/skills/qualia-quick/SKILL.md +0 -89
- package/framework/skills/qualia-report/SKILL.md +0 -166
- package/framework/skills/qualia-research-phase/SKILL.md +0 -88
- package/framework/skills/qualia-resume-work/SKILL.md +0 -62
- package/framework/skills/qualia-review/SKILL.md +0 -263
- package/framework/skills/qualia-start/SKILL.md +0 -161
- package/framework/skills/qualia-verify-work/SKILL.md +0 -132
- package/framework/skills/rag/SKILL.md +0 -750
- package/framework/skills/responsive/SKILL.md +0 -231
- package/framework/skills/retro/SKILL.md +0 -284
- package/framework/skills/sakani-conventions/SKILL.md +0 -136
- package/framework/skills/sakani-conventions/evals/evals.json +0 -23
- package/framework/skills/sakani-conventions/references/entities.md +0 -365
- package/framework/skills/sakani-conventions/references/error-codes.md +0 -95
- package/framework/skills/seo-master/SKILL.md +0 -490
- package/framework/skills/seo-master/references/checklist.md +0 -199
- package/framework/skills/seo-master/references/structured-data.md +0 -609
- package/framework/skills/ship/SKILL.md +0 -239
- package/framework/skills/stack-researcher/SKILL.md +0 -215
- package/framework/skills/status/SKILL.md +0 -154
- package/framework/skills/status/scripts/health-check.sh +0 -562
- package/framework/skills/subscription-payments/SKILL.md +0 -250
- package/framework/skills/supabase/SKILL.md +0 -973
- package/framework/skills/supabase/references/templates.md +0 -159
- package/framework/skills/team/SKILL.md +0 -67
- package/framework/skills/test-runner/SKILL.md +0 -202
- package/framework/skills/voice-agent/SKILL.md +0 -1312
- package/framework/skills/zoho-workflow/SKILL.md +0 -51
- package/framework/statusline-command.sh +0 -117
- package/framework/teams/default/inboxes/plan-04.json +0 -9
- package/framework/teams/review-team.md +0 -75
- package/framework/teams/ship-team.md +0 -86
- package/profiles/fawzi.json +0 -16
- package/profiles/hasan.json +0 -16
- package/profiles/moayad.json +0 -16
- package/templates/CLAUDE-owner.md +0 -52
- package/templates/CLAUDE.md.hbs +0 -58
- package/templates/env.claude.template +0 -12
- package/templates/settings.json +0 -172
- package/uninstall.sh +0 -90
- /package/{framework/rules → rules}/deployment.md +0 -0
- /package/{framework/rules → rules}/security.md +0 -0
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: clarify
|
|
3
|
-
description: Improve unclear UX copy, error messages, microcopy, labels, and instructions. Makes interfaces easier to understand and use.
|
|
4
|
-
user-invokable: true
|
|
5
|
-
args:
|
|
6
|
-
- name: target
|
|
7
|
-
description: The feature or component with unclear copy (optional)
|
|
8
|
-
required: false
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
Identify and improve unclear, confusing, or poorly written interface text to make the product easier to understand and use.
|
|
12
|
-
|
|
13
|
-
## Assess Current Copy
|
|
14
|
-
|
|
15
|
-
Identify what makes the text unclear or ineffective:
|
|
16
|
-
|
|
17
|
-
1. **Find clarity problems**:
|
|
18
|
-
- **Jargon**: Technical terms users won't understand
|
|
19
|
-
- **Ambiguity**: Multiple interpretations possible
|
|
20
|
-
- **Passive voice**: "Your file has been uploaded" vs "We uploaded your file"
|
|
21
|
-
- **Length**: Too wordy or too terse
|
|
22
|
-
- **Assumptions**: Assuming user knowledge they don't have
|
|
23
|
-
- **Missing context**: Users don't know what to do or why
|
|
24
|
-
- **Tone mismatch**: Too formal, too casual, or inappropriate for situation
|
|
25
|
-
|
|
26
|
-
2. **Understand the context**:
|
|
27
|
-
- Who's the audience? (Technical? General? First-time users?)
|
|
28
|
-
- What's the user's mental state? (Stressed during error? Confident during success?)
|
|
29
|
-
- What's the action? (What do we want users to do?)
|
|
30
|
-
- What's the constraint? (Character limits? Space limitations?)
|
|
31
|
-
|
|
32
|
-
**CRITICAL**: Clear copy helps users succeed. Unclear copy creates frustration, errors, and support tickets.
|
|
33
|
-
|
|
34
|
-
## Plan Copy Improvements
|
|
35
|
-
|
|
36
|
-
Create a strategy for clearer communication:
|
|
37
|
-
|
|
38
|
-
- **Primary message**: What's the ONE thing users need to know?
|
|
39
|
-
- **Action needed**: What should users do next (if anything)?
|
|
40
|
-
- **Tone**: How should this feel? (Helpful? Apologetic? Encouraging?)
|
|
41
|
-
- **Constraints**: Length limits, brand voice, localization considerations
|
|
42
|
-
|
|
43
|
-
**IMPORTANT**: Good UX writing is invisible. Users should understand immediately without noticing the words.
|
|
44
|
-
|
|
45
|
-
## Improve Copy Systematically
|
|
46
|
-
|
|
47
|
-
Refine text across these common areas:
|
|
48
|
-
|
|
49
|
-
### Error Messages
|
|
50
|
-
**Bad**: "Error 403: Forbidden"
|
|
51
|
-
**Good**: "You don't have permission to view this page. Contact your admin for access."
|
|
52
|
-
|
|
53
|
-
**Bad**: "Invalid input"
|
|
54
|
-
**Good**: "Email addresses need an @ symbol. Try: name@example.com"
|
|
55
|
-
|
|
56
|
-
**Principles**:
|
|
57
|
-
- Explain what went wrong in plain language
|
|
58
|
-
- Suggest how to fix it
|
|
59
|
-
- Don't blame the user
|
|
60
|
-
- Include examples when helpful
|
|
61
|
-
- Link to help/support if applicable
|
|
62
|
-
|
|
63
|
-
### Form Labels & Instructions
|
|
64
|
-
**Bad**: "DOB (MM/DD/YYYY)"
|
|
65
|
-
**Good**: "Date of birth" (with placeholder showing format)
|
|
66
|
-
|
|
67
|
-
**Bad**: "Enter value here"
|
|
68
|
-
**Good**: "Your email address" or "Company name"
|
|
69
|
-
|
|
70
|
-
**Principles**:
|
|
71
|
-
- Use clear, specific labels (not generic placeholders)
|
|
72
|
-
- Show format expectations with examples
|
|
73
|
-
- Explain why you're asking (when not obvious)
|
|
74
|
-
- Put instructions before the field, not after
|
|
75
|
-
- Keep required field indicators clear
|
|
76
|
-
|
|
77
|
-
### Button & CTA Text
|
|
78
|
-
**Bad**: "Click here" | "Submit" | "OK"
|
|
79
|
-
**Good**: "Create account" | "Save changes" | "Got it, thanks"
|
|
80
|
-
|
|
81
|
-
**Principles**:
|
|
82
|
-
- Describe the action specifically
|
|
83
|
-
- Use active voice (verb + noun)
|
|
84
|
-
- Match user's mental model
|
|
85
|
-
- Be specific ("Save" is better than "OK")
|
|
86
|
-
|
|
87
|
-
### Help Text & Tooltips
|
|
88
|
-
**Bad**: "This is the username field"
|
|
89
|
-
**Good**: "Choose a username. You can change this later in Settings."
|
|
90
|
-
|
|
91
|
-
**Principles**:
|
|
92
|
-
- Add value (don't just repeat the label)
|
|
93
|
-
- Answer the implicit question ("What is this?" or "Why do you need this?")
|
|
94
|
-
- Keep it brief but complete
|
|
95
|
-
- Link to detailed docs if needed
|
|
96
|
-
|
|
97
|
-
### Empty States
|
|
98
|
-
**Bad**: "No items"
|
|
99
|
-
**Good**: "No projects yet. Create your first project to get started."
|
|
100
|
-
|
|
101
|
-
**Principles**:
|
|
102
|
-
- Explain why it's empty (if not obvious)
|
|
103
|
-
- Show next action clearly
|
|
104
|
-
- Make it welcoming, not dead-end
|
|
105
|
-
|
|
106
|
-
### Success Messages
|
|
107
|
-
**Bad**: "Success"
|
|
108
|
-
**Good**: "Settings saved! Your changes will take effect immediately."
|
|
109
|
-
|
|
110
|
-
**Principles**:
|
|
111
|
-
- Confirm what happened
|
|
112
|
-
- Explain what happens next (if relevant)
|
|
113
|
-
- Be brief but complete
|
|
114
|
-
- Match the user's emotional moment (celebrate big wins)
|
|
115
|
-
|
|
116
|
-
### Loading States
|
|
117
|
-
**Bad**: "Loading..." (for 30+ seconds)
|
|
118
|
-
**Good**: "Analyzing your data... this usually takes 30-60 seconds"
|
|
119
|
-
|
|
120
|
-
**Principles**:
|
|
121
|
-
- Set expectations (how long?)
|
|
122
|
-
- Explain what's happening (when it's not obvious)
|
|
123
|
-
- Show progress when possible
|
|
124
|
-
- Offer escape hatch if appropriate ("Cancel")
|
|
125
|
-
|
|
126
|
-
### Confirmation Dialogs
|
|
127
|
-
**Bad**: "Are you sure?"
|
|
128
|
-
**Good**: "Delete 'Project Alpha'? This can't be undone."
|
|
129
|
-
|
|
130
|
-
**Principles**:
|
|
131
|
-
- State the specific action
|
|
132
|
-
- Explain consequences (especially for destructive actions)
|
|
133
|
-
- Use clear button labels ("Delete project" not "Yes")
|
|
134
|
-
- Don't overuse confirmations (only for risky actions)
|
|
135
|
-
|
|
136
|
-
### Navigation & Wayfinding
|
|
137
|
-
**Bad**: Generic labels like "Items" | "Things" | "Stuff"
|
|
138
|
-
**Good**: Specific labels like "Your projects" | "Team members" | "Settings"
|
|
139
|
-
|
|
140
|
-
**Principles**:
|
|
141
|
-
- Be specific and descriptive
|
|
142
|
-
- Use language users understand (not internal jargon)
|
|
143
|
-
- Make hierarchy clear
|
|
144
|
-
- Consider information scent (breadcrumbs, current location)
|
|
145
|
-
|
|
146
|
-
## Apply Clarity Principles
|
|
147
|
-
|
|
148
|
-
Every piece of copy should follow these rules:
|
|
149
|
-
|
|
150
|
-
1. **Be specific**: "Enter email" not "Enter value"
|
|
151
|
-
2. **Be concise**: Cut unnecessary words (but don't sacrifice clarity)
|
|
152
|
-
3. **Be active**: "Save changes" not "Changes will be saved"
|
|
153
|
-
4. **Be human**: "Oops, something went wrong" not "System error encountered"
|
|
154
|
-
5. **Be helpful**: Tell users what to do, not just what happened
|
|
155
|
-
6. **Be consistent**: Use same terms throughout (don't vary for variety)
|
|
156
|
-
|
|
157
|
-
**NEVER**:
|
|
158
|
-
- Use jargon without explanation
|
|
159
|
-
- Blame users ("You made an error" → "This field is required")
|
|
160
|
-
- Be vague ("Something went wrong" without explanation)
|
|
161
|
-
- Use passive voice unnecessarily
|
|
162
|
-
- Write overly long explanations (be concise)
|
|
163
|
-
- Use humor for errors (be empathetic instead)
|
|
164
|
-
- Assume technical knowledge
|
|
165
|
-
- Vary terminology (pick one term and stick with it)
|
|
166
|
-
- Repeat information (headers restating intros, redundant explanations)
|
|
167
|
-
- Use placeholders as the only labels (they disappear when users type)
|
|
168
|
-
|
|
169
|
-
## Verify Improvements
|
|
170
|
-
|
|
171
|
-
Test that copy improvements work:
|
|
172
|
-
|
|
173
|
-
- **Comprehension**: Can users understand without context?
|
|
174
|
-
- **Actionability**: Do users know what to do next?
|
|
175
|
-
- **Brevity**: Is it as short as possible while remaining clear?
|
|
176
|
-
- **Consistency**: Does it match terminology elsewhere?
|
|
177
|
-
- **Tone**: Is it appropriate for the situation?
|
|
178
|
-
|
|
179
|
-
Remember: You're a clarity expert with excellent communication skills. Write like you're explaining to a smart friend who's unfamiliar with the product. Be clear, be helpful, be human.
|
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: client-handoff
|
|
3
|
-
description: "Generate client-facing project deliverables — handoff document, feature summary, credentials guide, known limitations, and maintenance notes. Use this skill whenever the user says 'handoff', 'client handoff', 'wrap up for client', 'project handoff', 'deliver to client', 'client delivery', 'hand over', or wants to prepare a project for client delivery. Also trigger after milestone completion when next step is client-facing."
|
|
4
|
-
tags: [client, handoff, delivery, documentation]
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Client Handoff — Project Delivery Document Generator
|
|
8
|
-
|
|
9
|
-
Generate a polished, client-facing HANDOFF.md when a project is ready for delivery. Output is written for non-technical clients.
|
|
10
|
-
|
|
11
|
-
## Usage
|
|
12
|
-
|
|
13
|
-
`/client-handoff` — Generate handoff document for the current project
|
|
14
|
-
|
|
15
|
-
## Process
|
|
16
|
-
|
|
17
|
-
### Step 1: Load Project Context
|
|
18
|
-
|
|
19
|
-
Read the following files to build a full picture of what was built and for whom:
|
|
20
|
-
|
|
21
|
-
- `.planning/PROJECT.md` — project name, client, deploy target
|
|
22
|
-
- `.planning/ROADMAP.md` — what was built (phases)
|
|
23
|
-
- `.planning/REQUIREMENTS.md` — what was requested
|
|
24
|
-
- `.planning/STATE.md` — milestone status
|
|
25
|
-
- Phase `SUMMARY.md` files — what was actually delivered per phase
|
|
26
|
-
- `CHANGELOG.md` — if exists
|
|
27
|
-
- `package.json` — for project name/URLs
|
|
28
|
-
|
|
29
|
-
Also detect:
|
|
30
|
-
- **Production URL** from Vercel project settings or PROJECT.md
|
|
31
|
-
- **Supabase project ref** (if applicable) — check `.env.local` variable names or PROJECT.md
|
|
32
|
-
- **Auth method** used (email/password, magic link, OAuth, etc.)
|
|
33
|
-
|
|
34
|
-
If any critical file is missing, note it and proceed with what's available. Do NOT block on missing files.
|
|
35
|
-
|
|
36
|
-
### Step 2: Generate HANDOFF.md at Project Root
|
|
37
|
-
|
|
38
|
-
Write the document using this exact structure. All copy must be **plain language** — no jargon, no technical implementation details. Written for someone who has never seen the codebase.
|
|
39
|
-
|
|
40
|
-
```markdown
|
|
41
|
-
# {Project Name} — Client Handoff
|
|
42
|
-
|
|
43
|
-
## Live URL
|
|
44
|
-
{production URL}
|
|
45
|
-
|
|
46
|
-
## What We Built
|
|
47
|
-
{Plain-language summary of features, NOT technical. Written for the client.}
|
|
48
|
-
- Feature 1: {what it does for the user}
|
|
49
|
-
- Feature 2: {what it does for the user}
|
|
50
|
-
...
|
|
51
|
-
|
|
52
|
-
## How to Use
|
|
53
|
-
{Brief walkthrough of the main user flows — written for someone who's never seen the app}
|
|
54
|
-
|
|
55
|
-
### For admins (if applicable)
|
|
56
|
-
- How to access the admin panel
|
|
57
|
-
- Key admin actions
|
|
58
|
-
|
|
59
|
-
## Access & Credentials
|
|
60
|
-
| Service | URL | How to Access |
|
|
61
|
-
|---------|-----|---------------|
|
|
62
|
-
| Website | {url} | Public |
|
|
63
|
-
| Admin Panel | {url}/admin | Login with your email |
|
|
64
|
-
| Supabase Dashboard | https://supabase.com/dashboard/project/{ref} | Fawzi manages access |
|
|
65
|
-
| Vercel Dashboard | vercel.com | Fawzi manages access |
|
|
66
|
-
| Domain/DNS | {registrar} | Client manages |
|
|
67
|
-
|
|
68
|
-
> **Note:** API keys and database credentials are managed by Qualia Solutions. Contact us if you need access changes.
|
|
69
|
-
|
|
70
|
-
## Known Limitations
|
|
71
|
-
{Anything that doesn't work yet, scope that was deferred, or edge cases the client should know about}
|
|
72
|
-
|
|
73
|
-
## Maintenance & Support
|
|
74
|
-
- **Hosting:** Vercel (auto-deploys from GitHub)
|
|
75
|
-
- **Database:** Supabase (managed Postgres)
|
|
76
|
-
- **Monitoring:** UptimeRobot — {monitoring URL if set up}
|
|
77
|
-
- **Updates:** Contact Qualia Solutions for feature requests or bug fixes
|
|
78
|
-
- **Domain renewal:** {who manages it, when it expires if known}
|
|
79
|
-
|
|
80
|
-
## Technical Reference (for developers)
|
|
81
|
-
- **Stack:** {e.g. Next.js + React + TypeScript + Supabase + Tailwind}
|
|
82
|
-
- **Repo:** {GitHub URL}
|
|
83
|
-
- **Branch:** main
|
|
84
|
-
- **Deploy:** Push to main auto-deploys to Vercel
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
Adapt the template to the project:
|
|
88
|
-
- Remove sections that don't apply (e.g. no admin panel = skip that subsection)
|
|
89
|
-
- Add sections if needed (e.g. mobile app = add app store links)
|
|
90
|
-
- Adjust the tech stack line to match what was actually used
|
|
91
|
-
- If no Supabase, remove that row from the credentials table
|
|
92
|
-
|
|
93
|
-
### Step 3: Confirm with User
|
|
94
|
-
|
|
95
|
-
Display the full generated document and ask:
|
|
96
|
-
|
|
97
|
-
> "Here's the client handoff document. Review it and let me know if anything needs adjusting before I save it."
|
|
98
|
-
|
|
99
|
-
Do NOT write the file until the user confirms. Wait for approval or edits.
|
|
100
|
-
|
|
101
|
-
### Step 4: Save & Commit
|
|
102
|
-
|
|
103
|
-
After user approval, write `HANDOFF.md` to the project root and commit:
|
|
104
|
-
|
|
105
|
-
```bash
|
|
106
|
-
git add HANDOFF.md
|
|
107
|
-
git commit -m "docs: add client handoff document"
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
### Step 5: Collect Framework Metrics
|
|
111
|
-
|
|
112
|
-
Auto-collect performance metrics for this project (feeds the `/qualia-evolve` optimization loop):
|
|
113
|
-
|
|
114
|
-
```bash
|
|
115
|
-
bash ~/.claude/qualia-framework/bin/collect-metrics.sh "$(pwd)"
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
This is silent — no user interaction needed.
|
|
119
|
-
|
|
120
|
-
### Step 6: Route Next Steps
|
|
121
|
-
|
|
122
|
-
After saving, present options:
|
|
123
|
-
|
|
124
|
-
> "Handoff document saved. Framework metrics collected. Next steps:"
|
|
125
|
-
> - "Share `HANDOFF.md` content with the client (email, PDF, or portal)"
|
|
126
|
-
> - "Run `/qualia-production-check` to verify everything works before handoff"
|
|
127
|
-
> - "Run `/qualia-evolve` to analyze this project and improve the framework for next time"
|
|
128
|
-
|
|
129
|
-
## Guidelines
|
|
130
|
-
|
|
131
|
-
- **Tone:** Professional but warm. The client is not a developer.
|
|
132
|
-
- **No secrets:** Never include API keys, service role keys, or database passwords in the document.
|
|
133
|
-
- **No jargon:** Avoid terms like "RLS", "middleware", "SSR", "edge functions" in client-facing sections. The Technical Reference section at the bottom is the only place for developer terminology.
|
|
134
|
-
- **Honest about limitations:** If something was descoped or has known issues, say so clearly. Clients respect transparency.
|
|
135
|
-
- **Keep it short:** The document should be scannable in 2 minutes. If a section needs more detail, link to separate docs rather than bloating the handoff.
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: collab-onboard
|
|
3
|
-
description: "Project-specific onboarding for new collaborators — reads .planning/ and codebase to generate orientation: what's built, patterns used, how to contribute, current state. Use this skill whenever the user says 'onboard me', 'new to this project', 'what's been built', 'orient me', 'project overview', 'get me up to speed', 'collab-onboard', or is clearly a new developer joining an existing project. Also trigger when someone asks 'how does this project work' or 'what should I know about this codebase'."
|
|
4
|
-
tags: [onboarding, project, orientation, developer]
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## Process
|
|
8
|
-
|
|
9
|
-
### Step 1: Gather Project Context
|
|
10
|
-
|
|
11
|
-
Read all of these (skip if missing):
|
|
12
|
-
```bash
|
|
13
|
-
cat .planning/PROJECT.md 2>/dev/null || echo "NO_PROJECT"
|
|
14
|
-
cat .planning/ROADMAP.md 2>/dev/null || echo "NO_ROADMAP"
|
|
15
|
-
cat .planning/STATE.md 2>/dev/null || echo "NO_STATE"
|
|
16
|
-
cat .planning/DESIGN.md 2>/dev/null || echo "NO_DESIGN"
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
```bash
|
|
20
|
-
# Project structure
|
|
21
|
-
ls -d app/ src/ pages/ components/ lib/ actions/ hooks/ supabase/ types/ public/ 2>/dev/null
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
```bash
|
|
25
|
-
# Package info
|
|
26
|
-
node -e "try{const p=require('./package.json');console.log(JSON.stringify({name:p.name,deps:Object.keys(p.dependencies||{}),scripts:Object.keys(p.scripts||{})},null,2))}catch(e){console.log('{}')}" 2>/dev/null
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
```bash
|
|
30
|
-
# Git history summary
|
|
31
|
-
git log --oneline -20 2>/dev/null
|
|
32
|
-
git shortlog -s -n --all 2>/dev/null | head -5
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
```bash
|
|
36
|
-
# Check for local CLAUDE.md
|
|
37
|
-
cat CLAUDE.md 2>/dev/null || echo "NO_LOCAL_CLAUDE"
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
### Step 2: Analyze Codebase
|
|
41
|
-
|
|
42
|
-
Understand:
|
|
43
|
-
- What framework/stack is used
|
|
44
|
-
- Key directories and their purpose
|
|
45
|
-
- Database tables (from supabase/migrations/ or types/)
|
|
46
|
-
- API routes or server actions
|
|
47
|
-
- Auth pattern used
|
|
48
|
-
- Key environment variables needed
|
|
49
|
-
|
|
50
|
-
### Step 3: Present Orientation
|
|
51
|
-
|
|
52
|
-
Output a structured orientation (NOT saved to file — just presented):
|
|
53
|
-
|
|
54
|
-
```
|
|
55
|
-
◆ PROJECT ORIENTATION
|
|
56
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
57
|
-
|
|
58
|
-
Project {name}
|
|
59
|
-
Stack Next.js + Supabase + Vercel
|
|
60
|
-
Status Phase {N}/{total} — {phase name}
|
|
61
|
-
|
|
62
|
-
── WHAT THIS PROJECT DOES ─────────────────
|
|
63
|
-
{2-3 sentence plain-language summary}
|
|
64
|
-
|
|
65
|
-
── WHAT'S BEEN BUILT ──────────────────────
|
|
66
|
-
✓ Phase 1: {name} — {1-line summary}
|
|
67
|
-
✓ Phase 2: {name} — {1-line summary}
|
|
68
|
-
◆ Phase 3: {name} — in progress
|
|
69
|
-
· Phase 4: {name} — not started
|
|
70
|
-
|
|
71
|
-
── KEY DIRECTORIES ────────────────────────
|
|
72
|
-
app/ Pages and routes
|
|
73
|
-
components/ UI components
|
|
74
|
-
lib/ Utilities, Supabase clients
|
|
75
|
-
actions/ Server actions (mutations)
|
|
76
|
-
supabase/ Migrations and edge functions
|
|
77
|
-
|
|
78
|
-
── PATTERNS TO FOLLOW ─────────────────────
|
|
79
|
-
- Server Components by default, 'use client' only for interactivity
|
|
80
|
-
- Server Actions for all mutations (check auth first)
|
|
81
|
-
- Supabase server client from lib/supabase/server.ts
|
|
82
|
-
- RLS on every table — no exceptions
|
|
83
|
-
- {any project-specific patterns from CLAUDE.md}
|
|
84
|
-
|
|
85
|
-
── GETTING STARTED ────────────────────────
|
|
86
|
-
1. npm install
|
|
87
|
-
2. Copy .env.example to .env.local and fill in values
|
|
88
|
-
3. supabase start (for local dev) OR use linked project
|
|
89
|
-
4. npm run dev
|
|
90
|
-
5. Read .planning/ROADMAP.md for full project plan
|
|
91
|
-
|
|
92
|
-
── CURRENT WORK ───────────────────────────
|
|
93
|
-
→ Phase {N}: {name}
|
|
94
|
-
→ Status: {planned/executing/verifying}
|
|
95
|
-
→ Next command: /qualia-{action} {N}
|
|
96
|
-
|
|
97
|
-
── WHO TO ASK ─────────────────────────────
|
|
98
|
-
Architecture decisions → Fawzi
|
|
99
|
-
Framework questions → /qualia-help
|
|
100
|
-
Stuck on anything → /qualia-idk
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
### Step 4: Offer Deep Dive
|
|
104
|
-
|
|
105
|
-
> "Want me to explain any specific part in more detail? Options:"
|
|
106
|
-
> - "Walk me through the database schema"
|
|
107
|
-
> - "Explain the auth flow"
|
|
108
|
-
> - "Show me the API/action patterns"
|
|
109
|
-
> - "What's the current phase about?"
|
|
110
|
-
|
|
111
|
-
Keep it practical. This is for a developer who needs to start contributing today, not a documentation exercise.
|
|
@@ -1,170 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: colorize
|
|
3
|
-
description: Add strategic color to features that are too monochromatic or lack visual interest. Makes interfaces more engaging and expressive.
|
|
4
|
-
user-invokable: true
|
|
5
|
-
args:
|
|
6
|
-
- name: target
|
|
7
|
-
description: The feature or component to colorize (optional)
|
|
8
|
-
required: false
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
Strategically introduce color to designs that are too monochromatic, gray, or lacking in visual warmth and personality.
|
|
12
|
-
|
|
13
|
-
## MANDATORY PREPARATION
|
|
14
|
-
|
|
15
|
-
### Read DESIGN.md (Authoritative Source)
|
|
16
|
-
|
|
17
|
-
Before any context gathering, check for the project's design decisions file:
|
|
18
|
-
|
|
19
|
-
```bash
|
|
20
|
-
cat .planning/DESIGN.md 2>/dev/null
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
**If DESIGN.md exists:** This is the authoritative source for all design decisions in this project. Use its palette, typography, spacing, component, and motion decisions as your foundation. Do NOT override these decisions unless the user explicitly asks. Reference specific DESIGN.md decisions in your output (e.g., "Per DESIGN.md, the primary color is...").
|
|
24
|
-
|
|
25
|
-
**If DESIGN.md does not exist:** Proceed with normal context gathering below. Consider suggesting the user run `/qualia-discuss-phase` to establish design decisions.
|
|
26
|
-
|
|
27
|
-
### Context Gathering (Do This First)
|
|
28
|
-
|
|
29
|
-
You cannot do a great job without having necessary context, such as target audience (critical), desired use-cases (critical), brand personality/tone, and especially existing brand colors.
|
|
30
|
-
|
|
31
|
-
Attempt to gather these from the current thread or codebase.
|
|
32
|
-
|
|
33
|
-
1. If you don't find *exact* information and have to infer from existing design and functionality, you MUST STOP and STOP and ask the user directly to clarify. whether you got it right.
|
|
34
|
-
2. Otherwise, if you can't fully infer or your level of confidence is medium or lower, you MUST STOP and ask the user directly to clarify. clarifying questions first to complete your context.
|
|
35
|
-
|
|
36
|
-
Do NOT proceed until you have answers. Guessing leads to generic AI slop colors.
|
|
37
|
-
|
|
38
|
-
### Use frontend-master skill
|
|
39
|
-
|
|
40
|
-
Use the frontend-master skill for design principles and anti-patterns. Do NOT proceed until it has executed and you know all DO's and DON'Ts.
|
|
41
|
-
|
|
42
|
-
---
|
|
43
|
-
|
|
44
|
-
## Assess Color Opportunity
|
|
45
|
-
|
|
46
|
-
Analyze the current state and identify opportunities:
|
|
47
|
-
|
|
48
|
-
1. **Understand current state**:
|
|
49
|
-
- **Color absence**: Pure grayscale? Limited neutrals? One timid accent?
|
|
50
|
-
- **Missed opportunities**: Where could color add meaning, hierarchy, or delight?
|
|
51
|
-
- **Context**: What's appropriate for this domain and audience?
|
|
52
|
-
- **Brand**: Are there existing brand colors we should use?
|
|
53
|
-
|
|
54
|
-
2. **Identify where color adds value**:
|
|
55
|
-
- **Semantic meaning**: Success (green), error (red), warning (yellow/orange), info (blue)
|
|
56
|
-
- **Hierarchy**: Drawing attention to important elements
|
|
57
|
-
- **Categorization**: Different sections, types, or states
|
|
58
|
-
- **Emotional tone**: Warmth, energy, trust, creativity
|
|
59
|
-
- **Wayfinding**: Helping users navigate and understand structure
|
|
60
|
-
- **Delight**: Moments of visual interest and personality
|
|
61
|
-
|
|
62
|
-
If any of these are unclear from the codebase, STOP and ask the user directly to clarify.
|
|
63
|
-
|
|
64
|
-
**CRITICAL**: More color ≠ better. Strategic color beats rainbow vomit every time. Every color should have a purpose.
|
|
65
|
-
|
|
66
|
-
## Plan Color Strategy
|
|
67
|
-
|
|
68
|
-
Create a purposeful color introduction plan:
|
|
69
|
-
|
|
70
|
-
- **Color palette**: What colors match the brand/context? (Choose 2-4 colors max beyond neutrals)
|
|
71
|
-
- **Dominant color**: Which color owns 60% of colored elements?
|
|
72
|
-
- **Accent colors**: Which colors provide contrast and highlights? (30% and 10%)
|
|
73
|
-
- **Application strategy**: Where does each color appear and why?
|
|
74
|
-
|
|
75
|
-
**IMPORTANT**: Color should enhance hierarchy and meaning, not create chaos. Less is more when it matters more.
|
|
76
|
-
|
|
77
|
-
## Introduce Color Strategically
|
|
78
|
-
|
|
79
|
-
Add color systematically across these dimensions:
|
|
80
|
-
|
|
81
|
-
### Semantic Color
|
|
82
|
-
- **State indicators**:
|
|
83
|
-
- Success: Green tones (emerald, forest, mint)
|
|
84
|
-
- Error: Red/pink tones (rose, crimson, coral)
|
|
85
|
-
- Warning: Orange/amber tones
|
|
86
|
-
- Info: Blue tones (sky, ocean, indigo)
|
|
87
|
-
- Neutral: Gray/slate for inactive states
|
|
88
|
-
|
|
89
|
-
- **Status badges**: Colored backgrounds or borders for states (active, pending, completed, etc.)
|
|
90
|
-
- **Progress indicators**: Colored bars, rings, or charts showing completion or health
|
|
91
|
-
|
|
92
|
-
### Accent Color Application
|
|
93
|
-
- **Primary actions**: Color the most important buttons/CTAs
|
|
94
|
-
- **Links**: Add color to clickable text (maintain accessibility)
|
|
95
|
-
- **Icons**: Colorize key icons for recognition and personality
|
|
96
|
-
- **Headers/titles**: Add color to section headers or key labels
|
|
97
|
-
- **Hover states**: Introduce color on interaction
|
|
98
|
-
|
|
99
|
-
### Background & Surfaces
|
|
100
|
-
- **Tinted backgrounds**: Replace pure gray (`#f5f5f5`) with warm neutrals (`oklch(97% 0.01 60)`) or cool tints (`oklch(97% 0.01 250)`)
|
|
101
|
-
- **Colored sections**: Use subtle background colors to separate areas
|
|
102
|
-
- **Gradient backgrounds**: Add depth with subtle, intentional gradients (not generic purple-blue)
|
|
103
|
-
- **Cards & surfaces**: Tint cards or surfaces slightly for warmth
|
|
104
|
-
|
|
105
|
-
**Use OKLCH for color**: It's perceptually uniform, meaning equal steps in lightness *look* equal. Great for generating harmonious scales.
|
|
106
|
-
|
|
107
|
-
### Data Visualization
|
|
108
|
-
- **Charts & graphs**: Use color to encode categories or values
|
|
109
|
-
- **Heatmaps**: Color intensity shows density or importance
|
|
110
|
-
- **Comparison**: Color coding for different datasets or timeframes
|
|
111
|
-
|
|
112
|
-
### Borders & Accents
|
|
113
|
-
- **Accent borders**: Add colored left/top borders to cards or sections
|
|
114
|
-
- **Underlines**: Color underlines for emphasis or active states
|
|
115
|
-
- **Dividers**: Subtle colored dividers instead of gray lines
|
|
116
|
-
- **Focus rings**: Colored focus indicators matching brand
|
|
117
|
-
|
|
118
|
-
### Typography Color
|
|
119
|
-
- **Colored headings**: Use brand colors for section headings (maintain contrast)
|
|
120
|
-
- **Highlight text**: Color for emphasis or categories
|
|
121
|
-
- **Labels & tags**: Small colored labels for metadata or categories
|
|
122
|
-
|
|
123
|
-
### Decorative Elements
|
|
124
|
-
- **Illustrations**: Add colored illustrations or icons
|
|
125
|
-
- **Shapes**: Geometric shapes in brand colors as background elements
|
|
126
|
-
- **Gradients**: Colorful gradient overlays or mesh backgrounds
|
|
127
|
-
- **Blobs/organic shapes**: Soft colored shapes for visual interest
|
|
128
|
-
|
|
129
|
-
## Balance & Refinement
|
|
130
|
-
|
|
131
|
-
Ensure color addition improves rather than overwhelms:
|
|
132
|
-
|
|
133
|
-
### Maintain Hierarchy
|
|
134
|
-
- **Dominant color** (60%): Primary brand color or most used accent
|
|
135
|
-
- **Secondary color** (30%): Supporting color for variety
|
|
136
|
-
- **Accent color** (10%): High contrast for key moments
|
|
137
|
-
- **Neutrals** (remaining): Gray/black/white for structure
|
|
138
|
-
|
|
139
|
-
### Accessibility
|
|
140
|
-
- **Contrast ratios**: Ensure WCAG compliance (4.5:1 for text, 3:1 for UI components)
|
|
141
|
-
- **Don't rely on color alone**: Use icons, labels, or patterns alongside color
|
|
142
|
-
- **Test for color blindness**: Verify red/green combinations work for all users
|
|
143
|
-
|
|
144
|
-
### Cohesion
|
|
145
|
-
- **Consistent palette**: Use colors from defined palette, not arbitrary choices
|
|
146
|
-
- **Systematic application**: Same color meanings throughout (green always = success)
|
|
147
|
-
- **Temperature consistency**: Warm palette stays warm, cool stays cool
|
|
148
|
-
|
|
149
|
-
**NEVER**:
|
|
150
|
-
- Use every color in the rainbow (choose 2-4 colors beyond neutrals)
|
|
151
|
-
- Apply color randomly without semantic meaning
|
|
152
|
-
- Put gray text on colored backgrounds—it looks washed out; use a darker shade of the background color or transparency instead
|
|
153
|
-
- Use pure gray for neutrals—add subtle color tint (warm or cool) for sophistication
|
|
154
|
-
- Use pure black (`#000`) or pure white (`#fff`) for large areas
|
|
155
|
-
- Violate WCAG contrast requirements
|
|
156
|
-
- Use color as the only indicator (accessibility issue)
|
|
157
|
-
- Make everything colorful (defeats the purpose)
|
|
158
|
-
- Default to purple-blue gradients (AI slop aesthetic)
|
|
159
|
-
|
|
160
|
-
## Verify Color Addition
|
|
161
|
-
|
|
162
|
-
Test that colorization improves the experience:
|
|
163
|
-
|
|
164
|
-
- **Better hierarchy**: Does color guide attention appropriately?
|
|
165
|
-
- **Clearer meaning**: Does color help users understand states/categories?
|
|
166
|
-
- **More engaging**: Does the interface feel warmer and more inviting?
|
|
167
|
-
- **Still accessible**: Do all color combinations meet WCAG standards?
|
|
168
|
-
- **Not overwhelming**: Is color balanced and purposeful?
|
|
169
|
-
|
|
170
|
-
Remember: Color is emotional and powerful. Use it to create warmth, guide attention, communicate meaning, and express personality. But restraint and strategy matter more than saturation and variety. Be colorful, but be intentional.
|