@nerdev/skillset 0.2.1
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/LICENSE +21 -0
- package/README.md +351 -0
- package/bin/skillset.mjs +205 -0
- package/curations/README.md +53 -0
- package/curations/TEMPLATE/WHY.md +23 -0
- package/curations/TEMPLATE/overlay/SKILL.md +6 -0
- package/curations/impeccable/WHY.md +34 -0
- package/curations/impeccable/overlay/SKILL.md +116 -0
- package/package.json +43 -0
- package/scripts/ste-gate.mjs +39 -0
- package/scripts/ste-lint.py +201 -0
- package/scripts/sync.mjs +174 -0
- package/skills/ai-agent/agent-docs-writer/SKILL.md +105 -0
- package/skills/ai-agent/agent-docs-writer/references/principles.md +73 -0
- package/skills/ai-agent/agent-docs-writer/templates/AGENTS.template.md +44 -0
- package/skills/ai-agent/agent-docs-writer/templates/README.template.md +19 -0
- package/skills/ai-agent/ultra-context-engine/SKILL.md +941 -0
- package/skills/architecture/blueprint/SKILL.md +191 -0
- package/skills/architecture/code-tour/SKILL.md +204 -0
- package/skills/architecture/progress-guard/SKILL.md +148 -0
- package/skills/architecture/search-first/SKILL.md +97 -0
- package/skills/backend/api-design/SKILL.md +456 -0
- package/skills/backend/auth/SKILL.md +596 -0
- package/skills/backend/database/SKILL.md +431 -0
- package/skills/backend/realtime/SKILL.md +670 -0
- package/skills/backend/security/SKILL.md +590 -0
- package/skills/business/brag/SKILL.md +177 -0
- package/skills/business/brag/assets/music/README.md +20 -0
- package/skills/business/brag/assets/music/cues/happy-beats-business-moves-vol-1-by-ende-dot-app.music-cues.json +3846 -0
- package/skills/business/brag/assets/music/cues/happy-beats-business-moves-vol-1-by-ende-dot-app.music-cues.md +35 -0
- package/skills/business/brag/assets/music/cues/happy-beats-business-moves-vol-10-by-ende-dot-app.music-cues.json +1826 -0
- package/skills/business/brag/assets/music/cues/happy-beats-business-moves-vol-10-by-ende-dot-app.music-cues.md +35 -0
- package/skills/business/brag/assets/music/cues/happy-beats-business-moves-vol-11-by-ende-dot-app.music-cues.json +2266 -0
- package/skills/business/brag/assets/music/cues/happy-beats-business-moves-vol-11-by-ende-dot-app.music-cues.md +35 -0
- package/skills/business/brag/assets/music/cues/happy-beats-business-moves-vol-12-by-ende-dot-app.music-cues.json +2806 -0
- package/skills/business/brag/assets/music/cues/happy-beats-business-moves-vol-12-by-ende-dot-app.music-cues.md +35 -0
- package/skills/business/brag/assets/music/cues/happy-beats-business-moves-vol-9-by-ende-dot-app.music-cues.json +2796 -0
- package/skills/business/brag/assets/music/cues/happy-beats-business-moves-vol-9-by-ende-dot-app.music-cues.md +35 -0
- package/skills/business/brag/assets/music/happy-beats-business-moves-vol-1-by-ende-dot-app.mp3 +0 -0
- package/skills/business/brag/assets/music/happy-beats-business-moves-vol-10-by-ende-dot-app.mp3 +0 -0
- package/skills/business/brag/assets/music/happy-beats-business-moves-vol-11-by-ende-dot-app.mp3 +0 -0
- package/skills/business/brag/assets/music/happy-beats-business-moves-vol-12-by-ende-dot-app.mp3 +0 -0
- package/skills/business/brag/assets/music/happy-beats-business-moves-vol-9-by-ende-dot-app.mp3 +0 -0
- package/skills/business/brag/assets/sfx/casino/card-fan-1.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-fan-2.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-place-1.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-place-2.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-place-3.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-place-4.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-shove-1.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-shove-2.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-shove-3.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-shove-4.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-shuffle.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-slide-1.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-slide-2.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-slide-3.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-slide-4.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-slide-5.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-slide-6.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-slide-7.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/card-slide-8.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/cards-pack-open-1.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/cards-pack-open-2.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chip-lay-1.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chip-lay-2.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chip-lay-3.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chips-collide-1.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chips-collide-2.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chips-collide-3.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chips-collide-4.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chips-handle-1.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chips-handle-2.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chips-handle-3.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chips-handle-4.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chips-handle-6.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chips-stack-1.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chips-stack-2.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chips-stack-3.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chips-stack-4.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chips-stack-5.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/chips-stack-6.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/dice-grab-1.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/dice-grab-2.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/dice-shake-1.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/dice-shake-2.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/dice-shake-3.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/dice-throw-1.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/dice-throw-2.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/dice-throw-3.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/die-throw-1.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/die-throw-2.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/die-throw-3.ogg +0 -0
- package/skills/business/brag/assets/sfx/casino/die-throw-4.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_carpet_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_carpet_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_carpet_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_concrete_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_concrete_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_concrete_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_concrete_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_concrete_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_grass_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_grass_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_grass_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_grass_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_grass_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_snow_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_snow_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_snow_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_snow_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_snow_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_wood_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_wood_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_wood_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_wood_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/footstep_wood_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactBell_heavy_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactBell_heavy_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactBell_heavy_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactGeneric_light_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactGeneric_light_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactGeneric_light_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactGeneric_light_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactGeneric_light_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactGlass_heavy_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactGlass_light_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactGlass_light_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactGlass_light_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactGlass_medium_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactGlass_medium_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactGlass_medium_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactMetal_heavy_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactMetal_heavy_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactMetal_heavy_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactMetal_light_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactMetal_light_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactMetal_medium_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactMetal_medium_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactMetal_medium_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactMetal_medium_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactMetal_medium_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactMining_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlank_medium_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlank_medium_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlank_medium_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlank_medium_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlank_medium_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlate_heavy_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlate_heavy_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlate_heavy_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlate_heavy_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlate_heavy_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlate_light_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlate_light_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlate_light_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlate_light_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlate_light_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlate_medium_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlate_medium_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlate_medium_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlate_medium_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPlate_medium_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPunch_heavy_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPunch_heavy_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPunch_heavy_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPunch_heavy_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPunch_heavy_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPunch_medium_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPunch_medium_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPunch_medium_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPunch_medium_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactPunch_medium_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactSoft_heavy_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactSoft_heavy_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactSoft_heavy_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactSoft_heavy_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactSoft_heavy_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactSoft_medium_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactSoft_medium_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactSoft_medium_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactSoft_medium_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactSoft_medium_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactTin_medium_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactTin_medium_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactTin_medium_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactTin_medium_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactTin_medium_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactWood_heavy_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactWood_heavy_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactWood_heavy_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactWood_heavy_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactWood_heavy_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactWood_light_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactWood_light_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactWood_light_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactWood_light_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactWood_light_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactWood_medium_000.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactWood_medium_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactWood_medium_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactWood_medium_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/impact/impactWood_medium_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/bong_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/click_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/click_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/click_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/click_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/click_005.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/drop_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/drop_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/drop_003.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/error_005.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/error_006.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/glitch_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/glitch_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/select_008.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/switch_001.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/switch_002.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/switch_004.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/switch_005.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/switch_006.ogg +0 -0
- package/skills/business/brag/assets/sfx/interface/switch_007.ogg +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-001.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-002.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-003.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-004.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-005.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-006.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-007.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-008.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-009.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-010.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-011.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-012.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-013.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-014.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-015.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-016.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-017.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-018.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-019.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-020.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-021.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-022.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-023.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-024.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-025.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-026.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-027.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-028.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-029.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-030.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-031.wav +0 -0
- package/skills/business/brag/assets/sfx/keyboard/keypress-032.wav +0 -0
- package/skills/business/brag/assets/sfx/sfx-analysis.json +15584 -0
- package/skills/business/brag/assets/sfx/sfx-analysis.md +75 -0
- package/skills/business/brag/assets/sfx/ui/click1.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/click2.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/click3.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/click4.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/click5.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/mouseclick1.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/rollover1.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/rollover2.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/rollover4.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/rollover5.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch1.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch10.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch11.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch12.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch13.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch14.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch15.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch16.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch17.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch18.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch19.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch2.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch20.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch21.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch22.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch23.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch24.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch25.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch26.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch27.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch28.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch29.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch3.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch30.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch31.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch32.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch33.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch34.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch35.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch36.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch37.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch38.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch4.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch5.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch6.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch7.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch8.ogg +0 -0
- package/skills/business/brag/assets/sfx/ui/switch9.ogg +0 -0
- package/skills/business/brag/references/audio.md +307 -0
- package/skills/business/brag/references/step-1-inspect.md +133 -0
- package/skills/business/brag/references/step-2-plan.md +234 -0
- package/skills/business/brag/references/step-3-compose.md +210 -0
- package/skills/business/brag/references/step-4-deliver.md +168 -0
- package/skills/business/brag/references/tones.md +231 -0
- package/skills/business/brag/scripts/analyze_music_cues.py +309 -0
- package/skills/business/brag/scripts/pyproject.toml +14 -0
- package/skills/business/brag/scripts/uv.lock +819 -0
- package/skills/business/copywriting/SKILL.md +178 -0
- package/skills/business/customer-research/SKILL.md +259 -0
- package/skills/business/freelancing/SKILL.md +679 -0
- package/skills/business/launch/SKILL.md +273 -0
- package/skills/business/marketing-psychology/SKILL.md +364 -0
- package/skills/business/pricing/SKILL.md +233 -0
- package/skills/business/resume-revamp-jake-ats/SKILL.md +64 -0
- package/skills/business/startup-founder/SKILL.md +400 -0
- package/skills/business/startup-founder/references/funding.md +48 -0
- package/skills/business/startup-founder/references/further-reading.md +132 -0
- package/skills/business/startup-founder/references/gtm-tools.md +57 -0
- package/skills/business/startup-founder/references/legal-india.md +36 -0
- package/skills/business/startup-founder/references/marketing/README.md +16 -0
- package/skills/business/startup-founder/references/marketing/cold-email.md +172 -0
- package/skills/business/startup-founder/references/marketing/competitors.md +245 -0
- package/skills/business/startup-founder/references/marketing/customer-research.md +276 -0
- package/skills/business/startup-founder/references/marketing/free-tools.md +168 -0
- package/skills/business/startup-founder/references/marketing/launch.md +343 -0
- package/skills/business/startup-founder/references/marketing/marketing-plan.md +270 -0
- package/skills/business/startup-founder/references/marketing/pricing.md +237 -0
- package/skills/business/startup-founder/references/marketing/product-marketing.md +250 -0
- package/skills/business/startup-founder/references/validation.md +267 -0
- package/skills/devops/deployments/SKILL.md +339 -0
- package/skills/devops/git-ci/SKILL.md +372 -0
- package/skills/devops/performance/SKILL.md +523 -0
- package/skills/devops/testing/SKILL.md +558 -0
- package/skills/engineering/code-review/SKILL.md +149 -0
- package/skills/engineering/coding-standards/SKILL.md +229 -0
- package/skills/engineering/product-engineering/SKILL.md +219 -0
- package/skills/engineering/senior-engineer-prompts/SKILL.md +145 -0
- package/skills/engineering/tdd-workflow/SKILL.md +178 -0
- package/skills/engineering/verification-loop/SKILL.md +199 -0
- package/skills/nerdev/nerdev-abstraction/SKILL.md +412 -0
- package/skills/nerdev/nerdev-docs/SKILL.md +527 -0
- package/skills/nerdev/nerdev-docs/templates/adr-template.md +39 -0
- package/skills/nerdev/nerdev-docs/templates/contributing-template.md +140 -0
- package/skills/nerdev/nerdev-docs/templates/deploy-template.md +426 -0
- package/skills/nerdev/nerdev-docs/templates/design-template.md +105 -0
- package/skills/nerdev/nerdev-docs/templates/incident-template.md +66 -0
- package/skills/nerdev/nerdev-monorepo/SKILL.md +522 -0
- package/skills/quality/output-skill/SKILL.md +49 -0
- package/skills/quality/unslop/SKILL.md +67 -0
- package/skills/ui/animaxxing/SKILL.md +58 -0
- package/skills/ui/animaxxing/agents/openai.yaml +7 -0
- package/skills/ui/animaxxing/references/effect-restoration.md +26 -0
- package/skills/ui/animaxxing/references/motion-vocabulary.md +142 -0
- package/skills/ui/animaxxing/references/recipes/blast-off.md +119 -0
- package/skills/ui/animaxxing/references/recipes/particle-effects.md +718 -0
- package/skills/ui/animaxxing/references/recipes/particle-field.md +428 -0
- package/skills/ui/animaxxing/references/recipes/route-letters.md +205 -0
- package/skills/ui/animaxxing/references/recipes/speak-in.md +181 -0
- package/skills/ui/animaxxing/references/recipes/split-entrances.md +345 -0
- package/skills/ui/animaxxing/references/recipes/wave.md +144 -0
- package/skills/ui/animaxxing/references/text-stability.md +68 -0
- package/skills/ui/animaxxing/references/verification.md +44 -0
- package/skills/ui/ask-animation/SKILL.md +178 -0
- package/skills/ui/ask-base-ui/SKILL.md +400 -0
- package/skills/ui/ask-cmdk/SKILL.md +315 -0
- package/skills/ui/ask-command-menu/SKILL.md +262 -0
- package/skills/ui/ask-drawer/SKILL.md +235 -0
- package/skills/ui/ask-form/SKILL.md +229 -0
- package/skills/ui/ask-gsap/SKILL.md +435 -0
- package/skills/ui/ask-modal/SKILL.md +145 -0
- package/skills/ui/ask-motion/SKILL.md +339 -0
- package/skills/ui/ask-rhf/SKILL.md +388 -0
- package/skills/ui/ask-sonner/API.md +64 -0
- package/skills/ui/ask-sonner/SKILL.md +88 -0
- package/skills/ui/ask-table/SKILL.md +253 -0
- package/skills/ui/ask-tanstack-table/SKILL.md +490 -0
- package/skills/ui/ask-toast/SKILL.md +163 -0
- package/skills/ui/ask-vaul/SKILL.md +291 -0
- package/skills/ui/ask-virtual-list/SKILL.md +304 -0
- package/skills/ui/ask-virtuoso/SKILL.md +332 -0
- package/skills/ui/email-craft/SKILL.md +258 -0
- package/skills/ui/frontend-craftsmanship/SKILL.md +462 -0
- package/skills/ui/gsap-astro/SKILL.md +56 -0
- package/skills/ui/gsap-astro/agents/openai.yaml +7 -0
- package/skills/ui/gsap-astro/references/client-router-navigation.md +139 -0
- package/skills/ui/gsap-astro/references/initialization.md +87 -0
- package/skills/ui/gsap-astro/references/motion-system.md +152 -0
- package/skills/ui/gsap-astro/references/scripts-and-islands.md +65 -0
- package/skills/ui/gsap-astro/references/verification.md +44 -0
- package/skills/ui/gsap-core/SKILL.md +254 -0
- package/skills/ui/gsap-frameworks/SKILL.md +266 -0
- package/skills/ui/gsap-nextjs/SKILL.md +51 -0
- package/skills/ui/gsap-nextjs/agents/openai.yaml +7 -0
- package/skills/ui/gsap-nextjs/references/app-router-navigation.md +189 -0
- package/skills/ui/gsap-nextjs/references/initialization.md +87 -0
- package/skills/ui/gsap-nextjs/references/motion-system.md +158 -0
- package/skills/ui/gsap-nextjs/references/verification.md +40 -0
- package/skills/ui/gsap-nuxt/SKILL.md +56 -0
- package/skills/ui/gsap-nuxt/agents/openai.yaml +7 -0
- package/skills/ui/gsap-nuxt/references/initialization.md +87 -0
- package/skills/ui/gsap-nuxt/references/motion-system.md +161 -0
- package/skills/ui/gsap-nuxt/references/navigation.md +145 -0
- package/skills/ui/gsap-nuxt/references/page-transitions.md +107 -0
- package/skills/ui/gsap-nuxt/references/verification.md +42 -0
- package/skills/ui/gsap-performance/SKILL.md +79 -0
- package/skills/ui/gsap-plugins/SKILL.md +433 -0
- package/skills/ui/gsap-react/SKILL.md +136 -0
- package/skills/ui/gsap-react-router/SKILL.md +55 -0
- package/skills/ui/gsap-react-router/agents/openai.yaml +7 -0
- package/skills/ui/gsap-react-router/references/initialization.md +87 -0
- package/skills/ui/gsap-react-router/references/motion-system.md +158 -0
- package/skills/ui/gsap-react-router/references/react-router-navigation.md +165 -0
- package/skills/ui/gsap-react-router/references/route-lifetime.md +74 -0
- package/skills/ui/gsap-react-router/references/verification.md +42 -0
- package/skills/ui/gsap-scrolltrigger/SKILL.md +296 -0
- package/skills/ui/gsap-sveltekit/SKILL.md +54 -0
- package/skills/ui/gsap-sveltekit/agents/openai.yaml +7 -0
- package/skills/ui/gsap-sveltekit/references/initialization.md +87 -0
- package/skills/ui/gsap-sveltekit/references/motion-system.md +156 -0
- package/skills/ui/gsap-sveltekit/references/page-lifetime.md +63 -0
- package/skills/ui/gsap-sveltekit/references/sveltekit-navigation.md +160 -0
- package/skills/ui/gsap-sveltekit/references/verification.md +41 -0
- package/skills/ui/gsap-tanstack-router/SKILL.md +56 -0
- package/skills/ui/gsap-tanstack-router/agents/openai.yaml +7 -0
- package/skills/ui/gsap-tanstack-router/references/initialization.md +87 -0
- package/skills/ui/gsap-tanstack-router/references/motion-system.md +160 -0
- package/skills/ui/gsap-tanstack-router/references/route-lifetime.md +66 -0
- package/skills/ui/gsap-tanstack-router/references/tanstack-navigation.md +156 -0
- package/skills/ui/gsap-tanstack-router/references/verification.md +41 -0
- package/skills/ui/gsap-timeline/SKILL.md +107 -0
- package/skills/ui/gsap-utils/SKILL.md +284 -0
- package/skills/ui/gsap-vanilla/SKILL.md +63 -0
- package/skills/ui/gsap-vanilla/agents/openai.yaml +7 -0
- package/skills/ui/gsap-vanilla/references/cross-document-navigation.md +54 -0
- package/skills/ui/gsap-vanilla/references/initialization.md +87 -0
- package/skills/ui/gsap-vanilla/references/motion-system.md +150 -0
- package/skills/ui/gsap-vanilla/references/page-load.md +96 -0
- package/skills/ui/gsap-vanilla/references/spa-navigation.md +70 -0
- package/skills/ui/gsap-vanilla/references/verification.md +41 -0
- package/skills/ui/house-style/SKILL.md +366 -0
- package/skills/ui/imagegen/SKILL.md +49 -0
- package/skills/ui/imagegen/references/brandkit.md +48 -0
- package/skills/ui/imagegen/references/image-to-code.md +56 -0
- package/skills/ui/imagegen/references/mobile.md +58 -0
- package/skills/ui/imagegen/references/web.md +63 -0
- package/skills/ui/impeccable/SKILL.md +116 -0
- package/skills/ui/impeccable/reference/adapt.md +318 -0
- package/skills/ui/impeccable/reference/adapt.native.md +58 -0
- package/skills/ui/impeccable/reference/android.md +46 -0
- package/skills/ui/impeccable/reference/animate.md +89 -0
- package/skills/ui/impeccable/reference/audit.md +137 -0
- package/skills/ui/impeccable/reference/audit.native.md +139 -0
- package/skills/ui/impeccable/reference/bolder.md +33 -0
- package/skills/ui/impeccable/reference/clarify.md +94 -0
- package/skills/ui/impeccable/reference/colorize.md +86 -0
- package/skills/ui/impeccable/reference/craft-floor.md +44 -0
- package/skills/ui/impeccable/reference/craft.md +5 -0
- package/skills/ui/impeccable/reference/critique.md +806 -0
- package/skills/ui/impeccable/reference/degraded/asset-producer.md +37 -0
- package/skills/ui/impeccable/reference/degraded/documenter.md +24 -0
- package/skills/ui/impeccable/reference/degraded/finish-reviewer.md +38 -0
- package/skills/ui/impeccable/reference/degraded/manual-edit-applier.md +92 -0
- package/skills/ui/impeccable/reference/delight.md +70 -0
- package/skills/ui/impeccable/reference/distill.md +111 -0
- package/skills/ui/impeccable/reference/doctor.md +54 -0
- package/skills/ui/impeccable/reference/document.md +416 -0
- package/skills/ui/impeccable/reference/extract.md +69 -0
- package/skills/ui/impeccable/reference/generate.md +101 -0
- package/skills/ui/impeccable/reference/harden.md +345 -0
- package/skills/ui/impeccable/reference/hooks.md +111 -0
- package/skills/ui/impeccable/reference/init.md +131 -0
- package/skills/ui/impeccable/reference/ios.md +51 -0
- package/skills/ui/impeccable/reference/layout.md +84 -0
- package/skills/ui/impeccable/reference/live-setup.md +104 -0
- package/skills/ui/impeccable/reference/live.md +325 -0
- package/skills/ui/impeccable/reference/new-work.md +145 -0
- package/skills/ui/impeccable/reference/onboard.md +234 -0
- package/skills/ui/impeccable/reference/operate.md +61 -0
- package/skills/ui/impeccable/reference/optimize.md +258 -0
- package/skills/ui/impeccable/reference/overdrive.md +127 -0
- package/skills/ui/impeccable/reference/polish.md +105 -0
- package/skills/ui/impeccable/reference/quieter.md +99 -0
- package/skills/ui/impeccable/reference/routing.md +24 -0
- package/skills/ui/impeccable/reference/shape.md +59 -0
- package/skills/ui/impeccable/reference/typeset.md +80 -0
- package/skills/ui/impeccable/reference/visualize.md +46 -0
- package/skills/ui/impeccable/scripts/VERSION +1 -0
- package/skills/ui/impeccable/scripts/command-metadata.json +98 -0
- package/skills/ui/impeccable/scripts/data/font-index-failures.json +121 -0
- package/skills/ui/impeccable/scripts/data/font-index.json +1 -0
- package/skills/ui/impeccable/scripts/impeccable +206 -0
- package/skills/ui/impeccable/scripts/impeccable.cmd +214 -0
- package/skills/ui/impeccable/scripts/live-browser-dom.js +167 -0
- package/skills/ui/impeccable/scripts/live-browser-ignores.js +242 -0
- package/skills/ui/impeccable/scripts/live-browser-session.js +144 -0
- package/skills/ui/impeccable/scripts/live-browser.js +13510 -0
- package/skills/ui/impeccable/scripts/modern-screenshot.umd.js +14 -0
- package/skills/ui/motion/SKILL.md +207 -0
- package/skills/ui/pick-ui-library/SKILL.md +85 -0
- package/skills/ui/product-messaging/SKILL.md +163 -0
- package/skills/ui/product-site/SKILL.md +465 -0
- package/skills/ui/prototype/PICKER.md +197 -0
- package/skills/ui/prototype/SKILL.md +98 -0
- package/skills/ui/refero-design/SKILL.md +534 -0
- package/skills/ui/refero-design/agents/openai.yaml +4 -0
- package/skills/ui/refero-design/references/anti-ai-slop.md +292 -0
- package/skills/ui/refero-design/references/color.md +563 -0
- package/skills/ui/refero-design/references/copywriting.md +222 -0
- package/skills/ui/refero-design/references/craft-details.md +525 -0
- package/skills/ui/refero-design/references/example-workflow.md +264 -0
- package/skills/ui/refero-design/references/icons.md +166 -0
- package/skills/ui/refero-design/references/mcp-tools.md +258 -0
- package/skills/ui/refero-design/references/motion.md +504 -0
- package/skills/ui/refero-design/references/typography.md +737 -0
- package/skills/ui/refero-design/references/visual-workflow.md +105 -0
- package/skills/ui/style-animaxxing/SKILL.md +48 -0
- package/skills/ui/style-animaxxing/agents/openai.yaml +7 -0
- package/skills/ui/style-animaxxing/references/motion-vocabulary.md +51 -0
- package/skills/ui/style-animaxxing/references/tokens.md +288 -0
- package/skills/ui/style-animaxxing/references/typography-and-layout.md +149 -0
- package/skills/ui/style-animaxxing/references/verification.md +38 -0
- package/skills/ui/typography-picker/SKILL.md +305 -0
- package/skills/ui/ui-core/SKILL.md +345 -0
- package/skills/ui/ui-core/references/accessibility.md +85 -0
- package/skills/ui/ui-core/references/build.md +666 -0
- package/skills/ui/ui-core/references/copy.md +70 -0
- package/skills/ui/ui-core/references/dark-mode.md +76 -0
- package/skills/ui/ui-core/references/direction.md +99 -0
- package/skills/ui/ui-core/references/redesign.md +74 -0
- package/skills/ui/ui-core/references/responsive.md +77 -0
- package/skills/ui/ui-core/references/styles.md +42 -0
- package/skills/ui/ui-core/references/system.md +190 -0
- package/skills/ui/ui-core/references/verify.md +37 -0
- package/skills/ui/ui-engineering/SKILL.md +436 -0
- package/skills/ui/ui-engineering/references/avatars.md +74 -0
- package/skills/ui/ui-engineering/references/card-patterns.md +66 -0
- package/skills/ui/ui-engineering/references/floating-actions.md +65 -0
- package/skills/ui/ui-engineering/references/navigation.md +81 -0
- package/skills/ui/ui-engineering/references/overlays.md +74 -0
- package/skills/ui/ui-engineering/references/pagination.md +71 -0
- package/skills/ui/ui-engineering/references/progress-indicators.md +77 -0
- package/skills/ui/ui-engineering/references/quality-bar.md +293 -0
- package/skills/ui/ui-engineering/references/search.md +68 -0
- package/skills/ui/ui-engineering/references/tailwind-architecture.md +81 -0
- package/skills/ui/ui-theme-picker/SKILL.md +522 -0
- package/skills/ui/ui-theme-picker/references/component-sources.md +223 -0
- package/skills/ui/ui-theme-picker/references/styles.md +298 -0
- package/skills/ui/vitepress-docs/SKILL.md +439 -0
- package/skills/ui/vitepress-docs/references/components.md +333 -0
- package/skills/ui/vitepress-docs/references/layout.md +128 -0
- package/skills/ui/vitepress-docs/references/tokens.md +87 -0
- package/skills/ui/vitepress-docs/references/typography.md +76 -0
- package/skills/workflow/careful/SKILL.md +48 -0
- package/skills/workflow/context-restore/SKILL.md +69 -0
- package/skills/workflow/context-save/SKILL.md +96 -0
- package/skills/workflow/health/SKILL.md +99 -0
- package/skills/workflow/learn/SKILL.md +95 -0
- package/skills/workflow/office-hours/SKILL.md +136 -0
- package/skills/workflow/ship/SKILL.md +95 -0
- package/vendor.json +80 -0
|
@@ -0,0 +1,345 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ui
|
|
3
|
+
description: The whole UI job in one skill: pick the direction, design the system, build the screen, redesign or audit an existing one, verify it before ship. Use when starting a new page or project, choosing a theme or visual direction, building a screen, or upgrading an existing UI. This skill owns the quality of the interface. It makes design decisions autonomously and ships product-ready UI. house-style is the law; impeccable has the commands; this file is the process.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# UI
|
|
7
|
+
|
|
8
|
+
One job, five phases. Run the phase the request matches: pick the
|
|
9
|
+
direction, design the system, build the screen, redesign or audit,
|
|
10
|
+
verify. house-style is the law and wins on conflict. impeccable has the
|
|
11
|
+
commands and detectors. This file is the process. If another synced
|
|
12
|
+
skill about visual design loads, this skill wins.
|
|
13
|
+
|
|
14
|
+
> **Skill family:** `house-style` = law (philosophy). This skill = process orchestrator. [`impeccable`](../impeccable/SKILL.md) = commands/detectors. [`motion`](../motion/SKILL.md) = motion job (name/decide/build/review). [`pick-ui-library`](../pick-ui-library/SKILL.md) = curated library picks. Load `house-style` + this skill for UI work; add `motion` for animation focus; invoke `pick-ui-library` when you need a library.
|
|
15
|
+
|
|
16
|
+
## Product-Ready UI Standard
|
|
17
|
+
|
|
18
|
+
This is the default quality bar for every frontend/UI task. It sits
|
|
19
|
+
above every phase. It is the operating principle, not a checklist item.
|
|
20
|
+
|
|
21
|
+
The agent's default posture: make the reasonable design decisions
|
|
22
|
+
yourself. Only ask the user when the decision materially changes
|
|
23
|
+
product requirements or depends on missing business information.
|
|
24
|
+
|
|
25
|
+
Do not ask about: colors, spacing, typography, border radius, card
|
|
26
|
+
layout, button styles, empty states, loading states, responsive
|
|
27
|
+
behavior, interaction patterns, animation, component structure. Make
|
|
28
|
+
those decisions.
|
|
29
|
+
|
|
30
|
+
The quality ladder:
|
|
31
|
+
|
|
32
|
+
Level 1, functional: the feature works.
|
|
33
|
+
|
|
34
|
+
Level 2, usable: the workflow is understandable.
|
|
35
|
+
|
|
36
|
+
Level 3, product-ready: states, errors, responsiveness, accessibility,
|
|
37
|
+
and content are handled.
|
|
38
|
+
|
|
39
|
+
Level 4, polished: typography, spacing, hierarchy, motion, and visual
|
|
40
|
+
consistency are intentional.
|
|
41
|
+
|
|
42
|
+
Level 5, distinctive: the interface has a coherent visual identity and
|
|
43
|
+
feels like a real product rather than generated UI.
|
|
44
|
+
|
|
45
|
+
Default target: Level 4. Level 5 emerges when the product's brand or
|
|
46
|
+
design system warrants it.
|
|
47
|
+
|
|
48
|
+
### Own the interface
|
|
49
|
+
|
|
50
|
+
Treat yourself as both the implementer and the product designer.
|
|
51
|
+
|
|
52
|
+
Do not interpret "build a dashboard" as "create some cards that
|
|
53
|
+
resemble a dashboard." Instead determine:
|
|
54
|
+
|
|
55
|
+
- What is the user's primary goal?
|
|
56
|
+
- What is the primary action?
|
|
57
|
+
- What information matters most?
|
|
58
|
+
- What should be visible immediately?
|
|
59
|
+
- What can be secondary or progressively disclosed?
|
|
60
|
+
- What happens when there is no data?
|
|
61
|
+
- What happens while loading?
|
|
62
|
+
- What happens when something fails?
|
|
63
|
+
- What happens after success?
|
|
64
|
+
- How does the workflow work on mobile?
|
|
65
|
+
- Which interactions should feel especially good?
|
|
66
|
+
|
|
67
|
+
Make those decisions yourself unless the project requirements require
|
|
68
|
+
user input.
|
|
69
|
+
|
|
70
|
+
### Product-ready means more than visually polished
|
|
71
|
+
|
|
72
|
+
A UI is not complete simply because it has good colors, typography,
|
|
73
|
+
and spacing. A product-ready interface has:
|
|
74
|
+
|
|
75
|
+
1. Clear product identity
|
|
76
|
+
2. Clear information hierarchy
|
|
77
|
+
3. A coherent interaction model
|
|
78
|
+
4. Consistent component behavior
|
|
79
|
+
5. Complete UI states
|
|
80
|
+
6. Realistic content
|
|
81
|
+
7. Responsive behavior
|
|
82
|
+
8. Accessible interaction states
|
|
83
|
+
9. Intentional motion
|
|
84
|
+
10. A coherent visual language
|
|
85
|
+
|
|
86
|
+
Do not stop at "the page looks good." The finished result should feel
|
|
87
|
+
like someone deliberately designed the product.
|
|
88
|
+
|
|
89
|
+
### Complete the states
|
|
90
|
+
|
|
91
|
+
Never design only the happy path. For every meaningful interactive
|
|
92
|
+
surface, consider:
|
|
93
|
+
|
|
94
|
+
- initial
|
|
95
|
+
- loading
|
|
96
|
+
- populated
|
|
97
|
+
- empty
|
|
98
|
+
- error
|
|
99
|
+
- disabled
|
|
100
|
+
- hover
|
|
101
|
+
- focus
|
|
102
|
+
- active
|
|
103
|
+
- selected
|
|
104
|
+
- success
|
|
105
|
+
- partial or limited
|
|
106
|
+
- permission denied
|
|
107
|
+
- offline where relevant
|
|
108
|
+
|
|
109
|
+
Empty states should explain what happened and what the user can do
|
|
110
|
+
next. Errors should be actionable. Loading states should preserve
|
|
111
|
+
layout where practical.
|
|
112
|
+
|
|
113
|
+
### Use realistic content
|
|
114
|
+
|
|
115
|
+
Avoid lorem ipsum and obviously fake placeholder content unless the
|
|
116
|
+
task specifically requires placeholder data. Use realistic names,
|
|
117
|
+
titles, labels, descriptions, dates, statuses, numbers, file names,
|
|
118
|
+
and notifications. Copy is part of the interface. A polished layout
|
|
119
|
+
with obviously artificial content still looks unfinished.
|
|
120
|
+
|
|
121
|
+
### Establish interaction consistency
|
|
122
|
+
|
|
123
|
+
The same interaction should behave the same way throughout the
|
|
124
|
+
product. Dropdowns open consistently. Menus have consistent spacing
|
|
125
|
+
and positioning. Destructive actions follow the same confirmation
|
|
126
|
+
pattern. Buttons have consistent height and feedback. Inputs have
|
|
127
|
+
consistent focus treatment.
|
|
128
|
+
|
|
129
|
+
### Do not make everything a card
|
|
130
|
+
|
|
131
|
+
Cards are not a default layout primitive. Use cards when grouping
|
|
132
|
+
content benefits from a distinct surface. Otherwise prefer whitespace,
|
|
133
|
+
typography, dividers, lists, tables, inline controls, sections, and
|
|
134
|
+
grouped controls. If every element is boxed, nothing has hierarchy.
|
|
135
|
+
|
|
136
|
+
### Responsive design is not an afterthought
|
|
137
|
+
|
|
138
|
+
Do not simply stack desktop elements vertically. Design mobile
|
|
139
|
+
intentionally. Determine what remains visible, what becomes a drawer,
|
|
140
|
+
what becomes sticky, what becomes horizontally scrollable, what
|
|
141
|
+
disappears, what changes priority, how navigation changes, and how
|
|
142
|
+
dense information is transformed.
|
|
143
|
+
|
|
144
|
+
### Motion should communicate something
|
|
145
|
+
|
|
146
|
+
Animation is optional. Poor animation makes a product feel cheaper,
|
|
147
|
+
not better. Use motion when it explains hierarchy, communicates state,
|
|
148
|
+
guides attention, confirms an action, establishes spatial
|
|
149
|
+
relationships, makes an interaction feel natural, or reinforces product
|
|
150
|
+
identity. Respect prefers-reduced-motion. Do not add animation merely
|
|
151
|
+
because an animation library is available.
|
|
152
|
+
|
|
153
|
+
### Visual restraint
|
|
154
|
+
|
|
155
|
+
Avoid decoration without purpose. Do not automatically use gradients,
|
|
156
|
+
glows, glassmorphism, excessive shadows, giant rounded cards, floating
|
|
157
|
+
blobs, particles, excessive borders, or excessive animation. These
|
|
158
|
+
techniques can be excellent when they belong to the product. They
|
|
159
|
+
should never be the default definition of "modern." A simple interface
|
|
160
|
+
with excellent hierarchy is better than a visually busy interface
|
|
161
|
+
trying to appear sophisticated.
|
|
162
|
+
|
|
163
|
+
### Autonomous productization pass
|
|
164
|
+
|
|
165
|
+
Before declaring the UI complete, stop and review it as a product
|
|
166
|
+
designer. Ask:
|
|
167
|
+
|
|
168
|
+
- Does this feel like a specific product or a generic AI-generated
|
|
169
|
+
interface?
|
|
170
|
+
- Can a new user understand what matters within a few seconds?
|
|
171
|
+
- Is the primary action obvious?
|
|
172
|
+
- Is information organized without becoming cluttered?
|
|
173
|
+
- Do similar controls behave and look the same?
|
|
174
|
+
- Are loading, empty, error, disabled, hover, focus, selected, and
|
|
175
|
+
success states handled?
|
|
176
|
+
- Does the copy feel real?
|
|
177
|
+
- Does mobile feel intentionally designed?
|
|
178
|
+
- Can keyboard users understand and operate the interface?
|
|
179
|
+
- Does animation improve comprehension or interaction?
|
|
180
|
+
- Can anything be removed without reducing usability?
|
|
181
|
+
- Could this screenshot be mistaken for a generic template?
|
|
182
|
+
|
|
183
|
+
If the answer to the last question is yes, continue refining. Do not
|
|
184
|
+
merely report the problems. Fix them.
|
|
185
|
+
|
|
186
|
+
### The final quality rule
|
|
187
|
+
|
|
188
|
+
Do not finish when "the requested components exist." Finish when "the
|
|
189
|
+
requested workflow works and the interface feels like a coherent
|
|
190
|
+
product."
|
|
191
|
+
|
|
192
|
+
The user should not have to provide a second round of instructions
|
|
193
|
+
saying "make it look more polished," "add empty states," "make mobile
|
|
194
|
+
better," "fix the spacing," "add hover states," or "make it feel less
|
|
195
|
+
generic." Anticipate these requirements and handle them during the
|
|
196
|
+
initial implementation.
|
|
197
|
+
|
|
198
|
+
## The rules that never bend
|
|
199
|
+
|
|
200
|
+
- Bought, not generated. If the screen could pass for default AI output,
|
|
201
|
+
it is wrong.
|
|
202
|
+
- One clear action per screen. Color in small doses. Whitespace does the
|
|
203
|
+
separating, not borders and shadows.
|
|
204
|
+
- Clean typography: one family, a tight scale, real hierarchy.
|
|
205
|
+
- Tailwind strictly: component-based, tokens first. Raw CSS only when
|
|
206
|
+
Tailwind cannot do it, with a reason.
|
|
207
|
+
- Feedback matches the action: a visual state for manipulation, a quiet
|
|
208
|
+
status for done, confirmation only for destructive.
|
|
209
|
+
- No em dashes in any visible text. One em dash fails review.
|
|
210
|
+
- The finish gate is mandatory before anything ships.
|
|
211
|
+
See references/verify.md.
|
|
212
|
+
- You decide what feels right. Do not ask permission for design
|
|
213
|
+
decisions. Make them.
|
|
214
|
+
|
|
215
|
+
## Phase 1: Pick the direction
|
|
216
|
+
|
|
217
|
+
For new projects, pages, or components with no theme yet.
|
|
218
|
+
Details in references/direction.md.
|
|
219
|
+
|
|
220
|
+
1. Determine the context: what it is, who it is for, the vibe, the
|
|
221
|
+
constraints, the animation dial. If the user provided these, use
|
|
222
|
+
them. If not, infer from the project and make a call.
|
|
223
|
+
2. Determine the identity. These turn generic UI into something that
|
|
224
|
+
feels like this product, not any product. Ask only what the user
|
|
225
|
+
has not already told you.
|
|
226
|
+
3. Match to a style family. Shortlist 2-3 candidates with a one-line
|
|
227
|
+
feel and a concrete anchor.
|
|
228
|
+
4. Output tokens: palette, type pairing, spacing, radius, shadow or no
|
|
229
|
+
shadow, motion character in one line.
|
|
230
|
+
5. Refine mode: when a theme already exists, audit first, extract
|
|
231
|
+
principles not pixels, output a token diff.
|
|
232
|
+
|
|
233
|
+
### Identity questions (ask only what is missing)
|
|
234
|
+
|
|
235
|
+
Skip questions the user already answered. Ask only what genuinely
|
|
236
|
+
requires product input. These separate "looks good" from "feels like
|
|
237
|
+
us."
|
|
238
|
+
|
|
239
|
+
1. What is the one word you want people to feel after using this?
|
|
240
|
+
Trust, speed, calm, power, fun. If you can infer it, infer it.
|
|
241
|
+
2. What is your signature color? One color that is yours. If the user
|
|
242
|
+
has one, use it. If not, make a decision based on the product.
|
|
243
|
+
3. What font feels like your voice? Technical and precise, warm and
|
|
244
|
+
friendly, sharp and editorial. Match that to a typeface.
|
|
245
|
+
4. What is the one thing competitors all do that you refuse to do?
|
|
246
|
+
This defines visual contrast.
|
|
247
|
+
5. What is the one interaction you want people to remember? One. Not
|
|
248
|
+
ten. Everything else should be invisible.
|
|
249
|
+
6. Show me a site that feels like what you are going for. If the user
|
|
250
|
+
provides one, extract principles. If not, pick references yourself.
|
|
251
|
+
|
|
252
|
+
The families we keep: clean SaaS (the default, Apple and Google calm),
|
|
253
|
+
minimalist, brutalist. Recipes in references/styles.md, used only when
|
|
254
|
+
asked.
|
|
255
|
+
|
|
256
|
+
## Phase 2: Design the system
|
|
257
|
+
|
|
258
|
+
Tokens first, components second. Details in references/system.md.
|
|
259
|
+
|
|
260
|
+
- Constraint budget: one accent, one gray family, one radius scale, one
|
|
261
|
+
icon family, one stroke weight, one motion curve family. To add
|
|
262
|
+
somewhere, remove elsewhere.
|
|
263
|
+
- Type: display scale with tight tracking, body under 65ch. Tabular
|
|
264
|
+
figures for data. Modular scale, weight ladder, tracking/leading
|
|
265
|
+
rules. See Type scale system in build.md.
|
|
266
|
+
- Buttons: flat or barely rounded, solid contrast, no glow. Pressed
|
|
267
|
+
state is tactile: scale 0.98.
|
|
268
|
+
- Cards only when elevation earns them. Never cards in cards.
|
|
269
|
+
- Icon system: stroke weight, sizing, filled vs outline, duo-tone,
|
|
270
|
+
triple-tone. See Icon system in build.md.
|
|
271
|
+
- When a design system doc is asked for, emit DESIGN.md with the ten
|
|
272
|
+
mandatory sections from references/system.md.
|
|
273
|
+
- Dark mode is designed, not inverted: CSS variable architecture, one
|
|
274
|
+
token set per surface, saturation and shadow adjusted per theme.
|
|
275
|
+
Details in references/dark-mode.md.
|
|
276
|
+
- Every layout decision is made at the breakpoint tiers, not just
|
|
277
|
+
checked there after the fact. Details in references/responsive.md.
|
|
278
|
+
|
|
279
|
+
## Phase 3: Build the screen
|
|
280
|
+
|
|
281
|
+
The anti-slop discipline. Details in references/build.md.
|
|
282
|
+
|
|
283
|
+
- Kill the tells: purple gradients, glowing buttons, oversized rounded
|
|
284
|
+
cards, three equal cards, the same five icons as everyone.
|
|
285
|
+
- Hero: fits the viewport, headline under 8 words and 2 lines, one
|
|
286
|
+
primary CTA, no trust strips or badges.
|
|
287
|
+
- Layout: one family per section, max two consecutive image-text
|
|
288
|
+
splits, grid over flex math, bento with as many cells as content.
|
|
289
|
+
- Eyebrows: max one per three sections.
|
|
290
|
+
- Content: real words, real numbers, real names. Lists over paragraphs.
|
|
291
|
+
- Accessibility is built in, not audited after: contrast, focus
|
|
292
|
+
management, ARIA, and keyboard paths per references/accessibility.md.
|
|
293
|
+
- Copy follows references/copy.md: imperative CTAs, sentence case,
|
|
294
|
+
error messages that say what happened and what to do.
|
|
295
|
+
- Motion follows the motion skill: restraint first, every animation
|
|
296
|
+
answers "what happened".
|
|
297
|
+
- Verify at 7 viewports where hierarchy restructures, not shrinks.
|
|
298
|
+
|
|
299
|
+
## Phase 4: Redesign or audit
|
|
300
|
+
|
|
301
|
+
Never rewrite from scratch. Details in references/redesign.md.
|
|
302
|
+
|
|
303
|
+
1. Scan, diagnose, fix, in that order.
|
|
304
|
+
2. Write the feel contract first: temperament, beliefs, anti-goals,
|
|
305
|
+
two reference products and why they feel good.
|
|
306
|
+
3. Audit by category: typography, color, layout, interactivity, content,
|
|
307
|
+
components, icons, code.
|
|
308
|
+
4. Fix in order: P0 broken, P1 unfinished, P2 quality, P3 polish. Font
|
|
309
|
+
first, then color, then states, then layout.
|
|
310
|
+
5. Preserve: IA, slugs, nav labels, copy voice, accessibility,
|
|
311
|
+
analytics.
|
|
312
|
+
|
|
313
|
+
## Phase 5: Verify (the finish gate)
|
|
314
|
+
|
|
315
|
+
Nothing ships without it. Details in references/verify.md.
|
|
316
|
+
|
|
317
|
+
- Seven viewports: 1440, 1280, 1024, 768, 640, 390, 375. No overflow.
|
|
318
|
+
Hierarchy changes per class.
|
|
319
|
+
- Every surface has empty, loading, and error states.
|
|
320
|
+
- Feedback matches the mechanism table.
|
|
321
|
+
- Keyboard: no traps, no mouse-only controls, Escape exits.
|
|
322
|
+
- Reduced motion respected.
|
|
323
|
+
- Accessibility gate: contrast AA at both themes, focus order matches
|
|
324
|
+
visual order, every custom widget matches its ARIA pattern.
|
|
325
|
+
- Dark mode gate: both themes hit AA, no literal white/black classes,
|
|
326
|
+
theme persists and matches system on first load.
|
|
327
|
+
- The 10-minute journey runs clean at every step.
|
|
328
|
+
- Lint and build pass.
|
|
329
|
+
- Evidence, not assertions: capture, dom, code. Never silently skip.
|
|
330
|
+
|
|
331
|
+
## Working with you
|
|
332
|
+
|
|
333
|
+
- One round of questions at a time. Build in the smallest real step.
|
|
334
|
+
- You own the taste. I propose, you decide. But I make most design
|
|
335
|
+
decisions myself. I ask only when it matters.
|
|
336
|
+
- Never ship a screen that fails the gate. Say exactly what fails and
|
|
337
|
+
why, with the fix.
|
|
338
|
+
|
|
339
|
+
## Origin
|
|
340
|
+
|
|
341
|
+
Merged from nine skills that were one job in nine voices: taste-skill,
|
|
342
|
+
taste-skill-v1, redesign-skill, soft-skill, gpt-tasteskill,
|
|
343
|
+
minimalist-skill, brutalist-skill, stitch-skill, and ui-theme-picker.
|
|
344
|
+
Their folders do not come back on sync. Their best content lives in the
|
|
345
|
+
references.
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
# Accessibility
|
|
2
|
+
|
|
3
|
+
Built into Phase 3 (build), not just checked in Phase 5 (verify).
|
|
4
|
+
"Keyboard, ARIA, focus visible, contrast AA" is not a rule until it is
|
|
5
|
+
specific. This file is the specific version.
|
|
6
|
+
|
|
7
|
+
## Color contrast
|
|
8
|
+
|
|
9
|
+
- Body text vs background: 4.5:1 minimum (AA). Large text (24px+, or
|
|
10
|
+
19px+ bold): 3:1 minimum.
|
|
11
|
+
- UI components and graphical objects (icons, input borders, focus
|
|
12
|
+
rings): 3:1 minimum against adjacent colors.
|
|
13
|
+
- Never encode meaning in color alone: error states get an icon or
|
|
14
|
+
text, not just a red border. Same for success, warning, required.
|
|
15
|
+
- Check contrast at both the accent's saturation cap (system.md: under
|
|
16
|
+
80%) and in dark mode separately. The same hex pair often passes
|
|
17
|
+
light and fails dark, or vice versa.
|
|
18
|
+
- Disabled-state text is exempt from AA, but if a "disabled" control is
|
|
19
|
+
actually informative (for example, shows why it's disabled on hover),
|
|
20
|
+
that hover content is not exempt.
|
|
21
|
+
|
|
22
|
+
## Focus management
|
|
23
|
+
|
|
24
|
+
- Every interactive element has a visible focus state. Never
|
|
25
|
+
`outline: none` without a replacement ring or equivalent contrast
|
|
26
|
+
shift.
|
|
27
|
+
- Focus ring: 2px minimum, offset from the element, uses the accent or
|
|
28
|
+
a dedicated focus color. Never the same color as a hover state, or
|
|
29
|
+
keyboard users can't tell the two apart.
|
|
30
|
+
- On route change or tab/panel switch, focus moves to the new content's
|
|
31
|
+
heading or first interactive element. It never silently stays on a
|
|
32
|
+
now-invisible trigger.
|
|
33
|
+
- On modal/drawer open: focus moves inside, is trapped inside (Tab
|
|
34
|
+
cycles within), and returns to the trigger on close.
|
|
35
|
+
- On item delete (from a list, table, etc.): focus moves to the next
|
|
36
|
+
logical item, not lost to `<body>`.
|
|
37
|
+
- Skip-to-content link for any page with a nav longer than about 5 items.
|
|
38
|
+
|
|
39
|
+
## ARIA and semantics
|
|
40
|
+
|
|
41
|
+
- Real elements first: `<button>` not `<div onClick>`, `<a>` for
|
|
42
|
+
navigation not action. ARIA patches what HTML can't express, it is
|
|
43
|
+
not a first resort.
|
|
44
|
+
- Icon-only controls get `aria-label`. Decorative icons get
|
|
45
|
+
`aria-hidden="true"`.
|
|
46
|
+
- Custom widgets (combobox, tabs, accordion, menu) follow the WAI-ARIA
|
|
47
|
+
APG pattern for that widget. Role, `aria-expanded`,
|
|
48
|
+
`aria-controls`, `aria-selected` as specified, not invented ad hoc.
|
|
49
|
+
- Live regions (`aria-live="polite"`) for async status that is not
|
|
50
|
+
focus-driven: toast confirmations, save indicators, search result
|
|
51
|
+
counts. `assertive` only for errors that block progress.
|
|
52
|
+
- Form fields: label programmatically associated (`<label for>` or
|
|
53
|
+
wrapping), not just visually adjacent. Error text linked via
|
|
54
|
+
`aria-describedby`.
|
|
55
|
+
|
|
56
|
+
## Keyboard
|
|
57
|
+
|
|
58
|
+
- Every mouse action has a keyboard equivalent. No hover-only reveals
|
|
59
|
+
for functionality. A hover-only "more info" that is never reachable by
|
|
60
|
+
keyboard is a failure, not a nice-to-have.
|
|
61
|
+
- Tab order follows visual/reading order. `tabindex` values above 0 are
|
|
62
|
+
banned. Use DOM order instead.
|
|
63
|
+
- Escape closes the topmost transient layer (modal, drawer, menu,
|
|
64
|
+
tooltip) and nothing else.
|
|
65
|
+
- Arrow keys navigate within composite widgets (menus, tabs, radio
|
|
66
|
+
groups, comboboxes) per the APG pattern for that widget.
|
|
67
|
+
|
|
68
|
+
## Screen reader considerations
|
|
69
|
+
|
|
70
|
+
- Page and route changes get an announced title change (`document.title`
|
|
71
|
+
or a live region), since screen reader users don't see the visual nav.
|
|
72
|
+
- Truncated text (`text-overflow: ellipsis`) keeps the full string
|
|
73
|
+
available to assistive tech via `title` or visually-hidden text, not
|
|
74
|
+
silently cut.
|
|
75
|
+
- Images: meaningful images get real `alt`. Purely decorative images
|
|
76
|
+
get `alt=""`, never omitted `alt`.
|
|
77
|
+
- Icon fonts are banned for meaningful content. Screen readers may read
|
|
78
|
+
the glyph's private-use codepoint or nothing. Use SVG or an
|
|
79
|
+
accessible icon component.
|
|
80
|
+
|
|
81
|
+
## Verify additions
|
|
82
|
+
|
|
83
|
+
Add to the Phase 5 gate: contrast checked at both themes [dom], focus
|
|
84
|
+
order matches visual order [dom], every custom widget matches its APG
|
|
85
|
+
pattern [code], skip link present on nav-heavy pages [dom].
|