imhcode 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (986) hide show
  1. package/.github/ISSUE_TEMPLATE/bug_report.md +41 -0
  2. package/.github/ISSUE_TEMPLATE/feature_request.md +39 -0
  3. package/.github/PULL_REQUEST_TEMPLATE.md +29 -0
  4. package/.github/copilot-instructions.md +43 -0
  5. package/.github/workflows/framework-validator.yml +53 -0
  6. package/.gitignore.template +15 -0
  7. package/AGENTS.md +69 -0
  8. package/CLAUDE.md +27 -0
  9. package/README.md +63 -0
  10. package/SETUP.md +81 -0
  11. package/USER_MANUAL.md +70 -0
  12. package/agents/android-executor/SYSTEM.md +32 -0
  13. package/agents/android-executor/agent.yml +53 -0
  14. package/agents/debugger/SYSTEM.md +32 -0
  15. package/agents/debugger/agent.yml +56 -0
  16. package/agents/designer/SYSTEM.md +32 -0
  17. package/agents/designer/agent.yml +59 -0
  18. package/agents/devops-executor/SYSTEM.md +32 -0
  19. package/agents/devops-executor/agent.yml +56 -0
  20. package/agents/flutter-executor/SYSTEM.md +32 -0
  21. package/agents/flutter-executor/agent.yml +54 -0
  22. package/agents/ios-executor/SYSTEM.md +32 -0
  23. package/agents/ios-executor/agent.yml +53 -0
  24. package/agents/java-executor/SYSTEM.md +32 -0
  25. package/agents/java-executor/agent.yml +57 -0
  26. package/agents/laravel-executor/SYSTEM.md +32 -0
  27. package/agents/laravel-executor/agent.yml +59 -0
  28. package/agents/nextjs-executor/SYSTEM.md +32 -0
  29. package/agents/nextjs-executor/agent.yml +60 -0
  30. package/agents/planner/SYSTEM.md +32 -0
  31. package/agents/planner/agent.yml +56 -0
  32. package/agents/python-executor/SYSTEM.md +32 -0
  33. package/agents/python-executor/agent.yml +58 -0
  34. package/agents/react-executor/SYSTEM.md +32 -0
  35. package/agents/react-executor/agent.yml +58 -0
  36. package/agents/react-native-executor/SYSTEM.md +32 -0
  37. package/agents/react-native-executor/agent.yml +53 -0
  38. package/agents/security-auditor/SYSTEM.md +32 -0
  39. package/agents/security-auditor/agent.yml +56 -0
  40. package/agents/seo-optimizer/SYSTEM.md +32 -0
  41. package/agents/seo-optimizer/agent.yml +54 -0
  42. package/agents/systems-executor/SYSTEM.md +32 -0
  43. package/agents/systems-executor/agent.yml +54 -0
  44. package/agents/tester/SYSTEM.md +32 -0
  45. package/agents/tester/agent.yml +58 -0
  46. package/agents/vue-executor/SYSTEM.md +32 -0
  47. package/agents/vue-executor/agent.yml +58 -0
  48. package/agents/web3-executor/SYSTEM.md +32 -0
  49. package/agents/web3-executor/agent.yml +55 -0
  50. package/bin/imhcode.js +1634 -0
  51. package/dist/orchestrator/builder.d.ts +23 -0
  52. package/dist/orchestrator/builder.d.ts.map +1 -0
  53. package/dist/orchestrator/builder.js +231 -0
  54. package/dist/orchestrator/builder.js.map +1 -0
  55. package/dist/orchestrator/executor.d.ts +43 -0
  56. package/dist/orchestrator/executor.d.ts.map +1 -0
  57. package/dist/orchestrator/executor.js +356 -0
  58. package/dist/orchestrator/executor.js.map +1 -0
  59. package/dist/orchestrator/index.d.ts +35 -0
  60. package/dist/orchestrator/index.d.ts.map +1 -0
  61. package/dist/orchestrator/index.js +490 -0
  62. package/dist/orchestrator/index.js.map +1 -0
  63. package/dist/orchestrator/loader.d.ts +33 -0
  64. package/dist/orchestrator/loader.d.ts.map +1 -0
  65. package/dist/orchestrator/loader.js +203 -0
  66. package/dist/orchestrator/loader.js.map +1 -0
  67. package/dist/orchestrator/registry.d.ts +63 -0
  68. package/dist/orchestrator/registry.d.ts.map +1 -0
  69. package/dist/orchestrator/registry.js +181 -0
  70. package/dist/orchestrator/registry.js.map +1 -0
  71. package/dist/orchestrator/schema.d.ts +132 -0
  72. package/dist/orchestrator/schema.d.ts.map +1 -0
  73. package/dist/orchestrator/schema.js +101 -0
  74. package/dist/orchestrator/schema.js.map +1 -0
  75. package/dist/orchestrator/session.d.ts +25 -0
  76. package/dist/orchestrator/session.d.ts.map +1 -0
  77. package/dist/orchestrator/session.js +80 -0
  78. package/dist/orchestrator/session.js.map +1 -0
  79. package/dist/orchestrator/types.d.ts +91 -0
  80. package/dist/orchestrator/types.d.ts.map +1 -0
  81. package/dist/orchestrator/types.js +7 -0
  82. package/dist/orchestrator/types.js.map +1 -0
  83. package/package.json +95 -0
  84. package/skills/AnimatePresence/SKILL.md +3 -0
  85. package/skills/accessibility/SKILL.md +146 -0
  86. package/skills/agent-architecture-audit/SKILL.md +256 -0
  87. package/skills/agent-eval/SKILL.md +145 -0
  88. package/skills/agent-introspection-debugging/SKILL.md +153 -0
  89. package/skills/agentic-engineering/SKILL.md +63 -0
  90. package/skills/ai-regression-testing/SKILL.md +385 -0
  91. package/skills/android-clean-architecture/SKILL.md +339 -0
  92. package/skills/animated-component-libraries/SKILL.md +8 -0
  93. package/skills/animejs/SKILL.md +8 -0
  94. package/skills/api-connector-builder/SKILL.md +120 -0
  95. package/skills/api-design/SKILL.md +523 -0
  96. package/skills/apple/SKILL.md +158 -0
  97. package/skills/apple/metadata.json +16 -0
  98. package/skills/architecture-decision-records/SKILL.md +179 -0
  99. package/skills/article-writing/SKILL.md +79 -0
  100. package/skills/automation-audit-ops/SKILL.md +142 -0
  101. package/skills/awwwards/SKILL.md +162 -0
  102. package/skills/awwwards/metadata.json +16 -0
  103. package/skills/babylonjs-engine/SKILL.md +8 -0
  104. package/skills/backend-patterns/SKILL.md +561 -0
  105. package/skills/baqir-docs/SKILL.md +3 -0
  106. package/skills/barba-js/SKILL.md +8 -0
  107. package/skills/benchmark/SKILL.md +93 -0
  108. package/skills/best-practice/SKILL.md +7 -0
  109. package/skills/best-practice/assets/claude-memory/claude-memory-monorepo.jpg +0 -0
  110. package/skills/best-practice/assets/claude-power-ups/dial-the-model-1.png +0 -0
  111. package/skills/best-practice/assets/claude-power-ups/dial-the-model-2.png +0 -0
  112. package/skills/best-practice/assets/claude-power-ups/dial-the-model-3.png +0 -0
  113. package/skills/best-practice/assets/claude-power-ups/powerup-menu.png +0 -0
  114. package/skills/best-practice/claude-cli-startup-flags.md +231 -0
  115. package/skills/best-practice/claude-commands.md +132 -0
  116. package/skills/best-practice/claude-mcp.md +132 -0
  117. package/skills/best-practice/claude-memory.md +121 -0
  118. package/skills/best-practice/claude-power-ups.md +66 -0
  119. package/skills/best-practice/claude-settings.md +1170 -0
  120. package/skills/best-practice/claude-skills.md +58 -0
  121. package/skills/best-practice/claude-subagents.md +56 -0
  122. package/skills/blender-motion-state-inspection/SKILL.md +164 -0
  123. package/skills/bootstrap-patterns/SKILL.md +316 -0
  124. package/skills/brand-guidelines/LICENSE.txt +202 -0
  125. package/skills/brand-guidelines/SKILL.md +73 -0
  126. package/skills/brand-voice/SKILL.md +97 -0
  127. package/skills/brand-voice/references/voice-profile-schema.md +55 -0
  128. package/skills/browser-qa/SKILL.md +87 -0
  129. package/skills/canary-watch/SKILL.md +107 -0
  130. package/skills/canvas-design/LICENSE.txt +202 -0
  131. package/skills/canvas-design/SKILL.md +8 -0
  132. package/skills/canvas-design/canvas-fonts/ArsenalSC-OFL.txt +93 -0
  133. package/skills/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  134. package/skills/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  135. package/skills/canvas-design/canvas-fonts/BigShoulders-OFL.txt +93 -0
  136. package/skills/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  137. package/skills/canvas-design/canvas-fonts/Boldonse-OFL.txt +93 -0
  138. package/skills/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
  139. package/skills/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  140. package/skills/canvas-design/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
  141. package/skills/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  142. package/skills/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  143. package/skills/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  144. package/skills/canvas-design/canvas-fonts/CrimsonPro-OFL.txt +93 -0
  145. package/skills/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  146. package/skills/canvas-design/canvas-fonts/DMMono-OFL.txt +93 -0
  147. package/skills/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
  148. package/skills/canvas-design/canvas-fonts/EricaOne-OFL.txt +94 -0
  149. package/skills/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
  150. package/skills/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
  151. package/skills/canvas-design/canvas-fonts/GeistMono-OFL.txt +93 -0
  152. package/skills/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
  153. package/skills/canvas-design/canvas-fonts/Gloock-OFL.txt +93 -0
  154. package/skills/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
  155. package/skills/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  156. package/skills/canvas-design/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
  157. package/skills/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  158. package/skills/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  159. package/skills/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  160. package/skills/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  161. package/skills/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  162. package/skills/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  163. package/skills/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  164. package/skills/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  165. package/skills/canvas-design/canvas-fonts/InstrumentSans-OFL.txt +93 -0
  166. package/skills/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  167. package/skills/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  168. package/skills/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  169. package/skills/canvas-design/canvas-fonts/Italiana-OFL.txt +93 -0
  170. package/skills/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
  171. package/skills/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  172. package/skills/canvas-design/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
  173. package/skills/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  174. package/skills/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
  175. package/skills/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
  176. package/skills/canvas-design/canvas-fonts/Jura-OFL.txt +93 -0
  177. package/skills/canvas-design/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
  178. package/skills/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  179. package/skills/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
  180. package/skills/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  181. package/skills/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
  182. package/skills/canvas-design/canvas-fonts/Lora-OFL.txt +93 -0
  183. package/skills/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
  184. package/skills/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
  185. package/skills/canvas-design/canvas-fonts/NationalPark-OFL.txt +93 -0
  186. package/skills/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
  187. package/skills/canvas-design/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
  188. package/skills/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  189. package/skills/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
  190. package/skills/canvas-design/canvas-fonts/Outfit-OFL.txt +93 -0
  191. package/skills/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
  192. package/skills/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  193. package/skills/canvas-design/canvas-fonts/PixelifySans-OFL.txt +93 -0
  194. package/skills/canvas-design/canvas-fonts/PoiretOne-OFL.txt +93 -0
  195. package/skills/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  196. package/skills/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  197. package/skills/canvas-design/canvas-fonts/RedHatMono-OFL.txt +93 -0
  198. package/skills/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  199. package/skills/canvas-design/canvas-fonts/Silkscreen-OFL.txt +93 -0
  200. package/skills/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  201. package/skills/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  202. package/skills/canvas-design/canvas-fonts/SmoochSans-OFL.txt +93 -0
  203. package/skills/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
  204. package/skills/canvas-design/canvas-fonts/Tektur-OFL.txt +93 -0
  205. package/skills/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
  206. package/skills/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
  207. package/skills/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  208. package/skills/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
  209. package/skills/canvas-design/canvas-fonts/WorkSans-OFL.txt +93 -0
  210. package/skills/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
  211. package/skills/canvas-design/canvas-fonts/YoungSerif-OFL.txt +93 -0
  212. package/skills/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  213. package/skills/caveman/SKILL.md +74 -0
  214. package/skills/changelog-generator/SKILL.md +104 -0
  215. package/skills/cisco-ios-patterns/SKILL.md +163 -0
  216. package/skills/ckm:design-system/SKILL.md +3 -0
  217. package/skills/ckm:slides/SKILL.md +3 -0
  218. package/skills/claude-red/SKILL.md +35 -0
  219. package/skills/click-path-audit/SKILL.md +244 -0
  220. package/skills/clickhouse-io/SKILL.md +439 -0
  221. package/skills/codebase-onboarding/SKILL.md +233 -0
  222. package/skills/coding-standards/SKILL.md +549 -0
  223. package/skills/compose-multiplatform-patterns/SKILL.md +299 -0
  224. package/skills/computational-architecture/SKILL.md +31 -0
  225. package/skills/content-engine/SKILL.md +131 -0
  226. package/skills/content-research-writer/SKILL.md +538 -0
  227. package/skills/continuous-agent-loop/SKILL.md +45 -0
  228. package/skills/cost-aware-llm-pipeline/SKILL.md +183 -0
  229. package/skills/cpp-coding-standards/SKILL.md +723 -0
  230. package/skills/crosspost/SKILL.md +111 -0
  231. package/skills/css-container-queries/SKILL.md +132 -0
  232. package/skills/customer-billing-ops/SKILL.md +140 -0
  233. package/skills/customs-trade-compliance/SKILL.md +263 -0
  234. package/skills/dart-flutter-patterns/SKILL.md +563 -0
  235. package/skills/dashboard-builder/SKILL.md +108 -0
  236. package/skills/data-scraper-agent/SKILL.md +764 -0
  237. package/skills/database-migrations/SKILL.md +429 -0
  238. package/skills/deep-research/SKILL.md +159 -0
  239. package/skills/defi-amm-security/SKILL.md +166 -0
  240. package/skills/deployment-patterns/SKILL.md +427 -0
  241. package/skills/design-auditor/README.md +504 -0
  242. package/skills/design-auditor/README_KR.md +327 -0
  243. package/skills/design-auditor/SKILL.md +8 -0
  244. package/skills/design-auditor/references/animation.md +300 -0
  245. package/skills/design-auditor/references/color.md +241 -0
  246. package/skills/design-auditor/references/corner-radius.md +331 -0
  247. package/skills/design-auditor/references/elevation.md +249 -0
  248. package/skills/design-auditor/references/ethics.md +877 -0
  249. package/skills/design-auditor/references/figma-mcp.md +377 -0
  250. package/skills/design-auditor/references/heuristics.md +730 -0
  251. package/skills/design-auditor/references/i18n.md +254 -0
  252. package/skills/design-auditor/references/iconography.md +201 -0
  253. package/skills/design-auditor/references/microcopy.md +227 -0
  254. package/skills/design-auditor/references/navigation.md +311 -0
  255. package/skills/design-auditor/references/spacing.md +313 -0
  256. package/skills/design-auditor/references/states.md +254 -0
  257. package/skills/design-auditor/references/tokens.md +286 -0
  258. package/skills/design-auditor/references/typography.md +273 -0
  259. package/skills/design-system/SKILL.md +82 -0
  260. package/skills/design-tokens-system/SKILL.md +156 -0
  261. package/skills/development-workflows/SKILL.md +7 -0
  262. package/skills/development-workflows/cross-model-workflow/assets/cross-model-workflow.png +0 -0
  263. package/skills/development-workflows/cross-model-workflow/cross-model-workflow.md +55 -0
  264. package/skills/development-workflows/rpi/.claude/agents/code-reviewer.md +21 -0
  265. package/skills/development-workflows/rpi/.claude/agents/constitutional-validator.md +288 -0
  266. package/skills/development-workflows/rpi/.claude/agents/documentation-analyst-writer.md +64 -0
  267. package/skills/development-workflows/rpi/.claude/agents/product-manager.md +15 -0
  268. package/skills/development-workflows/rpi/.claude/agents/requirement-parser.md +238 -0
  269. package/skills/development-workflows/rpi/.claude/agents/senior-software-engineer.md +15 -0
  270. package/skills/development-workflows/rpi/.claude/agents/technical-cto-advisor.md +201 -0
  271. package/skills/development-workflows/rpi/.claude/agents/ux-designer.md +14 -0
  272. package/skills/development-workflows/rpi/.claude/commands/rpi/implement.md +634 -0
  273. package/skills/development-workflows/rpi/.claude/commands/rpi/plan.md +416 -0
  274. package/skills/development-workflows/rpi/.claude/commands/rpi/research.md +381 -0
  275. package/skills/development-workflows/rpi/rpi-workflow.md +101 -0
  276. package/skills/development-workflows/rpi/rpi-workflow.svg +178 -0
  277. package/skills/django-celery/SKILL.md +457 -0
  278. package/skills/django-patterns/SKILL.md +734 -0
  279. package/skills/django-security/SKILL.md +593 -0
  280. package/skills/django-tdd/SKILL.md +729 -0
  281. package/skills/dmux-workflows/SKILL.md +7 -0
  282. package/skills/docker-patterns/SKILL.md +364 -0
  283. package/skills/documentation-lookup/SKILL.md +90 -0
  284. package/skills/domain-name-brainstormer/SKILL.md +212 -0
  285. package/skills/dribbble/SKILL.md +160 -0
  286. package/skills/dribbble/metadata.json +16 -0
  287. package/skills/e2e-testing/SKILL.md +326 -0
  288. package/skills/empirical-research/SKILL.md +22 -0
  289. package/skills/error-handling/SKILL.md +376 -0
  290. package/skills/eval-harness/SKILL.md +270 -0
  291. package/skills/evm-token-decimals/SKILL.md +130 -0
  292. package/skills/fastapi-patterns/SKILL.md +327 -0
  293. package/skills/finance-billing-ops/SKILL.md +127 -0
  294. package/skills/flox-environments/SKILL.md +496 -0
  295. package/skills/flutter-dart-code-review/SKILL.md +435 -0
  296. package/skills/foundation-models-on-device/SKILL.md +243 -0
  297. package/skills/framer/SKILL.md +159 -0
  298. package/skills/framer/metadata.json +16 -0
  299. package/skills/frontend-design/LICENSE.txt +21 -0
  300. package/skills/frontend-design/README.md +71 -0
  301. package/skills/frontend-design/SKILL.md +115 -0
  302. package/skills/frontend-design-direction/SKILL.md +92 -0
  303. package/skills/frontend-patterns/SKILL.md +7 -0
  304. package/skills/frontend-slides/SKILL.md +184 -0
  305. package/skills/frontend-slides/STYLE_PRESETS.md +330 -0
  306. package/skills/frontend-slides/animation-patterns.md +122 -0
  307. package/skills/frontend-slides/html-template.md +419 -0
  308. package/skills/frontend-slides/scripts/export-pdf.sh +418 -0
  309. package/skills/frontend-slides/scripts/extract-pptx.py +96 -0
  310. package/skills/frontend-slides/viewport-base.css +153 -0
  311. package/skills/gateguard/SKILL.md +125 -0
  312. package/skills/git-workflow/SKILL.md +715 -0
  313. package/skills/github-ops/SKILL.md +144 -0
  314. package/skills/golang-patterns/SKILL.md +674 -0
  315. package/skills/golang-testing/SKILL.md +720 -0
  316. package/skills/graphify/__init__.py +28 -0
  317. package/skills/graphify/__main__.py +2899 -0
  318. package/skills/graphify/analyze.py +608 -0
  319. package/skills/graphify/benchmark.py +152 -0
  320. package/skills/graphify/build.py +366 -0
  321. package/skills/graphify/cache.py +244 -0
  322. package/skills/graphify/callflow_html.py +2014 -0
  323. package/skills/graphify/cluster.py +267 -0
  324. package/skills/graphify/dedup.py +414 -0
  325. package/skills/graphify/detect.py +1018 -0
  326. package/skills/graphify/export.py +1264 -0
  327. package/skills/graphify/extract.py +6646 -0
  328. package/skills/graphify/global_graph.py +155 -0
  329. package/skills/graphify/google_workspace.py +223 -0
  330. package/skills/graphify/hooks.py +304 -0
  331. package/skills/graphify/ingest.py +331 -0
  332. package/skills/graphify/llm.py +1111 -0
  333. package/skills/graphify/manifest.py +4 -0
  334. package/skills/graphify/prs.py +746 -0
  335. package/skills/graphify/report.py +203 -0
  336. package/skills/graphify/security.py +242 -0
  337. package/skills/graphify/serve.py +899 -0
  338. package/skills/graphify/skill-aider.md +1229 -0
  339. package/skills/graphify/skill-claw.md +1229 -0
  340. package/skills/graphify/skill-codex.md +1290 -0
  341. package/skills/graphify/skill-copilot.md +1317 -0
  342. package/skills/graphify/skill-droid.md +1285 -0
  343. package/skills/graphify/skill-kiro.md +1228 -0
  344. package/skills/graphify/skill-opencode.md +1340 -0
  345. package/skills/graphify/skill-pi.md +1228 -0
  346. package/skills/graphify/skill-trae.md +1254 -0
  347. package/skills/graphify/skill-vscode.md +258 -0
  348. package/skills/graphify/skill-windows.md +1434 -0
  349. package/skills/graphify/skill.md +1086 -0
  350. package/skills/graphify/transcribe.py +184 -0
  351. package/skills/graphify/tree_html.py +580 -0
  352. package/skills/graphify/validate.py +72 -0
  353. package/skills/graphify/watch.py +728 -0
  354. package/skills/graphify/wiki.py +259 -0
  355. package/skills/growth-marketing/SKILL.md +26 -0
  356. package/skills/gsap-scrolltrigger/SKILL.md +8 -0
  357. package/skills/healthcare-cdss-patterns/SKILL.md +245 -0
  358. package/skills/healthcare-emr-patterns/SKILL.md +159 -0
  359. package/skills/healthcare-phi-compliance/SKILL.md +145 -0
  360. package/skills/hexagonal-architecture/SKILL.md +276 -0
  361. package/skills/hipaa-compliance/SKILL.md +78 -0
  362. package/skills/homelab-network-setup/SKILL.md +129 -0
  363. package/skills/imhcode/SKILL.md +183 -0
  364. package/skills/imhcode-brainstorm/SKILL.md +37 -0
  365. package/skills/imhcode-codebase-knowledge/SKILL.md +37 -0
  366. package/skills/imhcode-codebase-knowledge/assets/templates/ARCHITECTURE.md +49 -0
  367. package/skills/imhcode-codebase-knowledge/assets/templates/CONCERNS.md +56 -0
  368. package/skills/imhcode-codebase-knowledge/assets/templates/CONVENTIONS.md +52 -0
  369. package/skills/imhcode-codebase-knowledge/assets/templates/INTEGRATIONS.md +48 -0
  370. package/skills/imhcode-codebase-knowledge/assets/templates/STACK.md +56 -0
  371. package/skills/imhcode-codebase-knowledge/assets/templates/STRUCTURE.md +44 -0
  372. package/skills/imhcode-codebase-knowledge/assets/templates/TESTING.md +57 -0
  373. package/skills/imhcode-codebase-knowledge/references/inquiry-checkpoints.md +70 -0
  374. package/skills/imhcode-codebase-knowledge/references/stack-detection.md +131 -0
  375. package/skills/imhcode-codebase-knowledge/scripts/scan.py +712 -0
  376. package/skills/imhcode-dispatch/SKILL.md +31 -0
  377. package/skills/imhcode-saas-architect/SKILL.md +55 -0
  378. package/skills/imhcode-security/SKILL.md +42 -0
  379. package/skills/imhcode-sprint-planner/SKILL.md +42 -0
  380. package/skills/inventory-demand-planning/SKILL.md +247 -0
  381. package/skills/investor-materials/SKILL.md +96 -0
  382. package/skills/investor-outreach/SKILL.md +91 -0
  383. package/skills/ios-icon-gen/SKILL.md +157 -0
  384. package/skills/ios-icon-gen/scripts/generate_icons.swift +258 -0
  385. package/skills/ios-icon-gen/scripts/iconify_gen.sh +235 -0
  386. package/skills/java-coding-standards/SKILL.md +383 -0
  387. package/skills/jpa-patterns/SKILL.md +151 -0
  388. package/skills/kotlin-ktor-patterns/SKILL.md +689 -0
  389. package/skills/kotlin-patterns/SKILL.md +711 -0
  390. package/skills/laravel-patterns/SKILL.md +415 -0
  391. package/skills/laravel-plugin-discovery/SKILL.md +229 -0
  392. package/skills/laravel-security/SKILL.md +285 -0
  393. package/skills/laravel-tdd/SKILL.md +283 -0
  394. package/skills/laravel-verification/SKILL.md +179 -0
  395. package/skills/lightweight-3d-effects/SKILL.md +8 -0
  396. package/skills/linear/SKILL.md +156 -0
  397. package/skills/linear/metadata.json +16 -0
  398. package/skills/liquid-glass-design/SKILL.md +279 -0
  399. package/skills/llm-trading-agent-security/SKILL.md +146 -0
  400. package/skills/locomotive-scroll/SKILL.md +8 -0
  401. package/skills/logistics-exception-management/SKILL.md +222 -0
  402. package/skills/lottie-animations/SKILL.md +8 -0
  403. package/skills/make-interfaces-feel-better/SKILL.md +151 -0
  404. package/skills/mcp-server-patterns/SKILL.md +69 -0
  405. package/skills/meeting-insights-analyzer/SKILL.md +327 -0
  406. package/skills/micro-interactions/SKILL.md +178 -0
  407. package/skills/mle-workflow/SKILL.md +346 -0
  408. package/skills/mobbin/SKILL.md +157 -0
  409. package/skills/mobbin/metadata.json +16 -0
  410. package/skills/mobile-app-design/README.md +302 -0
  411. package/skills/mobile-app-design/SKILL.md +330 -0
  412. package/skills/mobile-app-design/examples/design-system-config.ts +685 -0
  413. package/skills/mobile-app-design/examples/form-validation-example.tsx +501 -0
  414. package/skills/mobile-app-design/examples/optimized-list-example.tsx +384 -0
  415. package/skills/mobile-app-design/examples/profile-screen-example.tsx +450 -0
  416. package/skills/mobile-app-design/references/accessibility-checklist.md +525 -0
  417. package/skills/mobile-app-design/references/android-guidelines.md +582 -0
  418. package/skills/mobile-app-design/references/common-mistakes.md +834 -0
  419. package/skills/mobile-app-design/references/ios-guidelines.md +421 -0
  420. package/skills/mobile-app-design/references/performance-patterns.md +705 -0
  421. package/skills/mobile-app-design/references/platform-differences.md +353 -0
  422. package/skills/mobile-app-design/references/ui-libraries.md +729 -0
  423. package/skills/mobile-app-design/scripts/accessibility-audit.sh +281 -0
  424. package/skills/mobile-app-design/scripts/check-contrast.py +188 -0
  425. package/skills/mobile-app-design/scripts/validate-touch-targets.sh +228 -0
  426. package/skills/mobile-app-ui-design/INDEX.md +131 -0
  427. package/skills/mobile-app-ui-design/README.md +135 -0
  428. package/skills/mobile-app-ui-design/SKILL.md +7 -0
  429. package/skills/mobile-app-ui-design/references/industry-conventions.md +151 -0
  430. package/skills/modern-web-design/SKILL.md +8 -0
  431. package/skills/motion-advanced/SKILL.md +596 -0
  432. package/skills/motion-design/SKILL.md +21 -0
  433. package/skills/motion-foundations/SKILL.md +299 -0
  434. package/skills/motion-framer/SKILL.md +8 -0
  435. package/skills/motion-patterns/SKILL.md +435 -0
  436. package/skills/motion-ui/SKILL.md +575 -0
  437. package/skills/mysql-patterns/SKILL.md +412 -0
  438. package/skills/nestjs-patterns/SKILL.md +230 -0
  439. package/skills/network-config-validation/SKILL.md +210 -0
  440. package/skills/nextjs-turbopack/SKILL.md +44 -0
  441. package/skills/nodejs-keccak256/SKILL.md +102 -0
  442. package/skills/nothing-design/SKILL.md +177 -0
  443. package/skills/nothing-design/references/components.md +153 -0
  444. package/skills/nothing-design/references/platform-mapping.md +64 -0
  445. package/skills/nothing-design/references/tokens.md +142 -0
  446. package/skills/nuxt4-patterns/SKILL.md +100 -0
  447. package/skills/openclaw-persona-forge/SKILL.md +288 -0
  448. package/skills/openclaw-persona-forge/gacha.py +224 -0
  449. package/skills/openclaw-persona-forge/gacha.sh +5 -0
  450. package/skills/openclaw-persona-forge/references/avatar-style.md +124 -0
  451. package/skills/openclaw-persona-forge/references/boundary-rules.md +53 -0
  452. package/skills/openclaw-persona-forge/references/error-handling.md +53 -0
  453. package/skills/openclaw-persona-forge/references/identity-tension.md +48 -0
  454. package/skills/openclaw-persona-forge/references/naming-system.md +39 -0
  455. package/skills/openclaw-persona-forge/references/output-template.md +166 -0
  456. package/skills/orchestration-workflow/SKILL.md +199 -0
  457. package/skills/orchestration-workflow/orchestration-workflow.gif +0 -0
  458. package/skills/orchestration-workflow/orchestration-workflow.md +199 -0
  459. package/skills/orchestration-workflow/orchestration-workflow.svg +78 -0
  460. package/skills/orchestration-workflow/output.md +13 -0
  461. package/skills/orchestration-workflow/weather.svg +6 -0
  462. package/skills/pixijs-2d/SKILL.md +8 -0
  463. package/skills/plan-orchestrate/SKILL.md +262 -0
  464. package/skills/plankton-code-quality/SKILL.md +236 -0
  465. package/skills/postgres-patterns/SKILL.md +147 -0
  466. package/skills/ppt-mckinsey/SKILL.md +27 -0
  467. package/skills/prisma-patterns/SKILL.md +371 -0
  468. package/skills/product-capability/SKILL.md +141 -0
  469. package/skills/product-lens/SKILL.md +92 -0
  470. package/skills/production-audit/SKILL.md +206 -0
  471. package/skills/project-flow-ops/SKILL.md +111 -0
  472. package/skills/prompt-optimizer/SKILL.md +398 -0
  473. package/skills/python-patterns/SKILL.md +750 -0
  474. package/skills/python-testing/SKILL.md +816 -0
  475. package/skills/pytorch-patterns/SKILL.md +396 -0
  476. package/skills/quarkus-patterns/SKILL.md +722 -0
  477. package/skills/radix-ui-primitives/SKILL.md +86 -0
  478. package/skills/react-native-best-practices/SKILL.md +83 -0
  479. package/skills/react-native-brownfield-migration/SKILL.md +115 -0
  480. package/skills/react-spring-physics/SKILL.md +8 -0
  481. package/skills/react-three-fiber/SKILL.md +8 -0
  482. package/skills/recsys-pipeline-architect/SKILL.md +114 -0
  483. package/skills/redis-patterns/SKILL.md +403 -0
  484. package/skills/remotion-video-creation/SKILL.md +43 -0
  485. package/skills/remotion-video-creation/rules/3d.md +86 -0
  486. package/skills/remotion-video-creation/rules/animations.md +29 -0
  487. package/skills/remotion-video-creation/rules/assets/charts-bar-chart.tsx +173 -0
  488. package/skills/remotion-video-creation/rules/assets/text-animations-typewriter.tsx +100 -0
  489. package/skills/remotion-video-creation/rules/assets/text-animations-word-highlight.tsx +108 -0
  490. package/skills/remotion-video-creation/rules/assets.md +78 -0
  491. package/skills/remotion-video-creation/rules/audio.md +172 -0
  492. package/skills/remotion-video-creation/rules/calculate-metadata.md +104 -0
  493. package/skills/remotion-video-creation/rules/can-decode.md +75 -0
  494. package/skills/remotion-video-creation/rules/charts.md +58 -0
  495. package/skills/remotion-video-creation/rules/compositions.md +146 -0
  496. package/skills/remotion-video-creation/rules/display-captions.md +126 -0
  497. package/skills/remotion-video-creation/rules/extract-frames.md +229 -0
  498. package/skills/remotion-video-creation/rules/fonts.md +152 -0
  499. package/skills/remotion-video-creation/rules/get-audio-duration.md +58 -0
  500. package/skills/remotion-video-creation/rules/get-video-dimensions.md +68 -0
  501. package/skills/remotion-video-creation/rules/get-video-duration.md +58 -0
  502. package/skills/remotion-video-creation/rules/gifs.md +138 -0
  503. package/skills/remotion-video-creation/rules/images.md +130 -0
  504. package/skills/remotion-video-creation/rules/import-srt-captions.md +67 -0
  505. package/skills/remotion-video-creation/rules/lottie.md +67 -0
  506. package/skills/remotion-video-creation/rules/measuring-dom-nodes.md +34 -0
  507. package/skills/remotion-video-creation/rules/measuring-text.md +143 -0
  508. package/skills/remotion-video-creation/rules/sequencing.md +106 -0
  509. package/skills/remotion-video-creation/rules/tailwind.md +11 -0
  510. package/skills/remotion-video-creation/rules/text-animations.md +20 -0
  511. package/skills/remotion-video-creation/rules/timing.md +179 -0
  512. package/skills/remotion-video-creation/rules/transcribe-captions.md +19 -0
  513. package/skills/remotion-video-creation/rules/transitions.md +122 -0
  514. package/skills/remotion-video-creation/rules/trimming.md +52 -0
  515. package/skills/remotion-video-creation/rules/videos.md +171 -0
  516. package/skills/repo-scan/SKILL.md +78 -0
  517. package/skills/responsive-email-templates/SKILL.md +110 -0
  518. package/skills/rive-interactive/SKILL.md +8 -0
  519. package/skills/rust-patterns/SKILL.md +499 -0
  520. package/skills/rust-testing/SKILL.md +500 -0
  521. package/skills/scroll-reveal-libraries/SKILL.md +8 -0
  522. package/skills/security-bounty-hunter/SKILL.md +99 -0
  523. package/skills/security-review/SKILL.md +503 -0
  524. package/skills/security-review/cloud-infrastructure-security.md +361 -0
  525. package/skills/security-scan/SKILL.md +165 -0
  526. package/skills/seo/SKILL.md +154 -0
  527. package/skills/seo-growth/SKILL.md +34 -0
  528. package/skills/shadcn-ui-patterns/SKILL.md +123 -0
  529. package/skills/spline-interactive/SKILL.md +8 -0
  530. package/skills/springboot-patterns/SKILL.md +314 -0
  531. package/skills/springboot-security/SKILL.md +272 -0
  532. package/skills/springboot-tdd/SKILL.md +158 -0
  533. package/skills/strategic-compact/SKILL.md +131 -0
  534. package/skills/stripe/SKILL.md +168 -0
  535. package/skills/stripe/metadata.json +16 -0
  536. package/skills/swift-actor-persistence/SKILL.md +143 -0
  537. package/skills/swift-concurrency-6-2/SKILL.md +216 -0
  538. package/skills/swiftui-patterns/SKILL.md +259 -0
  539. package/skills/systematic-debugging/CREATION-LOG.md +119 -0
  540. package/skills/systematic-debugging/SKILL.md +296 -0
  541. package/skills/systematic-debugging/condition-based-waiting-example.ts +158 -0
  542. package/skills/systematic-debugging/condition-based-waiting.md +115 -0
  543. package/skills/systematic-debugging/defense-in-depth.md +122 -0
  544. package/skills/systematic-debugging/find-polluter.sh +63 -0
  545. package/skills/systematic-debugging/root-cause-tracing.md +169 -0
  546. package/skills/systematic-debugging/test-academic.md +14 -0
  547. package/skills/systematic-debugging/test-pressure-1.md +58 -0
  548. package/skills/systematic-debugging/test-pressure-2.md +68 -0
  549. package/skills/systematic-debugging/test-pressure-3.md +69 -0
  550. package/skills/tailwindcss-v4/SKILL.md +107 -0
  551. package/skills/tdd-workflow/SKILL.md +463 -0
  552. package/skills/team-builder/SKILL.md +168 -0
  553. package/skills/test-driven-development/SKILL.md +371 -0
  554. package/skills/test-driven-development/testing-anti-patterns.md +299 -0
  555. package/skills/theme-factory/LICENSE.txt +202 -0
  556. package/skills/theme-factory/SKILL.md +59 -0
  557. package/skills/theme-factory/theme-showcase.pdf +0 -0
  558. package/skills/theme-factory/themes/arctic-frost.md +19 -0
  559. package/skills/theme-factory/themes/botanical-garden.md +19 -0
  560. package/skills/theme-factory/themes/desert-rose.md +19 -0
  561. package/skills/theme-factory/themes/forest-canopy.md +19 -0
  562. package/skills/theme-factory/themes/golden-hour.md +19 -0
  563. package/skills/theme-factory/themes/midnight-galaxy.md +19 -0
  564. package/skills/theme-factory/themes/modern-minimalist.md +19 -0
  565. package/skills/theme-factory/themes/ocean-depths.md +19 -0
  566. package/skills/theme-factory/themes/sunset-boulevard.md +19 -0
  567. package/skills/theme-factory/themes/tech-innovation.md +19 -0
  568. package/skills/threejs-webgl/SKILL.md +8 -0
  569. package/skills/trailofbits-auditing/SKILL.md +30 -0
  570. package/skills/twitter-algorithm-optimizer/SKILL.md +327 -0
  571. package/skills/typeui-cli/SKILL.md +90 -0
  572. package/skills/typeui-main/DESIGN.md +114 -0
  573. package/skills/typeui-main/LICENSE.md +9 -0
  574. package/skills/typeui-main/README.md +84 -0
  575. package/skills/typeui-main/REGISTRY.md +60 -0
  576. package/skills/typeui-main/SKILL.md +114 -0
  577. package/skills/typeui-main/package-lock.json +2123 -0
  578. package/skills/typeui-main/package.json +56 -0
  579. package/skills/typeui-main/skills/typeui-cli/SKILL.md +90 -0
  580. package/skills/typeui-main/src/cli.ts +282 -0
  581. package/skills/typeui-main/src/config.ts +28 -0
  582. package/skills/typeui-main/src/domain/designSystemSchema.ts +77 -0
  583. package/skills/typeui-main/src/generation/existingDesignSystem.ts +228 -0
  584. package/skills/typeui-main/src/generation/randomDesignSystem.ts +348 -0
  585. package/skills/typeui-main/src/generation/runDesignGeneration.ts +31 -0
  586. package/skills/typeui-main/src/generation/runGeneration.ts +36 -0
  587. package/skills/typeui-main/src/generation/runPull.ts +62 -0
  588. package/skills/typeui-main/src/io/updateSkillFile.ts +118 -0
  589. package/skills/typeui-main/src/prompts/designSystem.ts +755 -0
  590. package/skills/typeui-main/src/prompts/registry.ts +72 -0
  591. package/skills/typeui-main/src/registry/registryClient.ts +246 -0
  592. package/skills/typeui-main/src/renderers/claudeRenderer.ts +10 -0
  593. package/skills/typeui-main/src/renderers/codexRenderer.ts +10 -0
  594. package/skills/typeui-main/src/renderers/cursorRenderer.ts +10 -0
  595. package/skills/typeui-main/src/renderers/index.ts +14 -0
  596. package/skills/typeui-main/src/renderers/openCodeRenderer.ts +10 -0
  597. package/skills/typeui-main/src/renderers/shared.ts +252 -0
  598. package/skills/typeui-main/src/skillMetadata.ts +19 -0
  599. package/skills/typeui-main/src/types.ts +204 -0
  600. package/skills/typeui-main/src/ui/banner.ts +20 -0
  601. package/skills/typeui-main/test/existingDesignSystem.test.ts +67 -0
  602. package/skills/typeui-main/test/orchestrator.test.ts +113 -0
  603. package/skills/typeui-main/test/randomDesignSystem.test.ts +20 -0
  604. package/skills/typeui-main/test/registryClient.test.ts +408 -0
  605. package/skills/typeui-main/test/renderers.test.ts +41 -0
  606. package/skills/typeui-main/test/runDesignGeneration.test.ts +52 -0
  607. package/skills/typeui-main/test/runPull.test.ts +92 -0
  608. package/skills/typeui-main/test/skillMetadata.test.ts +11 -0
  609. package/skills/typeui-main/test/updateSkillFile.test.ts +160 -0
  610. package/skills/typeui-main/tsconfig.json +16 -0
  611. package/skills/ui-demo/SKILL.md +465 -0
  612. package/skills/ui-to-vue/SKILL.md +134 -0
  613. package/skills/ui-ux-pro-max/.claude/skills/banner-design/SKILL.md +192 -0
  614. package/skills/ui-ux-pro-max/.claude/skills/banner-design/references/banner-sizes-and-styles.md +118 -0
  615. package/skills/ui-ux-pro-max/.claude/skills/brand/SKILL.md +97 -0
  616. package/skills/ui-ux-pro-max/.claude/skills/brand/references/approval-checklist.md +169 -0
  617. package/skills/ui-ux-pro-max/.claude/skills/brand/references/asset-organization.md +157 -0
  618. package/skills/ui-ux-pro-max/.claude/skills/brand/references/brand-guideline-template.md +140 -0
  619. package/skills/ui-ux-pro-max/.claude/skills/brand/references/color-palette-management.md +186 -0
  620. package/skills/ui-ux-pro-max/.claude/skills/brand/references/consistency-checklist.md +94 -0
  621. package/skills/ui-ux-pro-max/.claude/skills/brand/references/logo-usage-rules.md +185 -0
  622. package/skills/ui-ux-pro-max/.claude/skills/brand/references/messaging-framework.md +85 -0
  623. package/skills/ui-ux-pro-max/.claude/skills/brand/references/typography-specifications.md +214 -0
  624. package/skills/ui-ux-pro-max/.claude/skills/brand/references/update.md +118 -0
  625. package/skills/ui-ux-pro-max/.claude/skills/brand/references/visual-identity.md +96 -0
  626. package/skills/ui-ux-pro-max/.claude/skills/brand/references/voice-framework.md +88 -0
  627. package/skills/ui-ux-pro-max/.claude/skills/brand/scripts/extract-colors.cjs +341 -0
  628. package/skills/ui-ux-pro-max/.claude/skills/brand/scripts/inject-brand-context.cjs +349 -0
  629. package/skills/ui-ux-pro-max/.claude/skills/brand/scripts/sync-brand-to-tokens.cjs +266 -0
  630. package/skills/ui-ux-pro-max/.claude/skills/brand/scripts/validate-asset.cjs +387 -0
  631. package/skills/ui-ux-pro-max/.claude/skills/brand/templates/brand-guidelines-starter.md +275 -0
  632. package/skills/ui-ux-pro-max/.claude/skills/design/SKILL.md +302 -0
  633. package/skills/ui-ux-pro-max/.claude/skills/design/data/cip/deliverables.csv +51 -0
  634. package/skills/ui-ux-pro-max/.claude/skills/design/data/cip/industries.csv +21 -0
  635. package/skills/ui-ux-pro-max/.claude/skills/design/data/cip/mockup-contexts.csv +21 -0
  636. package/skills/ui-ux-pro-max/.claude/skills/design/data/cip/styles.csv +21 -0
  637. package/skills/ui-ux-pro-max/.claude/skills/design/data/icon/styles.csv +16 -0
  638. package/skills/ui-ux-pro-max/.claude/skills/design/data/logo/colors.csv +56 -0
  639. package/skills/ui-ux-pro-max/.claude/skills/design/data/logo/industries.csv +56 -0
  640. package/skills/ui-ux-pro-max/.claude/skills/design/data/logo/styles.csv +56 -0
  641. package/skills/ui-ux-pro-max/.claude/skills/design/references/banner-sizes-and-styles.md +118 -0
  642. package/skills/ui-ux-pro-max/.claude/skills/design/references/cip-deliverable-guide.md +95 -0
  643. package/skills/ui-ux-pro-max/.claude/skills/design/references/cip-design.md +121 -0
  644. package/skills/ui-ux-pro-max/.claude/skills/design/references/cip-prompt-engineering.md +84 -0
  645. package/skills/ui-ux-pro-max/.claude/skills/design/references/cip-style-guide.md +68 -0
  646. package/skills/ui-ux-pro-max/.claude/skills/design/references/design-routing.md +207 -0
  647. package/skills/ui-ux-pro-max/.claude/skills/design/references/icon-design.md +122 -0
  648. package/skills/ui-ux-pro-max/.claude/skills/design/references/logo-color-psychology.md +101 -0
  649. package/skills/ui-ux-pro-max/.claude/skills/design/references/logo-design.md +92 -0
  650. package/skills/ui-ux-pro-max/.claude/skills/design/references/logo-prompt-engineering.md +158 -0
  651. package/skills/ui-ux-pro-max/.claude/skills/design/references/logo-style-guide.md +109 -0
  652. package/skills/ui-ux-pro-max/.claude/skills/design/references/slides-copywriting-formulas.md +84 -0
  653. package/skills/ui-ux-pro-max/.claude/skills/design/references/slides-create.md +4 -0
  654. package/skills/ui-ux-pro-max/.claude/skills/design/references/slides-html-template.md +295 -0
  655. package/skills/ui-ux-pro-max/.claude/skills/design/references/slides-layout-patterns.md +137 -0
  656. package/skills/ui-ux-pro-max/.claude/skills/design/references/slides-strategies.md +94 -0
  657. package/skills/ui-ux-pro-max/.claude/skills/design/references/slides.md +42 -0
  658. package/skills/ui-ux-pro-max/.claude/skills/design/references/social-photos-design.md +329 -0
  659. package/skills/ui-ux-pro-max/.claude/skills/design/scripts/cip/core.py +215 -0
  660. package/skills/ui-ux-pro-max/.claude/skills/design/scripts/cip/generate.py +484 -0
  661. package/skills/ui-ux-pro-max/.claude/skills/design/scripts/cip/render-html.py +424 -0
  662. package/skills/ui-ux-pro-max/.claude/skills/design/scripts/cip/search.py +127 -0
  663. package/skills/ui-ux-pro-max/.claude/skills/design/scripts/icon/generate.py +487 -0
  664. package/skills/ui-ux-pro-max/.claude/skills/design/scripts/logo/core.py +175 -0
  665. package/skills/ui-ux-pro-max/.claude/skills/design/scripts/logo/generate.py +362 -0
  666. package/skills/ui-ux-pro-max/.claude/skills/design/scripts/logo/search.py +114 -0
  667. package/skills/ui-ux-pro-max/.claude/skills/design-system/SKILL.md +244 -0
  668. package/skills/ui-ux-pro-max/.claude/skills/design-system/data/slide-backgrounds.csv +11 -0
  669. package/skills/ui-ux-pro-max/.claude/skills/design-system/data/slide-charts.csv +26 -0
  670. package/skills/ui-ux-pro-max/.claude/skills/design-system/data/slide-color-logic.csv +14 -0
  671. package/skills/ui-ux-pro-max/.claude/skills/design-system/data/slide-copy.csv +26 -0
  672. package/skills/ui-ux-pro-max/.claude/skills/design-system/data/slide-layout-logic.csv +16 -0
  673. package/skills/ui-ux-pro-max/.claude/skills/design-system/data/slide-layouts.csv +26 -0
  674. package/skills/ui-ux-pro-max/.claude/skills/design-system/data/slide-strategies.csv +16 -0
  675. package/skills/ui-ux-pro-max/.claude/skills/design-system/data/slide-typography.csv +15 -0
  676. package/skills/ui-ux-pro-max/.claude/skills/design-system/references/component-specs.md +236 -0
  677. package/skills/ui-ux-pro-max/.claude/skills/design-system/references/component-tokens.md +214 -0
  678. package/skills/ui-ux-pro-max/.claude/skills/design-system/references/primitive-tokens.md +203 -0
  679. package/skills/ui-ux-pro-max/.claude/skills/design-system/references/semantic-tokens.md +215 -0
  680. package/skills/ui-ux-pro-max/.claude/skills/design-system/references/states-and-variants.md +241 -0
  681. package/skills/ui-ux-pro-max/.claude/skills/design-system/references/tailwind-integration.md +251 -0
  682. package/skills/ui-ux-pro-max/.claude/skills/design-system/references/token-architecture.md +224 -0
  683. package/skills/ui-ux-pro-max/.claude/skills/design-system/scripts/embed-tokens.cjs +99 -0
  684. package/skills/ui-ux-pro-max/.claude/skills/design-system/scripts/fetch-background.py +317 -0
  685. package/skills/ui-ux-pro-max/.claude/skills/design-system/scripts/generate-slide.py +753 -0
  686. package/skills/ui-ux-pro-max/.claude/skills/design-system/scripts/generate-tokens.cjs +205 -0
  687. package/skills/ui-ux-pro-max/.claude/skills/design-system/scripts/html-token-validator.py +327 -0
  688. package/skills/ui-ux-pro-max/.claude/skills/design-system/scripts/search-slides.py +218 -0
  689. package/skills/ui-ux-pro-max/.claude/skills/design-system/scripts/slide-token-validator.py +35 -0
  690. package/skills/ui-ux-pro-max/.claude/skills/design-system/scripts/slide_search_core.py +453 -0
  691. package/skills/ui-ux-pro-max/.claude/skills/design-system/scripts/validate-tokens.cjs +251 -0
  692. package/skills/ui-ux-pro-max/.claude/skills/design-system/templates/design-tokens-starter.json +143 -0
  693. package/skills/ui-ux-pro-max/.claude/skills/slides/SKILL.md +42 -0
  694. package/skills/ui-ux-pro-max/.claude/skills/slides/references/copywriting-formulas.md +84 -0
  695. package/skills/ui-ux-pro-max/.claude/skills/slides/references/create.md +4 -0
  696. package/skills/ui-ux-pro-max/.claude/skills/slides/references/html-template.md +295 -0
  697. package/skills/ui-ux-pro-max/.claude/skills/slides/references/layout-patterns.md +137 -0
  698. package/skills/ui-ux-pro-max/.claude/skills/slides/references/slide-strategies.md +94 -0
  699. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/LICENSE.txt +202 -0
  700. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/SKILL.md +324 -0
  701. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/ArsenalSC-OFL.txt +93 -0
  702. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  703. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  704. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/BigShoulders-OFL.txt +93 -0
  705. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  706. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Boldonse-OFL.txt +93 -0
  707. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Boldonse-Regular.ttf +0 -0
  708. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  709. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
  710. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  711. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  712. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  713. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/CrimsonPro-OFL.txt +93 -0
  714. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  715. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/DMMono-OFL.txt +93 -0
  716. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/DMMono-Regular.ttf +0 -0
  717. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/EricaOne-OFL.txt +94 -0
  718. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/EricaOne-Regular.ttf +0 -0
  719. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/GeistMono-Bold.ttf +0 -0
  720. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/GeistMono-OFL.txt +93 -0
  721. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/GeistMono-Regular.ttf +0 -0
  722. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Gloock-OFL.txt +93 -0
  723. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Gloock-Regular.ttf +0 -0
  724. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  725. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
  726. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  727. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  728. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  729. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  730. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  731. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  732. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  733. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  734. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/InstrumentSans-OFL.txt +93 -0
  735. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  736. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  737. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  738. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Italiana-OFL.txt +93 -0
  739. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Italiana-Regular.ttf +0 -0
  740. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  741. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
  742. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  743. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Jura-Light.ttf +0 -0
  744. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Jura-Medium.ttf +0 -0
  745. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Jura-OFL.txt +93 -0
  746. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
  747. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  748. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Lora-Bold.ttf +0 -0
  749. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  750. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Lora-Italic.ttf +0 -0
  751. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Lora-OFL.txt +93 -0
  752. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Lora-Regular.ttf +0 -0
  753. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/NationalPark-Bold.ttf +0 -0
  754. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/NationalPark-OFL.txt +93 -0
  755. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/NationalPark-Regular.ttf +0 -0
  756. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
  757. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  758. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Outfit-Bold.ttf +0 -0
  759. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Outfit-OFL.txt +93 -0
  760. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Outfit-Regular.ttf +0 -0
  761. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  762. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/PixelifySans-OFL.txt +93 -0
  763. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/PoiretOne-OFL.txt +93 -0
  764. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  765. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  766. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/RedHatMono-OFL.txt +93 -0
  767. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  768. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Silkscreen-OFL.txt +93 -0
  769. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  770. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  771. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/SmoochSans-OFL.txt +93 -0
  772. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Tektur-Medium.ttf +0 -0
  773. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Tektur-OFL.txt +93 -0
  774. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/Tektur-Regular.ttf +0 -0
  775. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/WorkSans-Bold.ttf +0 -0
  776. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  777. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/WorkSans-Italic.ttf +0 -0
  778. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/WorkSans-OFL.txt +93 -0
  779. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/WorkSans-Regular.ttf +0 -0
  780. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/YoungSerif-OFL.txt +93 -0
  781. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  782. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/references/canvas-design-system.md +320 -0
  783. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/references/shadcn-accessibility.md +471 -0
  784. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/references/shadcn-components.md +424 -0
  785. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/references/shadcn-theming.md +373 -0
  786. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/references/tailwind-customization.md +483 -0
  787. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/references/tailwind-responsive.md +382 -0
  788. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/references/tailwind-utilities.md +455 -0
  789. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/scripts/.coverage +0 -0
  790. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/scripts/requirements.txt +17 -0
  791. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/scripts/shadcn_add.py +292 -0
  792. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/scripts/tailwind_config_gen.py +456 -0
  793. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/scripts/tests/coverage-ui.json +1 -0
  794. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/scripts/tests/requirements.txt +3 -0
  795. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/scripts/tests/test_shadcn_add.py +266 -0
  796. package/skills/ui-ux-pro-max/.claude/skills/ui-styling/scripts/tests/test_tailwind_config_gen.py +336 -0
  797. package/skills/ui-ux-pro-max/.claude/skills/ui-ux-pro-max/SKILL.md +659 -0
  798. package/skills/ui-ux-pro-max/.claude-plugin/marketplace.json +35 -0
  799. package/skills/ui-ux-pro-max/.claude-plugin/plugin.json +11 -0
  800. package/skills/ui-ux-pro-max/.github/workflows/claude-code-review.yml +44 -0
  801. package/skills/ui-ux-pro-max/.github/workflows/claude.yml +50 -0
  802. package/skills/ui-ux-pro-max/.github/workflows/python-package-conda.yml +34 -0
  803. package/skills/ui-ux-pro-max/CLAUDE.md +98 -0
  804. package/skills/ui-ux-pro-max/LICENSE +21 -0
  805. package/skills/ui-ux-pro-max/README.md +513 -0
  806. package/skills/ui-ux-pro-max/SKILL.md +292 -0
  807. package/skills/ui-ux-pro-max/cli/README.md +63 -0
  808. package/skills/ui-ux-pro-max/cli/assets/data/_sync_all.py +414 -0
  809. package/skills/ui-ux-pro-max/cli/assets/data/app-interface.csv +31 -0
  810. package/skills/ui-ux-pro-max/cli/assets/data/charts.csv +26 -0
  811. package/skills/ui-ux-pro-max/cli/assets/data/colors.csv +162 -0
  812. package/skills/ui-ux-pro-max/cli/assets/data/design.csv +1776 -0
  813. package/skills/ui-ux-pro-max/cli/assets/data/draft.csv +1779 -0
  814. package/skills/ui-ux-pro-max/cli/assets/data/google-fonts.csv +1924 -0
  815. package/skills/ui-ux-pro-max/cli/assets/data/icons.csv +105 -0
  816. package/skills/ui-ux-pro-max/cli/assets/data/landing.csv +31 -0
  817. package/skills/ui-ux-pro-max/cli/assets/data/products.csv +162 -0
  818. package/skills/ui-ux-pro-max/cli/assets/data/react-performance.csv +45 -0
  819. package/skills/ui-ux-pro-max/cli/assets/data/stacks/angular.csv +51 -0
  820. package/skills/ui-ux-pro-max/cli/assets/data/stacks/astro.csv +54 -0
  821. package/skills/ui-ux-pro-max/cli/assets/data/stacks/flutter.csv +53 -0
  822. package/skills/ui-ux-pro-max/cli/assets/data/stacks/html-tailwind.csv +56 -0
  823. package/skills/ui-ux-pro-max/cli/assets/data/stacks/jetpack-compose.csv +53 -0
  824. package/skills/ui-ux-pro-max/cli/assets/data/stacks/laravel.csv +51 -0
  825. package/skills/ui-ux-pro-max/cli/assets/data/stacks/nextjs.csv +53 -0
  826. package/skills/ui-ux-pro-max/cli/assets/data/stacks/nuxt-ui.csv +51 -0
  827. package/skills/ui-ux-pro-max/cli/assets/data/stacks/nuxtjs.csv +59 -0
  828. package/skills/ui-ux-pro-max/cli/assets/data/stacks/react-native.csv +52 -0
  829. package/skills/ui-ux-pro-max/cli/assets/data/stacks/react.csv +54 -0
  830. package/skills/ui-ux-pro-max/cli/assets/data/stacks/shadcn.csv +61 -0
  831. package/skills/ui-ux-pro-max/cli/assets/data/stacks/svelte.csv +54 -0
  832. package/skills/ui-ux-pro-max/cli/assets/data/stacks/swiftui.csv +51 -0
  833. package/skills/ui-ux-pro-max/cli/assets/data/stacks/threejs.csv +54 -0
  834. package/skills/ui-ux-pro-max/cli/assets/data/stacks/vue.csv +50 -0
  835. package/skills/ui-ux-pro-max/cli/assets/data/styles.csv +85 -0
  836. package/skills/ui-ux-pro-max/cli/assets/data/typography.csv +74 -0
  837. package/skills/ui-ux-pro-max/cli/assets/data/ui-reasoning.csv +162 -0
  838. package/skills/ui-ux-pro-max/cli/assets/data/ux-guidelines.csv +100 -0
  839. package/skills/ui-ux-pro-max/cli/assets/scripts/core.py +247 -0
  840. package/skills/ui-ux-pro-max/cli/assets/scripts/design_system.py +1148 -0
  841. package/skills/ui-ux-pro-max/cli/assets/scripts/search.py +114 -0
  842. package/skills/ui-ux-pro-max/cli/assets/templates/base/quick-reference.md +297 -0
  843. package/skills/ui-ux-pro-max/cli/assets/templates/base/skill-content.md +353 -0
  844. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/agent.json +21 -0
  845. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/augment.json +18 -0
  846. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/claude.json +21 -0
  847. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/codebuddy.json +21 -0
  848. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/codex.json +21 -0
  849. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/continue.json +21 -0
  850. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/copilot.json +21 -0
  851. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/cursor.json +21 -0
  852. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/droid.json +21 -0
  853. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/gemini.json +21 -0
  854. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/kilocode.json +21 -0
  855. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/kiro.json +21 -0
  856. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/opencode.json +21 -0
  857. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/qoder.json +21 -0
  858. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/roocode.json +21 -0
  859. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/trae.json +21 -0
  860. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/warp.json +18 -0
  861. package/skills/ui-ux-pro-max/cli/assets/templates/platforms/windsurf.json +21 -0
  862. package/skills/ui-ux-pro-max/cli/bun.lock +77 -0
  863. package/skills/ui-ux-pro-max/cli/package-lock.json +370 -0
  864. package/skills/ui-ux-pro-max/cli/package.json +48 -0
  865. package/skills/ui-ux-pro-max/cli/src/commands/init.ts +216 -0
  866. package/skills/ui-ux-pro-max/cli/src/commands/uninstall.ts +135 -0
  867. package/skills/ui-ux-pro-max/cli/src/commands/update.ts +36 -0
  868. package/skills/ui-ux-pro-max/cli/src/commands/versions.ts +42 -0
  869. package/skills/ui-ux-pro-max/cli/src/index.ts +83 -0
  870. package/skills/ui-ux-pro-max/cli/src/types/index.ts +68 -0
  871. package/skills/ui-ux-pro-max/cli/src/utils/detect.ts +120 -0
  872. package/skills/ui-ux-pro-max/cli/src/utils/extract.ts +149 -0
  873. package/skills/ui-ux-pro-max/cli/src/utils/github.ts +104 -0
  874. package/skills/ui-ux-pro-max/cli/src/utils/logger.ts +11 -0
  875. package/skills/ui-ux-pro-max/cli/src/utils/template.ts +243 -0
  876. package/skills/ui-ux-pro-max/cli/tsconfig.json +17 -0
  877. package/skills/ui-ux-pro-max/data/charts.csv +26 -0
  878. package/skills/ui-ux-pro-max/data/colors.csv +97 -0
  879. package/skills/ui-ux-pro-max/data/icons.csv +101 -0
  880. package/skills/ui-ux-pro-max/data/landing.csv +31 -0
  881. package/skills/ui-ux-pro-max/data/products.csv +97 -0
  882. package/skills/ui-ux-pro-max/data/react-performance.csv +45 -0
  883. package/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -0
  884. package/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  885. package/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  886. package/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
  887. package/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  888. package/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
  889. package/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
  890. package/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  891. package/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
  892. package/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
  893. package/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  894. package/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  895. package/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
  896. package/skills/ui-ux-pro-max/data/styles.csv +68 -0
  897. package/skills/ui-ux-pro-max/data/typography.csv +58 -0
  898. package/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
  899. package/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  900. package/skills/ui-ux-pro-max/data/web-interface.csv +31 -0
  901. package/skills/ui-ux-pro-max/docs//344/270/211/344/270/252 data-scripts-templates /347/232/204/345/214/272/345/210/253.md" +30 -0
  902. package/skills/ui-ux-pro-max/preview/xiaomaomi-app.html +411 -0
  903. package/skills/ui-ux-pro-max/screenshots/website.png +0 -0
  904. package/skills/ui-ux-pro-max/scripts/core.py +253 -0
  905. package/skills/ui-ux-pro-max/scripts/design_system.py +1067 -0
  906. package/skills/ui-ux-pro-max/scripts/search.py +114 -0
  907. package/skills/ui-ux-pro-max/skill.json +41 -0
  908. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/_sync_all.py +414 -0
  909. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/app-interface.csv +31 -0
  910. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/charts.csv +26 -0
  911. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/colors.csv +162 -0
  912. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/design.csv +1776 -0
  913. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/draft.csv +1779 -0
  914. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/google-fonts.csv +1924 -0
  915. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/icons.csv +106 -0
  916. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/landing.csv +35 -0
  917. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/products.csv +162 -0
  918. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/react-performance.csv +45 -0
  919. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/stacks/angular.csv +51 -0
  920. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/stacks/astro.csv +54 -0
  921. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  922. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  923. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
  924. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/stacks/laravel.csv +51 -0
  925. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  926. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
  927. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
  928. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  929. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/stacks/react.csv +54 -0
  930. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
  931. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  932. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  933. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/stacks/threejs.csv +54 -0
  934. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/stacks/vue.csv +50 -0
  935. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/styles.csv +85 -0
  936. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/typography.csv +74 -0
  937. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/ui-reasoning.csv +162 -0
  938. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  939. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/scripts/core.py +262 -0
  940. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/scripts/design_system.py +1148 -0
  941. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/scripts/search.py +114 -0
  942. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/base/quick-reference.md +297 -0
  943. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/base/skill-content.md +358 -0
  944. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/agent.json +21 -0
  945. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/augment.json +18 -0
  946. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/claude.json +21 -0
  947. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/codebuddy.json +21 -0
  948. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/codex.json +21 -0
  949. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/continue.json +21 -0
  950. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/copilot.json +21 -0
  951. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/cursor.json +21 -0
  952. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/droid.json +21 -0
  953. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/gemini.json +21 -0
  954. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/kilocode.json +21 -0
  955. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/kiro.json +21 -0
  956. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/opencode.json +21 -0
  957. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/qoder.json +21 -0
  958. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/roocode.json +21 -0
  959. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/trae.json +21 -0
  960. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/warp.json +18 -0
  961. package/skills/ui-ux-pro-max/src/ui-ux-pro-max/templates/platforms/windsurf.json +21 -0
  962. package/skills/uncloud/SKILL.md +343 -0
  963. package/skills/upgrading-react-native/SKILL.md +58 -0
  964. package/skills/using-git-worktrees/SKILL.md +215 -0
  965. package/skills/vercel/SKILL.md +161 -0
  966. package/skills/vercel/metadata.json +16 -0
  967. package/skills/verification-loop/SKILL.md +126 -0
  968. package/skills/view-transitions-api/SKILL.md +108 -0
  969. package/skills/vite-patterns/SKILL.md +449 -0
  970. package/skills/vue3-composition-patterns/SKILL.md +375 -0
  971. package/skills/waza-habits/SKILL.md +22 -0
  972. package/skills/webapp-testing/LICENSE.txt +202 -0
  973. package/skills/webapp-testing/SKILL.md +96 -0
  974. package/skills/webapp-testing/examples/console_logging.py +35 -0
  975. package/skills/webapp-testing/examples/element_discovery.py +40 -0
  976. package/skills/webapp-testing/examples/static_html_automation.py +33 -0
  977. package/skills/webapp-testing/scripts/with_server.py +106 -0
  978. package/src/orchestrator/builder.ts +234 -0
  979. package/src/orchestrator/executor.ts +386 -0
  980. package/src/orchestrator/index.ts +535 -0
  981. package/src/orchestrator/loader.ts +237 -0
  982. package/src/orchestrator/registry.ts +211 -0
  983. package/src/orchestrator/schema.ts +141 -0
  984. package/src/orchestrator/session.ts +128 -0
  985. package/src/orchestrator/types.ts +109 -0
  986. package/tsconfig.json +21 -0
@@ -0,0 +1,730 @@
1
+ # Nielsen's Usability Heuristics Reference
2
+
3
+ This reference covers Category 19 of the Design Auditor skill.
4
+
5
+ Nielsen's 10 Usability Heuristics are the most widely used framework for evaluating interface usability. They were developed by Jakob Nielsen and are grounded in decades of usability research.
6
+
7
+ ---
8
+
9
+ ## Korean Language Support / ν•œκ΅­μ–΄ 지원
10
+
11
+ When auditing in Korean, use the following terminology:
12
+
13
+ | English | Korean |
14
+ |---|---|
15
+ | Usability heuristics | μ‚¬μš©μ„± νœ΄λ¦¬μŠ€ν‹± |
16
+ | Visibility of system status | μ‹œμŠ€ν…œ μƒνƒœ κ°€μ‹œμ„± |
17
+ | Match between system and real world | μ‹œμŠ€ν…œκ³Ό ν˜„μ‹€ μ„Έκ³„μ˜ 일치 |
18
+ | User control and freedom | μ‚¬μš©μž μ œμ–΄ 및 자유 |
19
+ | Recognition rather than recall | 기얡보닀 인식 |
20
+ | Flexibility and efficiency of use | μ‚¬μš©μ˜ μœ μ—°μ„± 및 νš¨μœ¨μ„± |
21
+ | Help and documentation | 도움말 및 λ¬Έμ„œ |
22
+ | Loading state | λ‘œλ”© μƒνƒœ |
23
+ | Progress indicator | μ§„ν–‰ ν‘œμ‹œκΈ° |
24
+ | Confirmation dialog | 확인 λŒ€ν™”μƒμž |
25
+ | Destructive action | 파괴적 μž‘μ—… |
26
+ | Helper text | 도움말 ν…μŠ€νŠΈ |
27
+ | Tooltip | 툴팁 |
28
+ | Onboarding | μ˜¨λ³΄λ”© |
29
+ | Bulk action | 일괄 μž‘μ—… |
30
+ | Keyboard shortcut | ν‚€λ³΄λ“œ 단좕킀 |
31
+ | Floating label | ν”Œλ‘œνŒ… 라벨 |
32
+ | Error message | 였λ₯˜ λ©”μ‹œμ§€ |
33
+ | Dropdown | λ“œλ‘­λ‹€μš΄ |
34
+ | Multi-step flow | λ©€ν‹°μŠ€ν… ν”Œλ‘œμš° |
35
+ | Empty state | 빈 μƒνƒœ |
36
+ | Jargon | μ „λ¬Έ μš©μ–΄ / 업계 μš©μ–΄ |
37
+
38
+ **Korean severity labels (same as main audit):**
39
+ - 🚫 차단 (Blocker)
40
+ - πŸ”΄ 심각 (Critical)
41
+ - 🟑 경고 (Warning)
42
+ - 🟒 팁 (Tip)
43
+
44
+ **Korean heuristic note in reports:**
45
+ > "H4(일관성), H5(였λ₯˜ 예방), H8(미적 λ””μžμΈ), H9(였λ₯˜ 볡ꡬ)λŠ” 각각 μΉ΄ν…Œκ³ λ¦¬ 5, 7, 4, 11/12μ—μ„œ λ‹€λ£Ήλ‹ˆλ‹€."
46
+
47
+ ---
48
+
49
+ **Scope of this category:**
50
+ 4 heuristics are already fully covered by existing categories and are not re-audited here:
51
+ - H4 (Consistency and Standards) β†’ Cat 5
52
+ - H5 (Error Prevention) β†’ Cat 7
53
+ - H8 (Aesthetic and Minimalist Design) β†’ Cat 4
54
+ - H9 (Help Users Recover from Errors) β†’ Cat 11 + Cat 12
55
+
56
+ This category audits the 6 heuristics with genuine gaps: H1, H2, H3, H6, H7, H10.
57
+
58
+ ---
59
+
60
+ ## Usability Score
61
+
62
+ The Usability Score is separate from the Overall Score and the Accessibility Score.
63
+ Start at 100. Apply standard deduction tiers from the main audit:
64
+ - 🚫 Blocker: βˆ’12pts (rare in heuristics β€” reserved for complete absence of fundamental feedback)
65
+ - πŸ”΄ Critical: βˆ’8pts
66
+ - 🟑 Warning: βˆ’4pts
67
+ - 🟒 Tip: βˆ’1pt
68
+
69
+ **Floor is 0.**
70
+
71
+ **Scoring bands:**
72
+ - **90–100** β†’ Heuristically sound / μ‚¬μš©μ„± κΈ°μ€€ μΆ©μ‘±
73
+ - **70–89** β†’ Minor usability gaps / μ‚¬μ†Œν•œ μ‚¬μš©μ„± 문제
74
+ - **50–69** β†’ Significant usability issues β€” likely frustrating real users / μ‹¬κ°ν•œ μ‚¬μš©μ„± 문제
75
+ - **< 50** β†’ Fundamental usability failures β€” warrants user testing before shipping / 근본적인 μ‚¬μš©μ„± μ‹€νŒ¨
76
+
77
+ Display as: **Usability Score: X/100**
78
+
79
+ ---
80
+
81
+ ## H1 β€” Visibility of System Status (gaps only)
82
+
83
+ *Cat 11 covers loading, empty, and error states. This section covers the gaps Cat 11 doesn't.*
84
+
85
+ **Definition:** The system should always keep users informed about what is going on, through appropriate feedback within a reasonable time.
86
+
87
+ **Why it matters:** When users don't know what the system is doing, they lose trust, repeat actions, or abandon the task. Silence after an action is one of the most common causes of double-submission and frustration.
88
+
89
+ **Gaps not covered by Cat 11:**
90
+
91
+ ### H1a β€” No feedback on button/CTA click
92
+
93
+ **Figma detection:**
94
+ - Identify primary action buttons (submit, save, send, confirm)
95
+ - Check if a loading state variant exists in the component
96
+ - Flag if: button has no loading/processing state β†’ πŸ”΄ Critical
97
+
98
+ **Code detection:**
99
+ ```
100
+ Look for async action handlers on buttons:
101
+ β†’ onClick β†’ async function / fetch / axios / supabase / API call
102
+ β†’ Button has no disabled or loading state during the async operation β†’ πŸ”΄
103
+
104
+ Patterns to flag:
105
+ <button onClick={handleSubmit}>Submit</button>
106
+ async function handleSubmit() { await api.post(...) }
107
+ // No button.disabled = true or loading state set β†’ πŸ”΄
108
+
109
+ Correct pattern:
110
+ <button disabled={isLoading} onClick={handleSubmit}>
111
+ {isLoading ? <Spinner /> : 'Submit'}
112
+ </button>
113
+ ```
114
+
115
+ **Severity:** πŸ”΄ Critical β€” users will click multiple times
116
+
117
+ **Fix:** Every button that triggers an async action must have a loading state. Disable the button during processing. Show a spinner or "Saving…" label.
118
+
119
+ **Context note:** Static buttons (navigation, modal open) don't need loading states. Only buttons that trigger async operations or processing.
120
+
121
+ ---
122
+
123
+ ### H1b β€” No success confirmation after form submit
124
+
125
+ **Figma detection:**
126
+ - On multi-step forms or standalone forms: check if a success/confirmation screen or toast exists after submission
127
+ - Flag if: form audit reveals no confirmation state in the component or flow
128
+
129
+ **Code detection:**
130
+ ```
131
+ Look for form submission handlers:
132
+ β†’ onSubmit / handleSubmit β†’ async operation
133
+ β†’ No toast, alert, redirect, or success message triggered after resolve β†’ πŸ”΄
134
+
135
+ Patterns to flag:
136
+ async function handleSubmit() {
137
+ await api.post('/contact', data)
138
+ // Nothing happens after β†’ πŸ”΄
139
+ }
140
+
141
+ Correct patterns:
142
+ β†’ toast.success('Message sent!') β†’ βœ…
143
+ β†’ router.push('/success') β†’ βœ…
144
+ β†’ setSubmitted(true) β†’ show confirmation UI β†’ βœ…
145
+ ```
146
+
147
+ **Severity:** πŸ”΄ Critical
148
+
149
+ **Fix:** Every form submission must confirm completion. Use a toast for minor actions, a confirmation screen for significant ones (order placed, account created).
150
+
151
+ **Context note:** Real-time forms (search-as-you-type, autosave) don't need explicit confirmation on every keystroke β€” only on intentional submit actions.
152
+
153
+ ---
154
+
155
+ ### H1c β€” No progress indicator on multi-step flows
156
+
157
+ **Figma detection:**
158
+ - Identify multi-step flows (onboarding, checkout, signup, forms with 3+ screens)
159
+ - Flag if: no step indicator (numbered steps, progress bar, breadcrumb trail) is visible
160
+
161
+ **Code detection:**
162
+ ```
163
+ Multi-step flow patterns:
164
+ β†’ Component with step/currentStep state and no progress indicator rendered β†’ 🟑
165
+
166
+ Patterns to flag:
167
+ const [step, setStep] = useState(1)
168
+ // No <ProgressBar step={step} total={4} /> or step indicator β†’ 🟑
169
+
170
+ Correct patterns:
171
+ β†’ <StepIndicator current={2} total={4} /> β†’ βœ…
172
+ β†’ <ProgressBar value={50} /> β†’ βœ…
173
+ β†’ "Step 2 of 4" text label β†’ βœ…
174
+ ```
175
+
176
+ **Severity:** 🟑 Warning
177
+
178
+ **Fix:** Any flow with 3+ steps needs a visible progress indicator. Users need to know how far they are and how much remains.
179
+
180
+ **Context note:** Linear single-purpose flows (e.g. a 2-step payment) can use a simple "Step 1 of 2" label. Full step indicator components are recommended for flows with 4+ steps.
181
+
182
+ ---
183
+
184
+ ## H2 β€” Match Between System and the Real World
185
+
186
+ **Definition:** The system should speak the user's language β€” using words, phrases, and concepts familiar to the user rather than system-oriented language.
187
+
188
+ **Why it matters:** Technical jargon, error codes, and developer-facing language in the UI forces users to translate system concepts into human meaning. Every translation step is a potential point of confusion or abandonment.
189
+
190
+ ### H2a β€” Technical jargon in UI copy
191
+
192
+ **Figma detection:**
193
+ - Read all visible text nodes
194
+ - Flag any of the following if they appear in user-facing UI (not dev console):
195
+ - Raw error codes: `404`, `500`, `ECONNREFUSED`, `null`, `undefined`, `NaN`
196
+ - Developer terms: `payload`, `endpoint`, `boolean`, `string`, `array`, `object`, `API`, `JSON`, `HTTP`, `timeout`
197
+ - Database terms: `query failed`, `foreign key`, `constraint violation`, `transaction rolled back`
198
+ - System paths: `/usr/local/...`, stack traces
199
+
200
+ **Code detection:**
201
+ ```
202
+ Search string literals and error message strings for:
203
+ β†’ Raw HTTP status codes shown to users: "Error 404", "500 Internal Server Error" β†’ πŸ”΄
204
+ β†’ Developer terms in user-facing strings:
205
+ "Invalid payload" β†’ πŸ”΄
206
+ "Null value returned" β†’ πŸ”΄
207
+ "API request failed" β†’ 🟑 (acceptable in some contexts)
208
+ "Connection timeout" β†’ 🟑 (too technical β€” use "Connection lost. Check your internet.")
209
+ β†’ Stack traces or file paths in error messages β†’ πŸ”΄
210
+ β†’ i18n keys shown raw: "error.auth.token_expired" instead of resolved string β†’ πŸ”΄
211
+ ```
212
+
213
+ **Severity:** πŸ”΄ Critical (raw error codes, stack traces) Β· 🟑 Warning (developer terminology)
214
+
215
+ **Fix:** Translate all system language into user language:
216
+ - "Error 404" β†’ "We can't find that page"
217
+ - "Invalid payload" β†’ "Something went wrong with your request β€” please try again"
218
+ - "ECONNREFUSED" β†’ "Can't connect to the server β€” check your internet connection"
219
+ - "null" β†’ remove entirely or replace with meaningful empty state
220
+
221
+ **Context note:** Technical content in developer tools, API documentation, or admin/debug panels is acceptable β€” those users expect and understand it. Only flag jargon in consumer-facing UI.
222
+
223
+ ---
224
+
225
+ ### H2b β€” Icons that don't match their real-world meaning
226
+
227
+ **Figma detection:**
228
+ - Identify icon + label pairs in nav, buttons, and actions
229
+ - Flag if: an icon's conventional meaning doesn't match its function in this UI
230
+ - Floppy disk for save β†’ βœ… (still universally understood)
231
+ - Magnifying glass for search β†’ βœ…
232
+ - Magnifying glass for "zoom in" (same icon as search in same product) β†’ 🟑
233
+ - House icon for "Dashboard" (when user's home is elsewhere) β†’ 🟒 Tip
234
+ - Hamburger menu on desktop in a non-menu context β†’ 🟑
235
+
236
+ **Code detection:**
237
+ ```
238
+ Icon component name vs aria-label or button context:
239
+ β†’ <SearchIcon /> inside a button labeled "Zoom" β†’ 🟑
240
+ β†’ <TrashIcon /> used for "Archive" action β†’ 🟑
241
+ β†’ <HeartIcon /> used for "Bookmark" or "Save" (not favourites) β†’ 🟑
242
+
243
+ Check aria-label against icon component name for semantic mismatch:
244
+ <button aria-label="Delete"><ArchiveIcon /></button> β†’ 🟑
245
+ ```
246
+
247
+ **Severity:** 🟑 Warning
248
+
249
+ **Fix:** Use the icon that matches the action's real-world mental model. When an icon's meaning is ambiguous in context, always pair it with a visible text label.
250
+
251
+ **Context note:** Some icon meanings have evolved (e.g. floppy disk = save) β€” don't flag established conventions even if the real-world object is obsolete. Only flag mismatches that would genuinely confuse a new user.
252
+
253
+ ---
254
+
255
+ ### H2c β€” Date, number, and unit formats that don't match user locale
256
+
257
+ *Cat 13 covers this in detail for i18n/RTL contexts. This check applies even when full i18n is not implemented.*
258
+
259
+ **Figma detection:**
260
+ - Look for hardcoded date formats in text nodes: "MM/DD/YYYY", "DD-MM-YY"
261
+ - Flag if: a specific format is hardcoded that may not match the user's locale
262
+
263
+ **Code detection:**
264
+ ```
265
+ β†’ Hardcoded date format strings: "MM/DD/YYYY", new Date().toLocaleDateString() without locale β†’ 🟑
266
+ β†’ Hardcoded currency symbols ($, Β£, €) outside a locale formatter β†’ 🟑
267
+ β†’ Large numbers without thousand separators in UI text β†’ 🟒 Tip
268
+
269
+ Correct patterns:
270
+ β†’ new Intl.DateTimeFormat(userLocale, options).format(date) β†’ βœ…
271
+ β†’ new Intl.NumberFormat(userLocale).format(number) β†’ βœ…
272
+ ```
273
+
274
+ **Severity:** 🟑 Warning
275
+
276
+ **Fix:** Use `Intl.DateTimeFormat` and `Intl.NumberFormat` for all date and number rendering. Never hardcode format strings.
277
+
278
+ ---
279
+
280
+ ## H3 β€” User Control and Freedom (gaps only)
281
+
282
+ *Cat 16 covers back buttons and breadcrumbs. Cat 11 covers undo for destructive actions. This section covers the remaining gaps.*
283
+
284
+ **Definition:** Users often choose system functions by mistake and will need a clearly marked "emergency exit" to leave the unwanted state without having to go through an extended dialogue.
285
+
286
+ **Why it matters:** When users feel trapped β€” in a modal, flow, or state they didn't intend β€” they lose confidence in the product. An obvious exit path is a sign of respect for user autonomy.
287
+
288
+ ### H3a β€” Modal/dialog without a close mechanism
289
+
290
+ **Figma detection:**
291
+ - Identify modal and dialog components
292
+ - Flag if: no close button (Γ—), no "Cancel" CTA, and no visible backdrop-click dismissal signal
293
+ - Flag if: close button is < 24Γ—24px or has < 3:1 contrast (too hard to find)
294
+
295
+ **Code detection:**
296
+ ```
297
+ Modal/dialog patterns:
298
+ β†’ <dialog>, role="dialog", or modal class with no close button β†’ πŸ”΄
299
+ β†’ No Escape key handler on modal β†’ 🟑
300
+ β†’ No backdrop click handler (when modal is dismissible) β†’ 🟑
301
+
302
+ Patterns to flag:
303
+ <div role="dialog">
304
+ <h2>Confirm action</h2>
305
+ <button onClick={confirm}>Yes</button>
306
+ // No cancel/close button β†’ πŸ”΄
307
+ </div>
308
+
309
+ Correct pattern:
310
+ <div role="dialog" aria-modal="true">
311
+ <button aria-label="Close" onClick={onClose}>Γ—</button>
312
+ <h2>Confirm action</h2>
313
+ <button onClick={confirm}>Yes</button>
314
+ <button onClick={onClose}>Cancel</button>
315
+ </div>
316
+ ```
317
+
318
+ **Severity:** πŸ”΄ Critical
319
+
320
+ **Fix:** Every modal must have a visible close mechanism β€” an Γ— button, a Cancel CTA, or both. Modals must also respond to Escape key. Never trap users in a modal without an exit.
321
+
322
+ **Context note:** Intentionally uncloseable modals (e.g. session expired, forced upgrade) are acceptable in specific product contexts β€” but even these must have a clear next action so users aren't stuck indefinitely.
323
+
324
+ ---
325
+
326
+ ### H3b β€” Multi-step flow with no way to go back
327
+
328
+ **Figma detection:**
329
+ - On multi-step flows: check each step for a visible Back button or previous step navigation
330
+ - Flag if: steps 2+ have no backward navigation
331
+ - Flag if: flow can only be exited by completing it (no cancel/exit option)
332
+
333
+ **Code detection:**
334
+ ```
335
+ Multi-step flow with no back:
336
+ β†’ step > 1 rendered with no back button / setStep(step - 1) handler β†’ 🟑
337
+ β†’ Wizard flow with no cancel or exit path β†’ 🟑
338
+
339
+ Patterns to flag:
340
+ {step === 2 && <Step2 onNext={() => setStep(3)} />}
341
+ // No onBack prop or cancel option β†’ 🟑
342
+
343
+ Correct pattern:
344
+ <Step2
345
+ onNext={() => setStep(3)}
346
+ onBack={() => setStep(1)}
347
+ onCancel={handleCancel}
348
+ />
349
+ ```
350
+
351
+ **Severity:** 🟑 Warning (back navigation) Β· πŸ”΄ Critical (no exit from a committed flow like checkout)
352
+
353
+ **Fix:** Every step in a multi-step flow must have a Back option. Long flows (3+ steps) must also have a Cancel or Save & Exit option so users can leave without losing progress.
354
+
355
+ **Context note:** Some flows legitimately prevent going back for data integrity reasons (e.g. payment processing step). In these cases, disable the Back button with a clear explanation rather than hiding it.
356
+
357
+ ---
358
+
359
+ ### H3c β€” Destructive action with no confirmation or undo
360
+
361
+ *Cat 11 covers this partially. This check focuses on detection signals.*
362
+
363
+ **Figma detection:**
364
+ - Identify destructive actions: delete, remove, archive, cancel subscription, clear all
365
+ - Flag if: no confirmation dialog, warning modal, or undo mechanism is shown
366
+ - Flag if: destructive CTA is styled the same as safe CTAs (no red/warning treatment)
367
+
368
+ **Code detection:**
369
+ ```
370
+ Destructive action patterns:
371
+ β†’ onClick={handleDelete} with no confirmation dialog triggered β†’ 🟑
372
+ β†’ window.confirm() used (browser native β€” poor UX but functional) β†’ 🟒 Tip
373
+ β†’ No toast with undo after soft-delete β†’ 🟑
374
+
375
+ Patterns to flag:
376
+ <button onClick={() => deleteItem(id)}>Delete</button>
377
+ // No confirmation, no undo β†’ 🟑
378
+
379
+ Correct patterns:
380
+ β†’ Custom confirmation dialog: "Delete 'Project Alpha'? This cannot be undone." β†’ βœ…
381
+ β†’ Soft-delete with toast: "Deleted β€” Undo" (5 second window) β†’ βœ…
382
+ ```
383
+
384
+ **Severity:** 🟑 Warning (reversible actions) Β· πŸ”΄ Critical (permanently destructive with no confirmation)
385
+
386
+ **Fix:** Permanent destructive actions must have a confirmation dialog that names the item being deleted. Reversible destructive actions should offer an Undo toast (3–5 seconds). Never use a generic "Are you sure?" β€” name the thing being deleted.
387
+
388
+ ---
389
+
390
+ ## H6 β€” Recognition Rather Than Recall
391
+
392
+ **Definition:** Minimize the user's memory load by making objects, actions, and options visible. The user should not have to remember information from one part of the interface to another.
393
+
394
+ **Why it matters:** Human short-term memory is limited. Every time the UI requires a user to remember something from a previous step or screen, it increases cognitive load and error rate.
395
+
396
+ ### H6a β€” Icon-only navigation with no visible labels
397
+
398
+ **Figma detection:**
399
+ - Identify navigation components (sidebar nav, bottom nav, toolbar)
400
+ - Flag if: nav items have icons but no visible text labels
401
+ - Exception: tooltips on hover are acceptable for secondary actions but not primary navigation
402
+
403
+ **Code detection:**
404
+ ```
405
+ Icon-only nav items:
406
+ β†’ <nav> or role="navigation" items with icon child but no visible text β†’ 🟑
407
+ β†’ aria-label present but no visible label β†’ 🟑 (accessible but not heuristically ideal)
408
+
409
+ Patterns to flag:
410
+ <nav>
411
+ <a href="/home"><HomeIcon /></a>
412
+ <a href="/settings"><SettingsIcon /></a>
413
+ </nav>
414
+ // Icons only, no labels β†’ 🟑
415
+
416
+ Correct pattern:
417
+ <a href="/home">
418
+ <HomeIcon aria-hidden="true" />
419
+ <span>Home</span>
420
+ </a>
421
+ ```
422
+
423
+ **Severity:** 🟑 Warning (primary nav) · 🟒 Tip (secondary/toolbar actions)
424
+
425
+ **Fix:** Primary navigation items must have visible text labels alongside icons. Icon-only nav forces users to memorise icon meanings, which is a recall burden. Tooltips are acceptable for toolbars and secondary actions.
426
+
427
+ **Context note:** Bottom navigation bars on mobile commonly use icon-only or icon+label layouts β€” flag icon-only on mobile bottom nav as 🟒 Tip (space constrained) not 🟑. Desktop sidebars and top nav always need labels.
428
+
429
+ ---
430
+
431
+ ### H6b β€” Floating labels that disappear on focus
432
+
433
+ **Figma detection:**
434
+ - Identify input fields with floating label behaviour
435
+ - Flag if: the label moves inside the input and disappears when the user starts typing (label used as placeholder)
436
+ - Flag if: the value is entered and the label is no longer visible (user cannot see what field they filled)
437
+
438
+ **Code detection:**
439
+ ```
440
+ Floating label patterns that remove the label:
441
+ β†’ input:focus + label { display: none } β†’ πŸ”΄
442
+ β†’ placeholder used as label with no persistent label β†’ πŸ”΄
443
+ (already flagged in Cat 12, reinforce here)
444
+
445
+ Acceptable floating label:
446
+ β†’ Label moves to top of field on focus, remains visible throughout β†’ βœ…
447
+ β†’ Label + separate placeholder hint below field β†’ βœ…
448
+
449
+ Problematic pattern:
450
+ β†’ Label disappears entirely when user types, showing only the value β†’ 🟑
451
+ (user can't verify which field they're editing)
452
+ ```
453
+
454
+ **Severity:** πŸ”΄ Critical (label disappears) Β· 🟑 Warning (label obscured during input)
455
+
456
+ **Fix:** Labels must remain persistently visible β€” above the input, not inside it. If floating labels are used, ensure they persist at the top of the field during and after input, never disappear.
457
+
458
+ **Context note:** The "material design floating label" pattern (label moves from inside to above the field on focus) is acceptable if the label remains fully visible throughout. The issue is specifically when the label disappears at any point.
459
+
460
+ ---
461
+
462
+ ### H6c β€” No visible selected state in dropdowns or filters
463
+
464
+ **Figma detection:**
465
+ - Identify dropdown, select, filter, and segmented control components
466
+ - Flag if: selected/active option has no clear visual differentiation from unselected options
467
+ - Flag if: after closing a dropdown, the selected value is not shown in the trigger button
468
+
469
+ **Code detection:**
470
+ ```
471
+ Dropdown trigger after selection:
472
+ β†’ Trigger button shows placeholder text even after selection β†’ πŸ”΄
473
+ e.g. <button>Select a category</button> after user selected "Design" β†’ πŸ”΄
474
+
475
+ Selected state in open dropdown:
476
+ β†’ Selected option has no checkmark, highlight, or bold treatment β†’ 🟑
477
+ β†’ aria-selected="true" present but no visual distinction β†’ 🟑
478
+
479
+ Filter active state:
480
+ β†’ Active filter tag/pill has no visual distinction from inactive β†’ 🟑
481
+ β†’ Active filter count badge missing β†’ 🟒 Tip
482
+ ```
483
+
484
+ **Severity:** πŸ”΄ Critical (trigger doesn't show selection) Β· 🟑 Warning (no visual distinction in list)
485
+
486
+ **Fix:** Dropdown triggers must always show the currently selected value. Open dropdown lists must clearly mark the selected option with a checkmark, highlight, or bold. Active filters must be visually distinct from inactive ones.
487
+
488
+ ---
489
+
490
+ ## H7 β€” Flexibility and Efficiency of Use
491
+
492
+ **Definition:** Accelerators β€” unseen by the novice user β€” may often speed up the interaction for the expert user such that the system can cater to both inexperienced and experienced users.
493
+
494
+ **Why it matters:** As users gain experience, they develop expectations of being able to do things faster. An interface that can only be used slowly frustrates power users and reduces productivity.
495
+
496
+ ### H7a β€” No keyboard shortcut hints for power users
497
+
498
+ **Figma detection:**
499
+ - Look for tooltip components in the design
500
+ - Flag if: complex or frequently-used actions (save, new item, search, undo) have no keyboard shortcut hint in their tooltip or adjacent label
501
+ - Flag if: tooltip components exist but show no shortcut hints
502
+
503
+ **Code detection:**
504
+ ```
505
+ Keyboard shortcut accessibility:
506
+ β†’ accesskey attributes used β†’ βœ… (check for conflicts with browser shortcuts)
507
+ β†’ Keyboard event listeners for shortcuts (Cmd+S, Ctrl+K, etc.) β†’ βœ…
508
+
509
+ Shortcut hint display:
510
+ β†’ Shortcut exists in code but tooltip doesn't show it β†’ 🟒 Tip
511
+ β†’ No keyboard shortcuts at all on a complex productivity tool β†’ 🟑
512
+
513
+ Look for:
514
+ β†’ document.addEventListener('keydown', ...) with shortcut logic β†’ if no hint shown β†’ 🟒 Tip
515
+ β†’ useHotkeys / react-hotkeys / mousetrap library imported β†’ check if hints are shown
516
+ ```
517
+
518
+ **Severity:** 🟒 Tip (general) · 🟑 Warning (on tools where power users are the primary audience)
519
+
520
+ **Fix:** Add keyboard shortcut hints to tooltips for frequently-used actions. Format: "Save (⌘S)" or "New item (⌘N)". This is low effort and high value for productivity tools.
521
+
522
+ **Context note:** Consumer apps (social, e-commerce) rarely need keyboard shortcuts. This check is most relevant for productivity tools, design tools, dashboards, and admin interfaces where users spend significant time.
523
+
524
+ ---
525
+
526
+ ### H7b β€” No bulk action support where expected
527
+
528
+ **Figma detection:**
529
+ - Identify list views, table views, or grid views with multiple items
530
+ - Flag if: no "select all" checkbox, no bulk action toolbar, no multi-select pattern in a list that clearly warrants it (emails, tasks, files, orders)
531
+
532
+ **Code detection:**
533
+ ```
534
+ List/table with no bulk selection:
535
+ β†’ Table/list component with no checkbox column β†’ 🟑 if list implies management
536
+ β†’ No selectedItems state in a list that clearly supports management operations β†’ 🟑
537
+
538
+ Context signals that warrant bulk actions:
539
+ β†’ Items have delete/archive/move actions β†’ no bulk = 🟑
540
+ β†’ List has 10+ items β†’ no bulk = 🟑
541
+ β†’ Admin interface β†’ no bulk = 🟑
542
+
543
+ Correct pattern:
544
+ β†’ <input type="checkbox" onChange={handleSelectAll} /> in table header β†’ βœ…
545
+ β†’ selectedItems.length > 0 && <BulkActionBar /> β†’ βœ…
546
+ ```
547
+
548
+ **Severity:** 🟑 Warning (clearly management-oriented lists) · 🟒 Tip (general lists)
549
+
550
+ **Fix:** Any list or table where users are expected to manage multiple items should support bulk selection. Add a checkbox column, a "Select all" header, and a contextual bulk action toolbar.
551
+
552
+ **Context note:** Display-only lists (search results, feeds, product listings) don't need bulk actions. Only management-oriented lists (inbox, file manager, task list, order management) warrant this check.
553
+
554
+ ---
555
+
556
+ ### H7c β€” No saved preferences or recently used items
557
+
558
+ **Figma detection:**
559
+ - Look for dropdowns, selectors, or pickers that users use repeatedly
560
+ - Flag if: no "Recently used", "Pinned", or "Favourites" section in search, filters, or pickers that clearly warrant it (emoji pickers, colour pickers, template selectors)
561
+
562
+ **Code detection:**
563
+ ```
564
+ Persistence patterns:
565
+ β†’ Frequently used form fields with no autocomplete/remembered values β†’ 🟒 Tip
566
+ β†’ Search component with no recent searches stored in localStorage β†’ 🟒 Tip
567
+ β†’ Settings changed by user with no persistence across sessions β†’ 🟑
568
+
569
+ Positive signals:
570
+ β†’ localStorage / sessionStorage used to remember user preferences β†’ βœ…
571
+ β†’ Autocomplete with recent/suggested values β†’ βœ…
572
+ β†’ "Remember me" / "Save as default" option on settings β†’ βœ…
573
+ ```
574
+
575
+ **Severity:** 🟒 Tip (general) · 🟑 Warning (productivity tools where re-entering settings is frequent)
576
+
577
+ **Fix:** Persist user preferences across sessions using localStorage or a backend store. Add "Recently used" sections to frequently-accessed pickers. Autocomplete previous values in repeat-use form fields.
578
+
579
+ ---
580
+
581
+ ## H10 β€” Help and Documentation
582
+
583
+ **Definition:** Even though it is better if the system can be used without documentation, it may be necessary to provide help and documentation. Any such information should be easy to search, focused on the user's task, list concrete steps to be carried out, and not be too large.
584
+
585
+ **Why it matters:** Complex interfaces inevitably have learning curves. When help is absent or hard to find, users abandon tasks or develop incorrect mental models that cause repeated errors.
586
+
587
+ ### H10a β€” Complex inputs with no helper text
588
+
589
+ **Figma detection:**
590
+ - Identify complex or non-obvious form fields:
591
+ - Password fields (no strength indicator or requirements shown)
592
+ - Fields with specific format requirements (phone, date, credit card, VAT number)
593
+ - Fields with character limits
594
+ - Upload fields (no file type/size guidance)
595
+ - Flag if: no helper text, hint, or tooltip explains what's expected
596
+
597
+ **Code detection:**
598
+ ```
599
+ Missing helper text patterns:
600
+ β†’ <input type="password"> with no password requirements shown β†’ 🟑
601
+ β†’ <input type="tel"> with no format hint β†’ 🟒 Tip
602
+ β†’ <input maxLength={280}> with no character counter β†’ 🟑
603
+ β†’ <input type="file"> with no accepted types shown β†’ 🟑
604
+
605
+ Correct patterns:
606
+ β†’ <p id="password-hint">8+ chars, 1 number, 1 symbol</p>
607
+ <input aria-describedby="password-hint" type="password"> β†’ βœ…
608
+ β†’ Character counter: {value.length}/280 β†’ βœ…
609
+ β†’ Dropzone: "Accepted: JPG, PNG, PDF. Max 10MB." β†’ βœ…
610
+ ```
611
+
612
+ **Severity:** 🟑 Warning (password, character-limited, formatted fields) · 🟒 Tip (simple fields)
613
+
614
+ **Fix:** Every field with a specific format requirement, character limit, or file constraint must show that information before the user submits β€” not only in an error message after failure.
615
+
616
+ **Context note:** Simple text fields (first name, email) don't need helper text unless there's a specific constraint. Only flag fields where the requirements are non-obvious.
617
+
618
+ ---
619
+
620
+ ### H10b β€” Error messages with no guidance on how to fix
621
+
622
+ *Cat 12 covers error message tone. This check covers error messages that fail to guide recovery.*
623
+
624
+ **Figma detection:**
625
+ - Read all error message text nodes
626
+ - Flag if: error message states what went wrong but gives no actionable next step
627
+ - "Invalid email" alone β†’ 🟑 (states the problem, no guidance)
628
+ - "Please enter a valid email address (e.g. name@example.com)" β†’ βœ…
629
+
630
+ **Code detection:**
631
+ ```
632
+ Error message strings:
633
+ β†’ "Invalid input" β†’ πŸ”΄ (no information at all)
634
+ β†’ "Error" β†’ πŸ”΄ (completely unhelpful)
635
+ β†’ "Invalid email" β†’ 🟑 (states problem, no fix)
636
+ β†’ "Please enter a valid email (e.g. name@example.com)" β†’ βœ…
637
+ β†’ "Password must be at least 8 characters" β†’ βœ… (actionable)
638
+
639
+ Search for error strings shorter than 4 words β†’ likely too vague β†’ 🟑
640
+ ```
641
+
642
+ **Severity:** πŸ”΄ Critical (no information) Β· 🟑 Warning (states problem but no fix guidance)
643
+
644
+ **Fix:** Every error message must: (1) say what went wrong, (2) say how to fix it. The format: "[What's wrong] β€” [how to fix it]". "Invalid email" β†’ "Please enter a valid email address (e.g. name@example.com)."
645
+
646
+ ---
647
+
648
+ ### H10c β€” No contextual help on ambiguous or complex UI sections
649
+
650
+ **Figma detection:**
651
+ - Identify complex dashboard sections, settings with non-obvious implications, or forms with technical fields
652
+ - Flag if: no tooltip, info icon, or help text is present on fields/sections where a new user would reasonably be confused
653
+
654
+ **Code detection:**
655
+ ```
656
+ Tooltip/help signal detection:
657
+ β†’ Tooltip component or [?] icon near complex fields β†’ βœ…
658
+ β†’ title attribute on non-interactive elements β†’ 🟒 Tip (not keyboard accessible)
659
+ β†’ aria-describedby with helper text β†’ βœ…
660
+
661
+ Missing help patterns:
662
+ β†’ Complex settings section (billing cycle, permissions, webhook config) with no help text β†’ 🟑
663
+ β†’ Technical fields (API key, webhook URL, CRON expression) with no explanation β†’ 🟑
664
+ ```
665
+
666
+ **Severity:** 🟑 Warning (clearly complex or technical fields) · 🟒 Tip (generally non-obvious)
667
+
668
+ **Fix:** Add a tooltip or inline helper to any field or setting where a new user would reasonably not know what to enter or what the consequence of their choice is. Link to documentation for truly complex features.
669
+
670
+ **Context note:** Don't add helper text to every field β€” that creates noise. Reserve it for genuinely ambiguous inputs and high-stakes settings. If everything has a tooltip, nothing does.
671
+
672
+ ---
673
+
674
+ ### H10d β€” No onboarding guidance on first use
675
+
676
+ **Figma detection:**
677
+ - Look for empty state screens, first-time user flows, or blank dashboard states
678
+ - Flag if: empty state shows no guidance on what to do first
679
+ - Flag if: there is no onboarding tooltip sequence, welcome message, or getting started prompt on a complex product
680
+
681
+ **Code detection:**
682
+ ```
683
+ First-use detection:
684
+ β†’ localStorage.getItem('hasOnboarded') check with no onboarding UI β†’ 🟑
685
+ β†’ Empty state component with no CTA or next-step guidance β†’ 🟑
686
+ β†’ Dashboard with no tutorial prompt on first login β†’ 🟒 Tip
687
+
688
+ Correct patterns:
689
+ β†’ {!hasOnboarded && <WelcomeTour />} β†’ βœ…
690
+ β†’ Empty state: <p>No projects yet β€” <a href="/new">Create your first project</a></p> β†’ βœ…
691
+ ```
692
+
693
+ **Severity:** 🟑 Warning (complex product with no onboarding) · 🟒 Tip (simple product)
694
+
695
+ **Fix:** New users landing on an empty state need direction. Every empty state must tell the user what this section is for and how to populate it. Complex products should have a lightweight first-use tour or checklist.
696
+
697
+ ---
698
+
699
+ ## Quick Reference Checklist / λΉ λ₯Έ μ°Έμ‘° 체크리슀트
700
+
701
+ **H1 β€” Visibility of System Status / μ‹œμŠ€ν…œ μƒνƒœ κ°€μ‹œμ„± (gaps)**
702
+ - [ ] Buttons that trigger async actions have loading states / 비동기 μž‘μ—… λ²„νŠΌμ— λ‘œλ”© μƒνƒœ 있음
703
+ - [ ] Form submissions confirm success / 폼 제좜 μ‹œ 성곡 확인 λ©”μ‹œμ§€ ν‘œμ‹œ
704
+ - [ ] Multi-step flows (3+) have a visible progress indicator / λ©€ν‹°μŠ€ν… ν”Œλ‘œμš°μ— μ§„ν–‰ ν‘œμ‹œκΈ° 있음
705
+
706
+ **H2 β€” Match Between System and Real World / μ‹œμŠ€ν…œκ³Ό ν˜„μ‹€ μ„Έκ³„μ˜ 일치**
707
+ - [ ] No raw error codes or developer terms in UI / UI에 μ›μ‹œ 였λ₯˜ μ½”λ“œ λ˜λŠ” 개발자 μš©μ–΄ μ—†μŒ
708
+ - [ ] Icons match their conventional real-world meaning / μ•„μ΄μ½˜μ΄ μ‹€μ œ μ˜λ―Έμ™€ 일치
709
+ - [ ] Date and number formats use locale-aware formatting / λ‚ μ§œΒ·μˆ«μž ν˜•μ‹μ— λ‘œμΌ€μΌ 적용
710
+
711
+ **H3 β€” User Control and Freedom / μ‚¬μš©μž μ œμ–΄ 및 자유 (gaps)**
712
+ - [ ] All modals have a close mechanism and respond to Escape / λͺ¨λ“  λͺ¨λ‹¬μ— λ‹«κΈ° κΈ°λŠ₯ 및 Escape ν‚€ 지원
713
+ - [ ] Multi-step flows have a Back option on every step / λ©€ν‹°μŠ€ν… ν”Œλ‘œμš°μ˜ λͺ¨λ“  단계에 λ’€λ‘œ κ°€κΈ° μ˜΅μ…˜
714
+ - [ ] Destructive actions have confirmation dialogs / 파괴적 μž‘μ—…μ— 확인 λŒ€ν™”μƒμž 있음
715
+
716
+ **H6 β€” Recognition Rather Than Recall / 기얡보닀 인식**
717
+ - [ ] Primary navigation items have visible text labels / κΈ°λ³Έ λ‚΄λΉ„κ²Œμ΄μ…˜μ— ν…μŠ€νŠΈ 라벨 있음
718
+ - [ ] Form labels remain visible during and after input / 폼 라벨이 μž…λ ₯ 쀑·후에도 ν‘œμ‹œλ¨
719
+ - [ ] Dropdown triggers show the currently selected value / λ“œλ‘­λ‹€μš΄ νŠΈλ¦¬κ±°μ— ν˜„μž¬ 선택값 ν‘œμ‹œ
720
+
721
+ **H7 β€” Flexibility and Efficiency of Use / μ‚¬μš©μ˜ μœ μ—°μ„± 및 νš¨μœ¨μ„±**
722
+ - [ ] Keyboard shortcut hints shown where relevant / κ΄€λ ¨ ν•­λͺ©μ— ν‚€λ³΄λ“œ 단좕킀 힌트 ν‘œμ‹œ
723
+ - [ ] Management lists have bulk selection where warranted / 관리 λͺ©λ‘μ— 일괄 선택 지원
724
+ - [ ] User preferences are persisted across sessions / μ‚¬μš©μž ν™˜κ²½μ„€μ •μ΄ μ„Έμ…˜ κ°„ μœ μ§€λ¨
725
+
726
+ **H10 β€” Help and Documentation / 도움말 및 λ¬Έμ„œ**
727
+ - [ ] Fields with format requirements show helper text / ν˜•μ‹ μš”κ±΄μ΄ μžˆλŠ” ν•„λ“œμ— 도움말 ν…μŠ€νŠΈ 있음
728
+ - [ ] Error messages state what went wrong AND how to fix it / 였λ₯˜ λ©”μ‹œμ§€μ— 문제점과 ν•΄κ²° 방법 λͺ¨λ‘ 포함
729
+ - [ ] Complex or technical fields have contextual tooltips / λ³΅μž‘ν•œ ν•„λ“œμ— 상황별 툴팁 있음
730
+ - [ ] Empty states and first-use screens give clear next-step guidance / 빈 μƒνƒœμ™€ 첫 μ‚¬μš© 화면에 λ‹€μŒ 단계 μ•ˆλ‚΄ 있음