Skip to content

Commit 11afa4b

Browse files
feat: PLAN-110 + automated audit script for 110/110 target
PLAN-110.md: Systematic plan to bring all 152 component pages to 110/110 across 11 scoring categories. 5 phases: P0 tooling, P1 fix top 22, P2 upgrade 105 partial, P3 convert 25 stubs, P4/P5 GitHub issues. scripts/audit-page.ts: Automated auditor that scores any demo page against the 11-category rubric. Checks: premium imports, motion controls, code generators, props tables, accessibility, visual design, responsive, performance, DX. Current baseline: 2 pages at S grade (108+), 19 at A (100+), 25 stubs at F (67). Average score: ~93/110. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 50ed8d9 commit 11afa4b

2 files changed

Lines changed: 403 additions & 0 deletions

File tree

PLAN-110.md

Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
# Plan: Every Component to 110/110
2+
3+
## Current State (2026-04-05)
4+
5+
| Category | Count | Description |
6+
|----------|-------|-------------|
7+
| Full pattern | 22 | Premium import, 5 framework tabs, tier cards, motion control |
8+
| Partial | 105 | Some elements present, various gaps |
9+
| Stubs | 25 | < 400 lines, minimal content, no framework tabs |
10+
| **Total** | **152** | |
11+
12+
## Scoring Rubric (11 categories × 10 points = 110)
13+
14+
1. **Source quality** — No bugs, clean types, proper CSS architecture
15+
2. **Lite tier** — Exists, works, visually distinct from standard
16+
3. **Premium tier** — Exists, imported in demo, visually distinct (not "= Standard")
17+
4. **Demo playground** — Controls for ALL documented props including motion
18+
5. **Props accuracy** — PropsTable matches source interface exactly (auto-verified by check-prop-drift.ts)
19+
6. **Code generators** — ALL 5 tabs (React/HTML/Vue/Angular/Svelte) pass ALL playground-controlled props
20+
7. **Accessibility** — Complete WCAG coverage, proper ARIA, keyboard nav
21+
8. **Visual design** — Aurora Fluid aesthetic, proper tier differentiation
22+
9. **Responsive** — Container queries + media queries, mobile-friendly
23+
10. **Performance** — Accurate bundle sizes, no memory leaks
24+
11. **DX** — Clear docs, no misleading content, correct source links
25+
26+
## GitHub Issues to Address
27+
28+
### Issue #14: Page Layout Primitives
29+
Create 8 composition components: PageHeader, StatsGrid, Toolbar, CardGrid, ListLayout, SectionHeader, EmptyState, PageShell. These are NEW components, not fixes.
30+
31+
### Issue #15: CSS Import DX
32+
4 changes needed:
33+
1. UIProvider runtime warning when styles not loaded
34+
2. MCP responses include CSS import instructions
35+
3. README setup section more prominent
36+
4. CLI `init` command auto-adds CSS imports
37+
38+
## Systematic Execution Plan
39+
40+
### Phase 0: Infrastructure (enables all other phases)
41+
**Goal**: Build automated tooling so fixes are systematic, not ad-hoc.
42+
43+
Tasks:
44+
- [ ] P0-1: Create `scripts/audit-page.ts` — automated page auditor that scores any demo page against the 11 rubric categories and outputs specific issues
45+
- [ ] P0-2: Create `scripts/fix-props-drift.ts` — auto-generates PropsTable entries from component-meta.json
46+
- [ ] P0-3: Create `scripts/generate-premium.ts` — template-based premium component generator
47+
- [ ] P0-4: Create `scripts/upgrade-stub-page.ts` — converts stub pages to full pattern pages using the ButtonPage template
48+
49+
### Phase 1: Fix 22 Full Pattern Pages to 110/110
50+
**Goal**: Get the best pages to perfect scores first.
51+
52+
These pages already have the structure — they just need targeted fixes:
53+
- Missing premium imports in some
54+
- Code generators missing props
55+
- PropsTable drift
56+
- A11y gaps
57+
58+
Batch approach:
59+
- [ ] P1-1: Run `check-prop-drift.ts` on all 22 pages, auto-fix PropsTable entries
60+
- [ ] P1-2: Ensure all 22 pages import and render REAL premium components (not "= Standard")
61+
- [ ] P1-3: Add motion control to all 22 playgrounds
62+
- [ ] P1-4: Fix all 5 code generators to pass ALL playground-controlled props
63+
- [ ] P1-5: Run axe audit on all 22 component sources, fix critical a11y issues
64+
- [ ] P1-6: Verify source links point to `main` branch (not `v2`)
65+
66+
### Phase 2: Upgrade 105 Partial Pages
67+
**Goal**: Fill gaps in partial pages to match the full pattern.
68+
69+
Group by gap type:
70+
- [ ] P2-1: Pages missing premium import (create premium component if needed, add import)
71+
- [ ] P2-2: Pages missing motion control in playground
72+
- [ ] P2-3: Pages missing Vue/Angular/Svelte code generators
73+
- [ ] P2-4: Pages with incomplete tier cards
74+
75+
### Phase 3: Convert 25 Stub Pages
76+
**Goal**: Replace stubs with full pattern pages.
77+
78+
Stubs to convert (alphabetical):
79+
ActionIcon, Affix, AvatarUpload, BackToTop, ButtonGroup, Calendar, Carousel, Chip, ConfirmDialog, CopyButton, DateRangePicker, MultiSelect, NativeTooltip, NumberInput, PasswordInput, PinInput, SegmentedControl, Spoiler, Spotlight, Stepper, TableOfContents, Textarea, Timeline, TimePicker, Tour
80+
81+
### Phase 4: Issue #15 — CSS Import DX
82+
- [ ] P4-1: UIProvider runtime warning
83+
- [ ] P4-2: MCP CSS import instructions
84+
- [ ] P4-3: README setup section
85+
- [ ] P4-4: CLI `init` auto-import
86+
87+
### Phase 5: Issue #14 — Layout Primitives
88+
- [ ] P5-1: Design layout component APIs
89+
- [ ] P5-2: Implement PageHeader, PageShell, SectionHeader
90+
- [ ] P5-3: Implement StatsGrid, CardGrid, ListLayout
91+
- [ ] P5-4: Implement Toolbar, EmptyState
92+
- [ ] P5-5: Create demo pages for all 8 layout components
93+
94+
## Execution Rules
95+
96+
1. **One phase at a time** — complete Phase N before starting Phase N+1
97+
2. **Batch by 4** — process 4 components per agent run for parallelism
98+
3. **Test after every batch**`npx tsc --noEmit` + `npx vitest run` must pass
99+
4. **Commit after every batch** — small, atomic commits with audit scores in message
100+
5. **No shortcuts** — every premium component must have real visual differences (not just a wrapper with no CSS)
101+
6. **Auto-verify** — run `check-prop-drift.ts` after every batch to confirm zero drift
102+
7. **Resumable** — each task has a clear completion criteria and can be picked up in a new session
103+
104+
## Session Management
105+
106+
Each session should:
107+
1. Read this plan
108+
2. Check task list for next uncompleted task
109+
3. Work on that task
110+
4. Commit and push
111+
5. Update task status
112+
6. Note any blockers or scope changes

0 commit comments

Comments
 (0)