@rune-kit/rune 2.10.0 → 2.11.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 (205) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +8 -6
  3. package/commands/rune.md +168 -168
  4. package/contexts/dev.md +34 -34
  5. package/contexts/research.md +43 -43
  6. package/contexts/review.md +55 -55
  7. package/extensions/ai-ml/PACK.md +88 -88
  8. package/extensions/ai-ml/skills/ai-agents.md +172 -172
  9. package/extensions/ai-ml/skills/code-sandbox.md +187 -187
  10. package/extensions/ai-ml/skills/deep-research.md +146 -146
  11. package/extensions/ai-ml/skills/embedding-search.md +66 -66
  12. package/extensions/ai-ml/skills/fine-tuning-guide.md +74 -74
  13. package/extensions/ai-ml/skills/llm-architect.md +125 -125
  14. package/extensions/ai-ml/skills/llm-integration.md +64 -64
  15. package/extensions/ai-ml/skills/prompt-patterns.md +72 -72
  16. package/extensions/ai-ml/skills/rag-patterns.md +66 -66
  17. package/extensions/ai-ml/skills/web-extraction.md +114 -114
  18. package/extensions/analytics/PACK.md +92 -92
  19. package/extensions/analytics/skills/ab-testing.md +72 -72
  20. package/extensions/analytics/skills/dashboard-patterns.md +83 -83
  21. package/extensions/analytics/skills/data-validation.md +68 -68
  22. package/extensions/analytics/skills/funnel-analysis.md +81 -81
  23. package/extensions/analytics/skills/sql-patterns.md +57 -57
  24. package/extensions/analytics/skills/statistical-analysis.md +79 -79
  25. package/extensions/analytics/skills/tracking-setup.md +71 -71
  26. package/extensions/backend/PACK.md +104 -104
  27. package/extensions/backend/skills/api-patterns.md +84 -84
  28. package/extensions/backend/skills/async-pipeline.md +193 -193
  29. package/extensions/backend/skills/auth-patterns.md +97 -97
  30. package/extensions/backend/skills/background-jobs.md +133 -133
  31. package/extensions/backend/skills/caching-patterns.md +108 -108
  32. package/extensions/backend/skills/cli-generation.md +133 -133
  33. package/extensions/backend/skills/database-patterns.md +87 -87
  34. package/extensions/backend/skills/middleware-patterns.md +104 -104
  35. package/extensions/chrome-ext/PACK.md +93 -93
  36. package/extensions/chrome-ext/skills/cws-preflight.md +143 -143
  37. package/extensions/chrome-ext/skills/cws-publish.md +104 -104
  38. package/extensions/chrome-ext/skills/ext-ai-integration.md +251 -251
  39. package/extensions/chrome-ext/skills/ext-messaging.md +139 -139
  40. package/extensions/chrome-ext/skills/ext-storage.md +133 -133
  41. package/extensions/chrome-ext/skills/mv3-scaffold.md +164 -164
  42. package/extensions/content/PACK.md +96 -96
  43. package/extensions/content/skills/blog-patterns.md +88 -88
  44. package/extensions/content/skills/cms-integration.md +131 -131
  45. package/extensions/content/skills/content-scoring.md +107 -107
  46. package/extensions/content/skills/i18n.md +83 -83
  47. package/extensions/content/skills/mdx-authoring.md +137 -137
  48. package/extensions/content/skills/reference.md +1014 -1014
  49. package/extensions/content/skills/seo-patterns.md +67 -67
  50. package/extensions/content/skills/video-repurpose.md +153 -153
  51. package/extensions/devops/PACK.md +101 -101
  52. package/extensions/devops/skills/chaos-testing.md +67 -67
  53. package/extensions/devops/skills/ci-cd.md +75 -75
  54. package/extensions/devops/skills/docker.md +58 -58
  55. package/extensions/devops/skills/edge-serverless.md +163 -163
  56. package/extensions/devops/skills/infra-as-code.md +158 -158
  57. package/extensions/devops/skills/kubernetes.md +110 -110
  58. package/extensions/devops/skills/monitoring.md +57 -57
  59. package/extensions/devops/skills/server-setup.md +64 -64
  60. package/extensions/devops/skills/ssl-domain.md +42 -42
  61. package/extensions/ecommerce/PACK.md +116 -116
  62. package/extensions/ecommerce/skills/cart-system.md +79 -79
  63. package/extensions/ecommerce/skills/inventory-mgmt.md +102 -102
  64. package/extensions/ecommerce/skills/order-management.md +126 -126
  65. package/extensions/ecommerce/skills/payment-integration.md +472 -472
  66. package/extensions/ecommerce/skills/shopify-dev.md +69 -69
  67. package/extensions/ecommerce/skills/subscription-billing.md +93 -93
  68. package/extensions/ecommerce/skills/tax-compliance.md +117 -117
  69. package/extensions/gamedev/PACK.md +142 -142
  70. package/extensions/gamedev/skills/asset-pipeline.md +74 -74
  71. package/extensions/gamedev/skills/audio-system.md +129 -129
  72. package/extensions/gamedev/skills/camera-system.md +87 -87
  73. package/extensions/gamedev/skills/ecs.md +98 -98
  74. package/extensions/gamedev/skills/game-loops.md +72 -72
  75. package/extensions/gamedev/skills/input-system.md +199 -199
  76. package/extensions/gamedev/skills/multiplayer.md +180 -180
  77. package/extensions/gamedev/skills/particles.md +105 -105
  78. package/extensions/gamedev/skills/physics-engine.md +89 -89
  79. package/extensions/gamedev/skills/scene-management.md +146 -146
  80. package/extensions/gamedev/skills/threejs-patterns.md +90 -90
  81. package/extensions/gamedev/skills/webgl.md +71 -71
  82. package/extensions/mobile/PACK.md +106 -106
  83. package/extensions/mobile/skills/app-store-connect.md +152 -152
  84. package/extensions/mobile/skills/app-store-prep.md +66 -66
  85. package/extensions/mobile/skills/deep-linking.md +109 -109
  86. package/extensions/mobile/skills/flutter.md +60 -60
  87. package/extensions/mobile/skills/ios-build-pipeline.md +142 -142
  88. package/extensions/mobile/skills/native-bridge.md +66 -66
  89. package/extensions/mobile/skills/ota-updates.md +97 -97
  90. package/extensions/mobile/skills/push-notifications.md +111 -111
  91. package/extensions/mobile/skills/react-native.md +82 -82
  92. package/extensions/saas/PACK.md +116 -116
  93. package/extensions/saas/skills/billing-integration.md +200 -200
  94. package/extensions/saas/skills/feature-flags.md +130 -130
  95. package/extensions/saas/skills/multi-tenant.md +103 -103
  96. package/extensions/saas/skills/onboarding-flow.md +139 -139
  97. package/extensions/saas/skills/subscription-flow.md +95 -95
  98. package/extensions/saas/skills/team-management.md +144 -144
  99. package/extensions/security/PACK.md +99 -99
  100. package/extensions/security/skills/api-security.md +140 -140
  101. package/extensions/security/skills/compliance.md +68 -68
  102. package/extensions/security/skills/owasp-audit.md +64 -64
  103. package/extensions/security/skills/pentest-patterns.md +77 -77
  104. package/extensions/security/skills/secret-mgmt.md +65 -65
  105. package/extensions/security/skills/supply-chain.md +65 -65
  106. package/extensions/trading/PACK.md +80 -80
  107. package/extensions/trading/skills/chart-components.md +55 -55
  108. package/extensions/trading/skills/experiment-loop.md +125 -125
  109. package/extensions/trading/skills/fintech-patterns.md +47 -47
  110. package/extensions/trading/skills/indicator-library.md +58 -58
  111. package/extensions/trading/skills/quant-analysis.md +111 -111
  112. package/extensions/trading/skills/realtime-data.md +58 -58
  113. package/extensions/trading/skills/trade-logic.md +104 -104
  114. package/extensions/ui/PACK.md +130 -130
  115. package/extensions/ui/skills/a11y-audit.md +91 -91
  116. package/extensions/ui/skills/animation-patterns.md +127 -127
  117. package/extensions/ui/skills/component-patterns.md +100 -100
  118. package/extensions/ui/skills/design-decision.md +108 -108
  119. package/extensions/ui/skills/design-system.md +68 -68
  120. package/extensions/ui/skills/landing-patterns.md +155 -155
  121. package/extensions/ui/skills/palette-picker.md +173 -173
  122. package/extensions/ui/skills/react-health.md +90 -90
  123. package/extensions/ui/skills/type-system.md +125 -125
  124. package/extensions/ui/skills/web-vitals.md +153 -153
  125. package/extensions/zalo/PACK.md +145 -145
  126. package/extensions/zalo/skills/zalo-oa-mcp.md +317 -317
  127. package/extensions/zalo/skills/zalo-oa-messaging.md +429 -429
  128. package/extensions/zalo/skills/zalo-oa-setup.md +236 -236
  129. package/extensions/zalo/skills/zalo-oa-webhook.md +189 -189
  130. package/extensions/zalo/skills/zalo-personal-messaging.md +194 -194
  131. package/extensions/zalo/skills/zalo-personal-setup.md +153 -153
  132. package/extensions/zalo/skills/zalo-rate-guard.md +219 -219
  133. package/hooks/auto-format/index.cjs +48 -48
  134. package/hooks/hooks.json +111 -111
  135. package/hooks/post-session-reflect/index.cjs +189 -189
  136. package/hooks/pre-compact/index.cjs +95 -95
  137. package/hooks/run-hook.cmd +1 -1
  138. package/hooks/secrets-scan/index.cjs +100 -100
  139. package/hooks/session-start/index.cjs +71 -71
  140. package/hooks/typecheck/index.cjs +65 -65
  141. package/package.json +63 -63
  142. package/references/ui-pro-max-data/LICENSE-UI-PRO-MAX +21 -21
  143. package/references/ui-pro-max-data/charts.csv +26 -26
  144. package/references/ui-pro-max-data/colors.csv +161 -161
  145. package/references/ui-pro-max-data/styles.csv +68 -68
  146. package/references/ui-pro-max-data/typography.csv +74 -74
  147. package/references/ui-pro-max-data/ui-reasoning.csv +162 -162
  148. package/references/ui-pro-max-data/ux-guidelines.csv +99 -99
  149. package/skills/adversary/SKILL.md +283 -283
  150. package/skills/asset-creator/SKILL.md +157 -157
  151. package/skills/audit/SKILL.md +147 -2
  152. package/skills/autopsy/SKILL.md +335 -335
  153. package/skills/brainstorm/SKILL.md +342 -342
  154. package/skills/browser-pilot/SKILL.md +168 -168
  155. package/skills/constraint-check/SKILL.md +165 -165
  156. package/skills/context-engine/SKILL.md +404 -404
  157. package/skills/cook/SKILL.md +917 -863
  158. package/skills/db/SKILL.md +273 -273
  159. package/skills/debug/SKILL.md +465 -465
  160. package/skills/dependency-doctor/SKILL.md +265 -235
  161. package/skills/deploy/SKILL.md +274 -231
  162. package/skills/design/DESIGN-REFERENCE.md +365 -365
  163. package/skills/design/SKILL.md +589 -589
  164. package/skills/doc-processor/SKILL.md +254 -254
  165. package/skills/docs/SKILL.md +374 -374
  166. package/skills/docs-seeker/SKILL.md +177 -177
  167. package/skills/fix/SKILL.md +330 -330
  168. package/skills/git/SKILL.md +339 -339
  169. package/skills/hallucination-guard/SKILL.md +219 -219
  170. package/skills/incident/SKILL.md +254 -253
  171. package/skills/integrity-check/SKILL.md +169 -169
  172. package/skills/journal/SKILL.md +240 -240
  173. package/skills/launch/SKILL.md +344 -344
  174. package/skills/logic-guardian/SKILL.md +251 -251
  175. package/skills/marketing/SKILL.md +290 -289
  176. package/skills/mcp-builder/SKILL.md +425 -425
  177. package/skills/neural-memory/SKILL.md +362 -362
  178. package/skills/onboard/SKILL.md +404 -403
  179. package/skills/perf/SKILL.md +346 -346
  180. package/skills/plan/SKILL.md +433 -428
  181. package/skills/preflight/SKILL.md +415 -415
  182. package/skills/problem-solver/SKILL.md +380 -284
  183. package/skills/rescue/SKILL.md +474 -474
  184. package/skills/retro/SKILL.md +3 -1
  185. package/skills/review/SKILL.md +612 -588
  186. package/skills/review-intake/SKILL.md +249 -249
  187. package/skills/safeguard/SKILL.md +200 -200
  188. package/skills/sast/SKILL.md +190 -190
  189. package/skills/scaffold/SKILL.md +328 -287
  190. package/skills/scope-guard/SKILL.md +180 -180
  191. package/skills/scout/SKILL.md +263 -263
  192. package/skills/sentinel/SKILL.md +382 -381
  193. package/skills/sentinel-env/SKILL.md +254 -254
  194. package/skills/sequential-thinking/SKILL.md +234 -234
  195. package/skills/session-bridge/SKILL.md +543 -543
  196. package/skills/skill-forge/SKILL.md +581 -581
  197. package/skills/skill-router/SKILL.md +3 -0
  198. package/skills/surgeon/SKILL.md +215 -215
  199. package/skills/team/SKILL.md +556 -537
  200. package/skills/test/SKILL.md +614 -614
  201. package/skills/trend-scout/SKILL.md +145 -145
  202. package/skills/verification/SKILL.md +326 -326
  203. package/skills/video-creator/SKILL.md +201 -201
  204. package/skills/watchdog/SKILL.md +168 -168
  205. package/skills/worktree/SKILL.md +140 -140
@@ -1,130 +1,130 @@
1
- ---
2
- name: "@rune/ui"
3
- description: Frontend UI patterns — React health scoring, Core Web Vitals auditing, design systems, color palettes, typography, component architecture, landing page sections, accessibility audits, animation patterns, and design decision mapping.
4
- metadata:
5
- author: runedev
6
- version: "0.3.0"
7
- layer: L4
8
- price: "$12"
9
- target: Frontend developers
10
- format: split
11
- ---
12
-
13
- # @rune/ui
14
-
15
- > Design intelligence data: [UI/UX Pro Max](https://github.com/nextlevelbuilder/ui-ux-pro-max-skill) (MIT) — 161 palettes, 84 styles, 73 font pairings, 99 UX guidelines. Located at `references/ui-pro-max-data/`.
16
-
17
- ## Purpose
18
-
19
- Frontend development accumulates invisible debt: ad-hoc color variables, mismatched font pairings, prop-drilled components, untested accessibility, janky animations, React anti-patterns, and slow page loads — all before you even decide what the product should *look* like. This pack addresses all layers systematically. Ten skills cover the full UI lifecycle: React codebase health scoring, Core Web Vitals performance auditing, token consistency, color palette selection, typography pairing, component composability, landing page structure, design-domain mapping, WCAG compliance, and motion polish. Run any skill independently or chain all ten as a comprehensive UI health check + design foundation generator.
20
-
21
- **Anti-AI Design Contract** (enforced by all skills in this pack):
22
- - NO gradient blob heroes (purple → pink → blue)
23
- - NO default indigo/violet (#6366f1) unless it IS the brand color
24
- - NO Lucide icons — use Phosphor Icons (`@phosphor-icons/react`) or Huge Icons
25
- - NO uniform card grids — vary sizes, establish visual hierarchy
26
- - NO centered hero formula (big title + subtitle + 2 buttons stacked)
27
-
28
- ## Triggers
29
-
30
- - Auto-trigger: when `*.tsx`, `*.svelte`, `*.vue`, CSS/Tailwind files detected in project
31
- - `/rune design-system` — generate or enforce design tokens
32
- - `/rune palette-picker` — select a curated color palette by product type
33
- - `/rune type-system` — select a typography pairing by product tone
34
- - `/rune component-patterns` — refactor component architecture
35
- - `/rune landing-patterns` — generate landing page section structure
36
- - `/rune design-decision` — map product domain to full style recommendation
37
- - `/rune a11y-audit` — run accessibility audit
38
- - `/rune animation-patterns` — add or refine motion design
39
- - `/rune react-health` — score React codebase health (0-100)
40
- - `/rune web-vitals` — audit Core Web Vitals and performance
41
- - Called by `cook` (L1) when frontend task is detected
42
- - Called by `review` (L2) when UI code is under review
43
- - Called by `design` (L2) when visual design decisions needed
44
-
45
- ## Skills Included
46
-
47
- | Skill | Model | Description |
48
- |-------|-------|-------------|
49
- | [react-health](skills/react-health.md) | sonnet | React codebase health scoring — 0-100 score across 6 dimensions: state management, effects hygiene, performance patterns, architecture, bundle efficiency, and accessibility. |
50
- | [web-vitals](skills/web-vitals.md) | sonnet | Core Web Vitals performance audit — LCP, CLS, FCP, TBT, INP against Google thresholds. Identifies render-blocking resources, layout shift culprits, missing preloads, and tree-shaking opportunities. |
51
- | [design-system](skills/design-system.md) | sonnet | Generate and enforce design system tokens — colors, typography, spacing, shadows, border radius. Consolidates ad-hoc values into a structured token file with full dark/light theme support. |
52
- | [palette-picker](skills/palette-picker.md) | sonnet | Color palette database organized by product type. 25 curated palettes covering fintech, healthcare, education, gaming, ecommerce, SaaS, social, news/content, productivity, and developer tools. |
53
- | [type-system](skills/type-system.md) | sonnet | Typography pairing database — 22 font pairings organized by product vibe. Each pairing includes Google Fonts URL, Tailwind config, size scale, weight mapping, and line height ratios. |
54
- | [landing-patterns](skills/landing-patterns.md) | sonnet | Landing page section patterns — 12 section archetypes with HTML structure hints, Tailwind classes, responsive rules, and conversion-focused copy guidance. Anti-AI design rules enforced. |
55
- | [design-decision](skills/design-decision.md) | sonnet | Product domain → style mapping. Outputs complete design recommendation: visual style, palette, typography pairing, component aesthetic, and design-system.md scaffold. |
56
- | [component-patterns](skills/component-patterns.md) | sonnet | Component architecture patterns — compound components, render props, composition, slots. Detects prop-heavy components and guides refactoring toward composable architectures. |
57
- | [a11y-audit](skills/a11y-audit.md) | sonnet | Accessibility audit beyond automated tools. Checks WCAG 2.1 AA compliance — focus management, screen reader compatibility, color contrast, ARIA patterns, keyboard navigation, focus traps. |
58
- | [animation-patterns](skills/animation-patterns.md) | sonnet | Motion design patterns — micro-interactions, page transitions, scroll animations, loading states. CSS transitions, Framer Motion, or GSAP based on project stack. Always respects prefers-reduced-motion. |
59
-
60
- ## Tech Stack Support
61
-
62
- | Framework | Styling | Components | Motion |
63
- |--------------|--------------------|---------------|---------------------|
64
- | React 19 | TailwindCSS 4 | shadcn/ui | Framer Motion |
65
- | Next.js 16 | CSS Custom Props | Radix UI | Framer Motion |
66
- | SvelteKit 5 | CSS Custom Props | Custom | View Transitions API|
67
- | Vue 3 | TailwindCSS 4 | Headless UI | Vue Transitions |
68
- | Astro 5 | TailwindCSS 4 | Astro Islands | View Transitions API|
69
-
70
- ## Connections
71
-
72
- ```
73
- Calls → asset-creator (L3): generate design assets (icons, illustrations)
74
- Calls → design (L2): escalate when full design review is needed
75
- Calls → perf (L2): react-health and web-vitals feed findings to perf for deeper analysis
76
- Calls → verification (L3): react-health triggers verification after fix application
77
- Called By ← review (L2): when UI code is being reviewed
78
- Called By ← cook (L1): when frontend task detected
79
- Called By ← launch (L1): pre-launch UI quality gate
80
- Called By ← scaffold (L1): when bootstrapping a new frontend project
81
- Called By ← preflight (L2): react-health runs as pre-commit quality gate on React projects
82
- design-decision → palette-picker: feeds palette slug to token generation
83
- design-decision → type-system: feeds pairing name to font config generation
84
- landing-patterns → palette-picker: pulls palette for section styling
85
- landing-patterns → type-system: pulls font pairing for section copy
86
- react-health → web-vitals: health report feeds into vitals audit for bundle-to-load correlation
87
- web-vitals → react-health: slow LCP/TBT traces back to bundle bloat identified by react-health
88
- ```
89
-
90
- ## Constraints
91
-
92
- 1. MUST respect `prefers-reduced-motion` on every animation — no exceptions.
93
- 2. MUST NOT overwrite original component files during refactor — emit to `*.refactored.tsx` or provide a diff.
94
- 3. MUST target WCAG 2.1 AA as the minimum bar for all a11y recommendations (AAA where feasible).
95
- 4. MUST use project's existing stack (detect from `package.json`) before suggesting new dependencies.
96
- 5. MUST enforce Anti-AI design rules: no gradient blobs, no default indigo, Phosphor Icons not Lucide, no uniform card grids.
97
- 6. MUST use Google Fonts CDN only for external font loading — no other external font services.
98
- 7. Color palettes MUST include colorblind-safe alternatives (deuteranopia minimum).
99
-
100
- ## Sharp Edges
101
-
102
- | Failure Mode | Severity | Mitigation |
103
- |---|---|---|
104
- | Token generation produces semantic tokens without primitives, causing theme switching to break | HIGH | Always emit 3-layer token structure: primitive → semantic → component |
105
- | Compound component refactor breaks controlled state (open/value props lost) | HIGH | Audit for controlled vs uncontrolled patterns before emitting scaffold |
106
- | axe-core misses ARIA live region issues and dynamic content violations | MEDIUM | Supplement automated scan with manual Grep for `setState`/store updates that modify visible content |
107
- | Framer Motion animations ship without `useReducedMotion` check | HIGH | Grep for `motion.` usage post-edit; flag any missing the hook |
108
- | Design token enforcement flags third-party library hardcoded values | LOW | Scope Grep to `src/` only; exclude `node_modules` and generated files |
109
- | palette-picker recommends palette without contrast verification | HIGH | Always run contrast check in Step 4 before emitting palette.css |
110
- | type-system recommends decorative font for body copy (Cormorant at 14px) | MEDIUM | Flag any pairing where body font is display/serif — warn readability at small sizes |
111
- | landing-patterns emits centered hero formula (the anti-pattern) | HIGH | Enforce split-hero or asymmetric-hero as defaults; centered-hero requires explicit opt-in |
112
- | design-decision recommends glassmorphism for data-dense dashboard | MEDIUM | Block glassmorphism recommendation when product domain is fintech, devtools, or productivity |
113
- | Focus trap missing on modal — keyboard users trapped in page behind overlay | CRITICAL | a11y-audit Step 4 must scan all Dialog/Modal/Drawer/Popover components before audit closes |
114
-
115
- ## Done When
116
-
117
- - React health score generated (0-100) with per-dimension breakdown; top 5 fixes listed by impact; dead code inventory complete
118
- - Web Vitals report produced with all 6 metrics against thresholds; render-blocking resources identified; CLS culprits found; image optimization recommendations emitted
119
- - Token file generated with 3-layer structure; hardcoded values replaced or flagged with diffs; dark/light theme switcher emitted
120
- - Palette selected, CSS custom properties emitted, contrast ratios verified (≥ 4.5:1 body, ≥ 3:1 large text), colorblind alternatives noted
121
- - Font pairing selected, Google Fonts link emitted, Tailwind fontFamily config emitted, type scale CSS variables written
122
- - Component refactor scaffold emitted; original files untouched; slot patterns applied where applicable
123
- - Landing section sequence composed; Anti-AI rules verified; responsive audit at 375/768/1280px complete; conversion checklist passed
124
- - Design system .md generated with color, typography, component, and anti-pattern rules for the product domain
125
- - Axe-core scan shows zero critical/serious violations; focus trap audit complete; skip nav link present
126
- - All animations pass `prefers-reduced-motion` audit; page transition pattern implemented
127
-
128
- ## Cost Profile
129
-
130
- ~24,000–38,000 tokens per full pack run (all 10 skills). Individual skill: ~2,000–5,000 tokens. Sonnet default. Use haiku for detection scans (Step 1 of each skill); escalate to sonnet for generation, refactoring, and report writing. Use `design-decision` first when starting a new project — it reduces token cost of subsequent skills by pre-scoping palette and typography choices.
1
+ ---
2
+ name: "@rune/ui"
3
+ description: Frontend UI patterns — React health scoring, Core Web Vitals auditing, design systems, color palettes, typography, component architecture, landing page sections, accessibility audits, animation patterns, and design decision mapping.
4
+ metadata:
5
+ author: runedev
6
+ version: "0.3.0"
7
+ layer: L4
8
+ price: "$12"
9
+ target: Frontend developers
10
+ format: split
11
+ ---
12
+
13
+ # @rune/ui
14
+
15
+ > Design intelligence data: [UI/UX Pro Max](https://github.com/nextlevelbuilder/ui-ux-pro-max-skill) (MIT) — 161 palettes, 84 styles, 73 font pairings, 99 UX guidelines. Located at `references/ui-pro-max-data/`.
16
+
17
+ ## Purpose
18
+
19
+ Frontend development accumulates invisible debt: ad-hoc color variables, mismatched font pairings, prop-drilled components, untested accessibility, janky animations, React anti-patterns, and slow page loads — all before you even decide what the product should *look* like. This pack addresses all layers systematically. Ten skills cover the full UI lifecycle: React codebase health scoring, Core Web Vitals performance auditing, token consistency, color palette selection, typography pairing, component composability, landing page structure, design-domain mapping, WCAG compliance, and motion polish. Run any skill independently or chain all ten as a comprehensive UI health check + design foundation generator.
20
+
21
+ **Anti-AI Design Contract** (enforced by all skills in this pack):
22
+ - NO gradient blob heroes (purple → pink → blue)
23
+ - NO default indigo/violet (#6366f1) unless it IS the brand color
24
+ - NO Lucide icons — use Phosphor Icons (`@phosphor-icons/react`) or Huge Icons
25
+ - NO uniform card grids — vary sizes, establish visual hierarchy
26
+ - NO centered hero formula (big title + subtitle + 2 buttons stacked)
27
+
28
+ ## Triggers
29
+
30
+ - Auto-trigger: when `*.tsx`, `*.svelte`, `*.vue`, CSS/Tailwind files detected in project
31
+ - `/rune design-system` — generate or enforce design tokens
32
+ - `/rune palette-picker` — select a curated color palette by product type
33
+ - `/rune type-system` — select a typography pairing by product tone
34
+ - `/rune component-patterns` — refactor component architecture
35
+ - `/rune landing-patterns` — generate landing page section structure
36
+ - `/rune design-decision` — map product domain to full style recommendation
37
+ - `/rune a11y-audit` — run accessibility audit
38
+ - `/rune animation-patterns` — add or refine motion design
39
+ - `/rune react-health` — score React codebase health (0-100)
40
+ - `/rune web-vitals` — audit Core Web Vitals and performance
41
+ - Called by `cook` (L1) when frontend task is detected
42
+ - Called by `review` (L2) when UI code is under review
43
+ - Called by `design` (L2) when visual design decisions needed
44
+
45
+ ## Skills Included
46
+
47
+ | Skill | Model | Description |
48
+ |-------|-------|-------------|
49
+ | [react-health](skills/react-health.md) | sonnet | React codebase health scoring — 0-100 score across 6 dimensions: state management, effects hygiene, performance patterns, architecture, bundle efficiency, and accessibility. |
50
+ | [web-vitals](skills/web-vitals.md) | sonnet | Core Web Vitals performance audit — LCP, CLS, FCP, TBT, INP against Google thresholds. Identifies render-blocking resources, layout shift culprits, missing preloads, and tree-shaking opportunities. |
51
+ | [design-system](skills/design-system.md) | sonnet | Generate and enforce design system tokens — colors, typography, spacing, shadows, border radius. Consolidates ad-hoc values into a structured token file with full dark/light theme support. |
52
+ | [palette-picker](skills/palette-picker.md) | sonnet | Color palette database organized by product type. 25 curated palettes covering fintech, healthcare, education, gaming, ecommerce, SaaS, social, news/content, productivity, and developer tools. |
53
+ | [type-system](skills/type-system.md) | sonnet | Typography pairing database — 22 font pairings organized by product vibe. Each pairing includes Google Fonts URL, Tailwind config, size scale, weight mapping, and line height ratios. |
54
+ | [landing-patterns](skills/landing-patterns.md) | sonnet | Landing page section patterns — 12 section archetypes with HTML structure hints, Tailwind classes, responsive rules, and conversion-focused copy guidance. Anti-AI design rules enforced. |
55
+ | [design-decision](skills/design-decision.md) | sonnet | Product domain → style mapping. Outputs complete design recommendation: visual style, palette, typography pairing, component aesthetic, and design-system.md scaffold. |
56
+ | [component-patterns](skills/component-patterns.md) | sonnet | Component architecture patterns — compound components, render props, composition, slots. Detects prop-heavy components and guides refactoring toward composable architectures. |
57
+ | [a11y-audit](skills/a11y-audit.md) | sonnet | Accessibility audit beyond automated tools. Checks WCAG 2.1 AA compliance — focus management, screen reader compatibility, color contrast, ARIA patterns, keyboard navigation, focus traps. |
58
+ | [animation-patterns](skills/animation-patterns.md) | sonnet | Motion design patterns — micro-interactions, page transitions, scroll animations, loading states. CSS transitions, Framer Motion, or GSAP based on project stack. Always respects prefers-reduced-motion. |
59
+
60
+ ## Tech Stack Support
61
+
62
+ | Framework | Styling | Components | Motion |
63
+ |--------------|--------------------|---------------|---------------------|
64
+ | React 19 | TailwindCSS 4 | shadcn/ui | Framer Motion |
65
+ | Next.js 16 | CSS Custom Props | Radix UI | Framer Motion |
66
+ | SvelteKit 5 | CSS Custom Props | Custom | View Transitions API|
67
+ | Vue 3 | TailwindCSS 4 | Headless UI | Vue Transitions |
68
+ | Astro 5 | TailwindCSS 4 | Astro Islands | View Transitions API|
69
+
70
+ ## Connections
71
+
72
+ ```
73
+ Calls → asset-creator (L3): generate design assets (icons, illustrations)
74
+ Calls → design (L2): escalate when full design review is needed
75
+ Calls → perf (L2): react-health and web-vitals feed findings to perf for deeper analysis
76
+ Calls → verification (L3): react-health triggers verification after fix application
77
+ Called By ← review (L2): when UI code is being reviewed
78
+ Called By ← cook (L1): when frontend task detected
79
+ Called By ← launch (L1): pre-launch UI quality gate
80
+ Called By ← scaffold (L1): when bootstrapping a new frontend project
81
+ Called By ← preflight (L2): react-health runs as pre-commit quality gate on React projects
82
+ design-decision → palette-picker: feeds palette slug to token generation
83
+ design-decision → type-system: feeds pairing name to font config generation
84
+ landing-patterns → palette-picker: pulls palette for section styling
85
+ landing-patterns → type-system: pulls font pairing for section copy
86
+ react-health → web-vitals: health report feeds into vitals audit for bundle-to-load correlation
87
+ web-vitals → react-health: slow LCP/TBT traces back to bundle bloat identified by react-health
88
+ ```
89
+
90
+ ## Constraints
91
+
92
+ 1. MUST respect `prefers-reduced-motion` on every animation — no exceptions.
93
+ 2. MUST NOT overwrite original component files during refactor — emit to `*.refactored.tsx` or provide a diff.
94
+ 3. MUST target WCAG 2.1 AA as the minimum bar for all a11y recommendations (AAA where feasible).
95
+ 4. MUST use project's existing stack (detect from `package.json`) before suggesting new dependencies.
96
+ 5. MUST enforce Anti-AI design rules: no gradient blobs, no default indigo, Phosphor Icons not Lucide, no uniform card grids.
97
+ 6. MUST use Google Fonts CDN only for external font loading — no other external font services.
98
+ 7. Color palettes MUST include colorblind-safe alternatives (deuteranopia minimum).
99
+
100
+ ## Sharp Edges
101
+
102
+ | Failure Mode | Severity | Mitigation |
103
+ |---|---|---|
104
+ | Token generation produces semantic tokens without primitives, causing theme switching to break | HIGH | Always emit 3-layer token structure: primitive → semantic → component |
105
+ | Compound component refactor breaks controlled state (open/value props lost) | HIGH | Audit for controlled vs uncontrolled patterns before emitting scaffold |
106
+ | axe-core misses ARIA live region issues and dynamic content violations | MEDIUM | Supplement automated scan with manual Grep for `setState`/store updates that modify visible content |
107
+ | Framer Motion animations ship without `useReducedMotion` check | HIGH | Grep for `motion.` usage post-edit; flag any missing the hook |
108
+ | Design token enforcement flags third-party library hardcoded values | LOW | Scope Grep to `src/` only; exclude `node_modules` and generated files |
109
+ | palette-picker recommends palette without contrast verification | HIGH | Always run contrast check in Step 4 before emitting palette.css |
110
+ | type-system recommends decorative font for body copy (Cormorant at 14px) | MEDIUM | Flag any pairing where body font is display/serif — warn readability at small sizes |
111
+ | landing-patterns emits centered hero formula (the anti-pattern) | HIGH | Enforce split-hero or asymmetric-hero as defaults; centered-hero requires explicit opt-in |
112
+ | design-decision recommends glassmorphism for data-dense dashboard | MEDIUM | Block glassmorphism recommendation when product domain is fintech, devtools, or productivity |
113
+ | Focus trap missing on modal — keyboard users trapped in page behind overlay | CRITICAL | a11y-audit Step 4 must scan all Dialog/Modal/Drawer/Popover components before audit closes |
114
+
115
+ ## Done When
116
+
117
+ - React health score generated (0-100) with per-dimension breakdown; top 5 fixes listed by impact; dead code inventory complete
118
+ - Web Vitals report produced with all 6 metrics against thresholds; render-blocking resources identified; CLS culprits found; image optimization recommendations emitted
119
+ - Token file generated with 3-layer structure; hardcoded values replaced or flagged with diffs; dark/light theme switcher emitted
120
+ - Palette selected, CSS custom properties emitted, contrast ratios verified (≥ 4.5:1 body, ≥ 3:1 large text), colorblind alternatives noted
121
+ - Font pairing selected, Google Fonts link emitted, Tailwind fontFamily config emitted, type scale CSS variables written
122
+ - Component refactor scaffold emitted; original files untouched; slot patterns applied where applicable
123
+ - Landing section sequence composed; Anti-AI rules verified; responsive audit at 375/768/1280px complete; conversion checklist passed
124
+ - Design system .md generated with color, typography, component, and anti-pattern rules for the product domain
125
+ - Axe-core scan shows zero critical/serious violations; focus trap audit complete; skip nav link present
126
+ - All animations pass `prefers-reduced-motion` audit; page transition pattern implemented
127
+
128
+ ## Cost Profile
129
+
130
+ ~24,000–38,000 tokens per full pack run (all 10 skills). Individual skill: ~2,000–5,000 tokens. Sonnet default. Use haiku for detection scans (Step 1 of each skill); escalate to sonnet for generation, refactoring, and report writing. Use `design-decision` first when starting a new project — it reduces token cost of subsequent skills by pre-scoping palette and typography choices.
@@ -1,91 +1,91 @@
1
- ---
2
- name: "a11y-audit"
3
- pack: "@rune/ui"
4
- description: "Accessibility audit beyond automated tools. Checks WCAG 2.1 AA compliance — focus management, screen reader compatibility, color contrast, ARIA patterns, keyboard navigation, focus traps, and skip navigation."
5
- model: sonnet
6
- tools: [Read, Edit, Write, Grep, Glob, Bash]
7
- ---
8
-
9
- # a11y-audit
10
-
11
- Accessibility audit beyond automated tools. Checks WCAG 2.1 AA compliance — focus management, screen reader compatibility, color contrast, ARIA patterns, keyboard navigation, focus traps, and skip navigation.
12
-
13
- #### Workflow
14
-
15
- **Step 1 — Automated scan**
16
- Run `Bash: npx axe-core-cli <url> --reporter json` to capture all automated violations. Parse the JSON output and group by impact: critical → serious → moderate → minor.
17
-
18
- **Step 2 — Manual WCAG 2.1 AA review**
19
- Use Grep to find `onClick` on non-button elements (missing keyboard support), `<img` without `alt`, `aria-label` absence on icon-only buttons, and `outline: none` without a focus-visible replacement. Read flagged files and annotate each violation with the WCAG criterion it breaks.
20
-
21
- **Step 3 — Emit audit report**
22
- Produce a structured report: automated violations (count by impact), manual violations (file + line + fix), contrast ratios for brand colors (pass/fail at AA). Include a prioritized fix list.
23
-
24
- **Step 4 — Focus trap audit + skip nav**
25
- Scan for `Dialog`, `Modal`, `Drawer`, `Popover` components. Verify each has: a focus trap on open (`focus-trap-react` or `aria-modal`), returns focus to trigger on close, has an `aria-labelledby` referencing its title. Also check: first `<a>` in `<body>` is a "Skip to main content" link visible on focus (WCAG 2.4.1).
26
-
27
- #### Example
28
-
29
- ```tsx
30
- // VIOLATION: icon button with no accessible name
31
- <button onClick={handleClose}>
32
- <XIcon />
33
- </button>
34
-
35
- // FIX: add aria-label; icon is decorative
36
- <button onClick={handleClose} aria-label="Close dialog">
37
- <XIcon aria-hidden="true" />
38
- </button>
39
-
40
- // VIOLATION: div acting as button (no keyboard, no role)
41
- <div onClick={handleSubmit}>Submit</div>
42
-
43
- // FIX: use semantic element
44
- <button type="button" onClick={handleSubmit}>Submit</button>
45
- ```
46
-
47
- ```tsx
48
- // Focus trap pattern for modals (using focus-trap-react)
49
- import FocusTrap from 'focus-trap-react'
50
-
51
- export function Dialog({ open, onClose, title, children }: DialogProps) {
52
- return open ? (
53
- <FocusTrap focusTrapOptions={{ onDeactivate: onClose }}>
54
- <div
55
- role="dialog"
56
- aria-modal="true"
57
- aria-labelledby="dialog-title"
58
- className="fixed inset-0 z-50 flex items-center justify-center"
59
- >
60
- <div className="bg-[var(--bg-card)] rounded-xl p-6 max-w-md w-full shadow-lg">
61
- <h2 id="dialog-title" className="text-h3 font-semibold mb-4">{title}</h2>
62
- {children}
63
- <button
64
- onClick={onClose}
65
- aria-label="Close dialog"
66
- className="absolute top-4 right-4 focus-visible:ring-2 focus-visible:ring-[var(--primary)]"
67
- >
68
- <X aria-hidden="true" />
69
- </button>
70
- </div>
71
- </div>
72
- </FocusTrap>
73
- ) : null
74
- }
75
- ```
76
-
77
- ```html
78
- <!-- Skip navigation link — must be FIRST focusable element in <body> -->
79
- <a
80
- href="#main-content"
81
- class="
82
- sr-only focus:not-sr-only
83
- fixed top-4 left-4 z-[9999]
84
- px-4 py-2 rounded-md
85
- bg-[var(--primary)] text-white font-semibold text-sm
86
- focus-visible:ring-2 focus-visible:ring-offset-2
87
- "
88
- >
89
- Skip to main content
90
- </a>
91
- ```
1
+ ---
2
+ name: "a11y-audit"
3
+ pack: "@rune/ui"
4
+ description: "Accessibility audit beyond automated tools. Checks WCAG 2.1 AA compliance — focus management, screen reader compatibility, color contrast, ARIA patterns, keyboard navigation, focus traps, and skip navigation."
5
+ model: sonnet
6
+ tools: [Read, Edit, Write, Grep, Glob, Bash]
7
+ ---
8
+
9
+ # a11y-audit
10
+
11
+ Accessibility audit beyond automated tools. Checks WCAG 2.1 AA compliance — focus management, screen reader compatibility, color contrast, ARIA patterns, keyboard navigation, focus traps, and skip navigation.
12
+
13
+ #### Workflow
14
+
15
+ **Step 1 — Automated scan**
16
+ Run `Bash: npx axe-core-cli <url> --reporter json` to capture all automated violations. Parse the JSON output and group by impact: critical → serious → moderate → minor.
17
+
18
+ **Step 2 — Manual WCAG 2.1 AA review**
19
+ Use Grep to find `onClick` on non-button elements (missing keyboard support), `<img` without `alt`, `aria-label` absence on icon-only buttons, and `outline: none` without a focus-visible replacement. Read flagged files and annotate each violation with the WCAG criterion it breaks.
20
+
21
+ **Step 3 — Emit audit report**
22
+ Produce a structured report: automated violations (count by impact), manual violations (file + line + fix), contrast ratios for brand colors (pass/fail at AA). Include a prioritized fix list.
23
+
24
+ **Step 4 — Focus trap audit + skip nav**
25
+ Scan for `Dialog`, `Modal`, `Drawer`, `Popover` components. Verify each has: a focus trap on open (`focus-trap-react` or `aria-modal`), returns focus to trigger on close, has an `aria-labelledby` referencing its title. Also check: first `<a>` in `<body>` is a "Skip to main content" link visible on focus (WCAG 2.4.1).
26
+
27
+ #### Example
28
+
29
+ ```tsx
30
+ // VIOLATION: icon button with no accessible name
31
+ <button onClick={handleClose}>
32
+ <XIcon />
33
+ </button>
34
+
35
+ // FIX: add aria-label; icon is decorative
36
+ <button onClick={handleClose} aria-label="Close dialog">
37
+ <XIcon aria-hidden="true" />
38
+ </button>
39
+
40
+ // VIOLATION: div acting as button (no keyboard, no role)
41
+ <div onClick={handleSubmit}>Submit</div>
42
+
43
+ // FIX: use semantic element
44
+ <button type="button" onClick={handleSubmit}>Submit</button>
45
+ ```
46
+
47
+ ```tsx
48
+ // Focus trap pattern for modals (using focus-trap-react)
49
+ import FocusTrap from 'focus-trap-react'
50
+
51
+ export function Dialog({ open, onClose, title, children }: DialogProps) {
52
+ return open ? (
53
+ <FocusTrap focusTrapOptions={{ onDeactivate: onClose }}>
54
+ <div
55
+ role="dialog"
56
+ aria-modal="true"
57
+ aria-labelledby="dialog-title"
58
+ className="fixed inset-0 z-50 flex items-center justify-center"
59
+ >
60
+ <div className="bg-[var(--bg-card)] rounded-xl p-6 max-w-md w-full shadow-lg">
61
+ <h2 id="dialog-title" className="text-h3 font-semibold mb-4">{title}</h2>
62
+ {children}
63
+ <button
64
+ onClick={onClose}
65
+ aria-label="Close dialog"
66
+ className="absolute top-4 right-4 focus-visible:ring-2 focus-visible:ring-[var(--primary)]"
67
+ >
68
+ <X aria-hidden="true" />
69
+ </button>
70
+ </div>
71
+ </div>
72
+ </FocusTrap>
73
+ ) : null
74
+ }
75
+ ```
76
+
77
+ ```html
78
+ <!-- Skip navigation link — must be FIRST focusable element in <body> -->
79
+ <a
80
+ href="#main-content"
81
+ class="
82
+ sr-only focus:not-sr-only
83
+ fixed top-4 left-4 z-[9999]
84
+ px-4 py-2 rounded-md
85
+ bg-[var(--primary)] text-white font-semibold text-sm
86
+ focus-visible:ring-2 focus-visible:ring-offset-2
87
+ "
88
+ >
89
+ Skip to main content
90
+ </a>
91
+ ```