start-vibing 4.0.2 → 4.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/template/.claude/CLAUDE.md +86 -20
- package/template/.claude/agents/sd-audit.md +197 -0
- package/template/.claude/agents/sd-fix-verify-semantic.md +112 -0
- package/template/.claude/agents/sd-fix-verify-technical.md +36 -0
- package/template/.claude/agents/sd-fix.md +194 -0
- package/template/.claude/agents/sd-research.md +61 -0
- package/template/.claude/agents/sd-synthesis.md +74 -0
- package/template/.claude/commands/super-design.md +15 -0
- package/template/.claude/hooks/super-design-session-start.sh +4 -0
- package/template/.claude/settings.json +14 -0
- package/template/.claude/skills/codebase-knowledge/SKILL.md +145 -0
- package/template/.claude/skills/codebase-knowledge/TEMPLATE.md +35 -0
- package/template/.claude/skills/codebase-knowledge/domains/claude-system.md +93 -0
- package/template/.claude/skills/composition-patterns/SKILL.md +89 -0
- package/template/.claude/skills/docs-tracker/SKILL.md +239 -0
- package/template/.claude/skills/mcp-builder/SKILL.md +236 -0
- package/template/.claude/skills/quality-gate/scripts/check-all.sh +83 -0
- package/template/.claude/skills/react-best-practices/SKILL.md +146 -0
- package/template/.claude/skills/security-scan/reference/owasp-top-10.md +257 -0
- package/template/.claude/skills/security-scan/scripts/scan.py +190 -0
- package/template/.claude/skills/super-design/README.md +37 -0
- package/template/.claude/skills/super-design/SKILL.md +105 -0
- package/template/.claude/skills/super-design/hooks/guard-paths.py +35 -0
- package/template/.claude/skills/super-design/hooks/post-edit-lint.py +57 -0
- package/template/.claude/skills/super-design/references/audit-methodology.md +513 -0
- package/template/.claude/skills/super-design/references/change-detection-playbook.md +1432 -0
- package/template/.claude/skills/super-design/references/design-theory.md +706 -0
- package/template/.claude/skills/super-design/references/fix-agent-playbook.md +118 -0
- package/template/.claude/skills/super-design/references/market-research-playbook.md +773 -0
- package/template/.claude/skills/super-design/references/playwright-mcp-reference.md +1057 -0
- package/template/.claude/skills/super-design/references/skills-subagents-reference.md +784 -0
- package/template/.claude/skills/super-design/references/superpowers-and-distribution.md +136 -0
- package/template/.claude/skills/super-design/scripts/detect-changes.sh +61 -0
- package/template/.claude/skills/super-design/scripts/diff-tokens.sh +13 -0
- package/template/.claude/skills/super-design/scripts/discover-routes.sh +45 -0
- package/template/.claude/skills/super-design/scripts/extract-tokens.mjs +41 -0
- package/template/.claude/skills/super-design/scripts/hash-pages.sh +42 -0
- package/template/.claude/skills/super-design/scripts/validate-state.sh +15 -0
- package/template/.claude/skills/super-design/scripts/verify-audit.sh +19 -0
- package/template/.claude/skills/super-design/templates/audit-state.schema.json +57 -0
- package/template/.claude/skills/super-design/templates/findings.schema.json +57 -0
- package/template/.claude/skills/super-design/templates/fix-history.md.tpl +26 -0
- package/template/.claude/skills/super-design/templates/overview.md.tpl +52 -0
- package/template/.claude/skills/test-coverage/reference/playwright-patterns.md +260 -0
- package/template/.claude/skills/test-coverage/scripts/coverage-check.sh +52 -0
- package/template/.claude/skills/typeui-ant/SKILL.md +133 -0
- package/template/.claude/skills/typeui-application/SKILL.md +128 -0
- package/template/.claude/skills/typeui-artistic/SKILL.md +133 -0
- package/template/.claude/skills/typeui-bento/SKILL.md +127 -0
- package/template/.claude/skills/typeui-bold/SKILL.md +127 -0
- package/template/.claude/skills/typeui-clean/SKILL.md +128 -0
- package/template/.claude/skills/typeui-dashboard/SKILL.md +133 -0
- package/template/.claude/skills/typeui-doodle/SKILL.md +142 -0
- package/template/.claude/skills/typeui-dramatic/SKILL.md +127 -0
- package/template/.claude/skills/typeui-enterprise/SKILL.md +132 -0
- package/template/.claude/skills/typeui-neobrutalism/SKILL.md +127 -0
- package/template/.claude/skills/typeui-paper/SKILL.md +127 -0
- package/template/.claude/skills/ui-ux-audit/QUICK-START.md +450 -0
- package/template/.claude/skills/ui-ux-audit/README.md +470 -0
- package/template/.claude/skills/ui-ux-audit/templates/audit-report.md +591 -0
- package/template/.claude/skills/ui-ux-audit/templates/competitor-analysis.md +363 -0
- package/template/.claude/skills/ui-ux-audit/templates/component-spec.md +491 -0
- package/template/.claude/skills/ui-ux-audit/templates/improvement-recommendation.md +450 -0
- package/template/.claude/skills/web-design-guidelines/SKILL.md +39 -0
- package/template/.claude/skills/webapp-testing/SKILL.md +96 -0
- package/template/.claude/skills/workflow-state/workflow-state.json +77 -0
|
@@ -0,0 +1,450 @@
|
|
|
1
|
+
# UI/UX Improvement Recommendation: [Feature/Component Name]
|
|
2
|
+
|
|
3
|
+
**Date:** YYYY-MM-DD
|
|
4
|
+
**Submitted By:** [Agent name]
|
|
5
|
+
**Priority:** [Low/Medium/High/Critical]
|
|
6
|
+
**Status:** [Proposed/Approved/In Progress/Completed/Rejected]
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Executive Summary
|
|
11
|
+
|
|
12
|
+
[1-2 sentence summary of the problem and proposed solution]
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## Current State
|
|
17
|
+
|
|
18
|
+
### What Exists Now
|
|
19
|
+
|
|
20
|
+
[Description of current implementation]
|
|
21
|
+
|
|
22
|
+
**Screenshots:**
|
|
23
|
+
|
|
24
|
+
[Add screenshots showing current state]
|
|
25
|
+
|
|
26
|
+
### Problems Identified
|
|
27
|
+
|
|
28
|
+
1. **[Problem 1]**
|
|
29
|
+
- Impact: [User/Business/Technical]
|
|
30
|
+
- Severity: [Low/Medium/High]
|
|
31
|
+
- Affected Users: [Who is impacted]
|
|
32
|
+
|
|
33
|
+
2. **[Problem 2]**
|
|
34
|
+
- Impact: [User/Business/Technical]
|
|
35
|
+
- Severity: [Low/Medium/High]
|
|
36
|
+
- Affected Users: [Who is impacted]
|
|
37
|
+
|
|
38
|
+
3. **[Problem 3]**
|
|
39
|
+
- Impact: [User/Business/Technical]
|
|
40
|
+
- Severity: [Low/Medium/High]
|
|
41
|
+
- Affected Users: [Who is impacted]
|
|
42
|
+
|
|
43
|
+
### Metrics (Current)
|
|
44
|
+
|
|
45
|
+
| Metric | Current Value | Target Value | Status |
|
|
46
|
+
| ---------- | ------------- | ------------ | ------------- |
|
|
47
|
+
| [Metric 1] | [Value] | [Goal] | [Below/Above] |
|
|
48
|
+
| [Metric 2] | [Value] | [Goal] | [Below/Above] |
|
|
49
|
+
| [Metric 3] | [Value] | [Goal] | [Below/Above] |
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## Proposed Solution
|
|
54
|
+
|
|
55
|
+
### Overview
|
|
56
|
+
|
|
57
|
+
[Detailed description of proposed changes]
|
|
58
|
+
|
|
59
|
+
### Design Mockups
|
|
60
|
+
|
|
61
|
+
[Add mockups/wireframes of proposed solution]
|
|
62
|
+
|
|
63
|
+
**Desktop:**
|
|
64
|
+
|
|
65
|
+
[Desktop mockup]
|
|
66
|
+
|
|
67
|
+
**Mobile:**
|
|
68
|
+
|
|
69
|
+
[Mobile mockup]
|
|
70
|
+
|
|
71
|
+
### Key Changes
|
|
72
|
+
|
|
73
|
+
1. **[Change 1]**
|
|
74
|
+
- Current: [What it is now]
|
|
75
|
+
- Proposed: [What it will be]
|
|
76
|
+
- Rationale: [Why this change]
|
|
77
|
+
|
|
78
|
+
2. **[Change 2]**
|
|
79
|
+
- Current: [What it is now]
|
|
80
|
+
- Proposed: [What it will be]
|
|
81
|
+
- Rationale: [Why this change]
|
|
82
|
+
|
|
83
|
+
3. **[Change 3]**
|
|
84
|
+
- Current: [What it is now]
|
|
85
|
+
- Proposed: [What it will be]
|
|
86
|
+
- Rationale: [Why this change]
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
## Research & Evidence
|
|
91
|
+
|
|
92
|
+
### Competitor Examples
|
|
93
|
+
|
|
94
|
+
1. **[Competitor Name]**
|
|
95
|
+
- Approach: [How they handle this]
|
|
96
|
+
- Effectiveness: [Results/metrics if available]
|
|
97
|
+
- Applicability: [How it applies to us]
|
|
98
|
+
|
|
99
|
+
2. **[Competitor Name]**
|
|
100
|
+
- Approach: [How they handle this]
|
|
101
|
+
- Effectiveness: [Results/metrics if available]
|
|
102
|
+
- Applicability: [How it applies to us]
|
|
103
|
+
|
|
104
|
+
### Industry Best Practices
|
|
105
|
+
|
|
106
|
+
1. [Best practice 1 - with source]
|
|
107
|
+
2. [Best practice 2 - with source]
|
|
108
|
+
3. [Best practice 3 - with source]
|
|
109
|
+
|
|
110
|
+
### User Research
|
|
111
|
+
|
|
112
|
+
[Any user testing, surveys, or feedback that supports this change]
|
|
113
|
+
|
|
114
|
+
- [Finding 1]
|
|
115
|
+
- [Finding 2]
|
|
116
|
+
- [Finding 3]
|
|
117
|
+
|
|
118
|
+
### Accessibility Standards
|
|
119
|
+
|
|
120
|
+
[Any WCAG or accessibility guidelines that support this change]
|
|
121
|
+
|
|
122
|
+
- [Guideline 1]
|
|
123
|
+
- [Guideline 2]
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## Benefits
|
|
128
|
+
|
|
129
|
+
### User Benefits
|
|
130
|
+
|
|
131
|
+
1. **[Benefit 1]**
|
|
132
|
+
- Description: [How it helps users]
|
|
133
|
+
- Impact: [Quantify if possible]
|
|
134
|
+
|
|
135
|
+
2. **[Benefit 2]**
|
|
136
|
+
- Description: [How it helps users]
|
|
137
|
+
- Impact: [Quantify if possible]
|
|
138
|
+
|
|
139
|
+
3. **[Benefit 3]**
|
|
140
|
+
- Description: [How it helps users]
|
|
141
|
+
- Impact: [Quantify if possible]
|
|
142
|
+
|
|
143
|
+
### Business Benefits
|
|
144
|
+
|
|
145
|
+
1. **[Benefit 1]**
|
|
146
|
+
- Description: [How it helps business]
|
|
147
|
+
- Impact: [Quantify if possible - conversions, revenue, etc]
|
|
148
|
+
|
|
149
|
+
2. **[Benefit 2]**
|
|
150
|
+
- Description: [How it helps business]
|
|
151
|
+
- Impact: [Quantify if possible]
|
|
152
|
+
|
|
153
|
+
### Technical Benefits
|
|
154
|
+
|
|
155
|
+
1. **[Benefit 1]**
|
|
156
|
+
- Description: [Performance, maintainability, etc]
|
|
157
|
+
- Impact: [Quantify if possible]
|
|
158
|
+
|
|
159
|
+
2. **[Benefit 2]**
|
|
160
|
+
- Description: [Performance, maintainability, etc]
|
|
161
|
+
- Impact: [Quantify if possible]
|
|
162
|
+
|
|
163
|
+
---
|
|
164
|
+
|
|
165
|
+
## Implementation Plan
|
|
166
|
+
|
|
167
|
+
### Phase 1: Design & Validation
|
|
168
|
+
|
|
169
|
+
**Duration:** [Time estimate]
|
|
170
|
+
|
|
171
|
+
- [ ] Create detailed mockups
|
|
172
|
+
- [ ] Review with stakeholders
|
|
173
|
+
- [ ] User testing (if needed)
|
|
174
|
+
- [ ] Finalize design specs
|
|
175
|
+
|
|
176
|
+
**Deliverables:**
|
|
177
|
+
|
|
178
|
+
- [Deliverable 1]
|
|
179
|
+
- [Deliverable 2]
|
|
180
|
+
|
|
181
|
+
### Phase 2: Development
|
|
182
|
+
|
|
183
|
+
**Duration:** [Time estimate]
|
|
184
|
+
|
|
185
|
+
- [ ] Create new component(s)
|
|
186
|
+
- [ ] Update existing components
|
|
187
|
+
- [ ] Add/update tests
|
|
188
|
+
- [ ] Accessibility audit
|
|
189
|
+
|
|
190
|
+
**Deliverables:**
|
|
191
|
+
|
|
192
|
+
- [Deliverable 1]
|
|
193
|
+
- [Deliverable 2]
|
|
194
|
+
|
|
195
|
+
### Phase 3: Testing
|
|
196
|
+
|
|
197
|
+
**Duration:** [Time estimate]
|
|
198
|
+
|
|
199
|
+
- [ ] Unit tests
|
|
200
|
+
- [ ] E2E tests
|
|
201
|
+
- [ ] Visual regression tests
|
|
202
|
+
- [ ] Accessibility tests
|
|
203
|
+
- [ ] Cross-browser testing
|
|
204
|
+
- [ ] Mobile device testing
|
|
205
|
+
|
|
206
|
+
**Deliverables:**
|
|
207
|
+
|
|
208
|
+
- [Deliverable 1]
|
|
209
|
+
- [Deliverable 2]
|
|
210
|
+
|
|
211
|
+
### Phase 4: Deployment
|
|
212
|
+
|
|
213
|
+
**Duration:** [Time estimate]
|
|
214
|
+
|
|
215
|
+
- [ ] Feature flag implementation
|
|
216
|
+
- [ ] Gradual rollout plan
|
|
217
|
+
- [ ] Monitor metrics
|
|
218
|
+
- [ ] Gather user feedback
|
|
219
|
+
|
|
220
|
+
**Deliverables:**
|
|
221
|
+
|
|
222
|
+
- [Deliverable 1]
|
|
223
|
+
- [Deliverable 2]
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## Resource Requirements
|
|
228
|
+
|
|
229
|
+
### Time Estimate
|
|
230
|
+
|
|
231
|
+
| Phase | Hours | Days | Team Members |
|
|
232
|
+
| ----------- | ----- | ---- | ------------ |
|
|
233
|
+
| Design | [#] | [#] | [Who] |
|
|
234
|
+
| Development | [#] | [#] | [Who] |
|
|
235
|
+
| Testing | [#] | [#] | [Who] |
|
|
236
|
+
| Deployment | [#] | [#] | [Who] |
|
|
237
|
+
| **Total** | [#] | [#] | - |
|
|
238
|
+
|
|
239
|
+
### Technical Requirements
|
|
240
|
+
|
|
241
|
+
- [ ] [Requirement 1]
|
|
242
|
+
- [ ] [Requirement 2]
|
|
243
|
+
- [ ] [Requirement 3]
|
|
244
|
+
|
|
245
|
+
### External Dependencies
|
|
246
|
+
|
|
247
|
+
- [Dependency 1]
|
|
248
|
+
- [Dependency 2]
|
|
249
|
+
|
|
250
|
+
---
|
|
251
|
+
|
|
252
|
+
## Risks & Mitigation
|
|
253
|
+
|
|
254
|
+
### Risk 1: [Risk Name]
|
|
255
|
+
|
|
256
|
+
- **Probability:** [Low/Medium/High]
|
|
257
|
+
- **Impact:** [Low/Medium/High]
|
|
258
|
+
- **Mitigation:** [How to prevent/handle]
|
|
259
|
+
|
|
260
|
+
### Risk 2: [Risk Name]
|
|
261
|
+
|
|
262
|
+
- **Probability:** [Low/Medium/High]
|
|
263
|
+
- **Impact:** [Low/Medium/High]
|
|
264
|
+
- **Mitigation:** [How to prevent/handle]
|
|
265
|
+
|
|
266
|
+
### Risk 3: [Risk Name]
|
|
267
|
+
|
|
268
|
+
- **Probability:** [Low/Medium/High]
|
|
269
|
+
- **Impact:** [Low/Medium/High]
|
|
270
|
+
- **Mitigation:** [How to prevent/handle]
|
|
271
|
+
|
|
272
|
+
---
|
|
273
|
+
|
|
274
|
+
## Success Metrics
|
|
275
|
+
|
|
276
|
+
### Key Performance Indicators
|
|
277
|
+
|
|
278
|
+
| KPI | Current | Target | Measurement Method |
|
|
279
|
+
| ---------- | ------- | ------ | ------------------ |
|
|
280
|
+
| [Metric 1] | [#] | [#] | [How to measure] |
|
|
281
|
+
| [Metric 2] | [#] | [#] | [How to measure] |
|
|
282
|
+
| [Metric 3] | [#] | [#] | [How to measure] |
|
|
283
|
+
|
|
284
|
+
### Success Criteria
|
|
285
|
+
|
|
286
|
+
- [ ] [Criterion 1 - specific, measurable]
|
|
287
|
+
- [ ] [Criterion 2 - specific, measurable]
|
|
288
|
+
- [ ] [Criterion 3 - specific, measurable]
|
|
289
|
+
|
|
290
|
+
### Monitoring Plan
|
|
291
|
+
|
|
292
|
+
**Week 1:**
|
|
293
|
+
|
|
294
|
+
- [What to monitor]
|
|
295
|
+
- [What to monitor]
|
|
296
|
+
|
|
297
|
+
**Week 2-4:**
|
|
298
|
+
|
|
299
|
+
- [What to monitor]
|
|
300
|
+
- [What to monitor]
|
|
301
|
+
|
|
302
|
+
**Week 5+:**
|
|
303
|
+
|
|
304
|
+
- [What to monitor]
|
|
305
|
+
- [What to monitor]
|
|
306
|
+
|
|
307
|
+
---
|
|
308
|
+
|
|
309
|
+
## Alternatives Considered
|
|
310
|
+
|
|
311
|
+
### Alternative 1: [Approach Name]
|
|
312
|
+
|
|
313
|
+
**Description:** [What is this alternative]
|
|
314
|
+
|
|
315
|
+
**Pros:**
|
|
316
|
+
|
|
317
|
+
- [Pro 1]
|
|
318
|
+
- [Pro 2]
|
|
319
|
+
|
|
320
|
+
**Cons:**
|
|
321
|
+
|
|
322
|
+
- [Con 1]
|
|
323
|
+
- [Con 2]
|
|
324
|
+
|
|
325
|
+
**Why Not Chosen:** [Explanation]
|
|
326
|
+
|
|
327
|
+
### Alternative 2: [Approach Name]
|
|
328
|
+
|
|
329
|
+
**Description:** [What is this alternative]
|
|
330
|
+
|
|
331
|
+
**Pros:**
|
|
332
|
+
|
|
333
|
+
- [Pro 1]
|
|
334
|
+
- [Pro 2]
|
|
335
|
+
|
|
336
|
+
**Cons:**
|
|
337
|
+
|
|
338
|
+
- [Con 1]
|
|
339
|
+
- [Con 2]
|
|
340
|
+
|
|
341
|
+
**Why Not Chosen:** [Explanation]
|
|
342
|
+
|
|
343
|
+
---
|
|
344
|
+
|
|
345
|
+
## Related Improvements
|
|
346
|
+
|
|
347
|
+
### Prerequisite Changes
|
|
348
|
+
|
|
349
|
+
[Changes that must happen first]
|
|
350
|
+
|
|
351
|
+
1. [Prerequisite 1]
|
|
352
|
+
2. [Prerequisite 2]
|
|
353
|
+
|
|
354
|
+
### Follow-up Improvements
|
|
355
|
+
|
|
356
|
+
[Changes that can happen after]
|
|
357
|
+
|
|
358
|
+
1. [Follow-up 1]
|
|
359
|
+
2. [Follow-up 2]
|
|
360
|
+
|
|
361
|
+
### Related Features
|
|
362
|
+
|
|
363
|
+
[Other features that might be affected or that relate to this]
|
|
364
|
+
|
|
365
|
+
1. [Feature 1]
|
|
366
|
+
2. [Feature 2]
|
|
367
|
+
|
|
368
|
+
---
|
|
369
|
+
|
|
370
|
+
## Accessibility Checklist
|
|
371
|
+
|
|
372
|
+
- [ ] **Color Contrast:** Meets WCAG 2.1 AA (4.5:1)
|
|
373
|
+
- [ ] **Touch Targets:** Minimum 44x44px
|
|
374
|
+
- [ ] **Keyboard Navigation:** Full keyboard access
|
|
375
|
+
- [ ] **Focus Indicators:** Visible focus states
|
|
376
|
+
- [ ] **Screen Reader:** Proper labels and ARIA
|
|
377
|
+
- [ ] **Alt Text:** All images have descriptive alt
|
|
378
|
+
- [ ] **Responsive:** Works 375px to 1920px
|
|
379
|
+
- [ ] **Motion:** Respects prefers-reduced-motion
|
|
380
|
+
|
|
381
|
+
---
|
|
382
|
+
|
|
383
|
+
## Responsiveness Checklist
|
|
384
|
+
|
|
385
|
+
- [ ] **Mobile (375px):** Optimized layout
|
|
386
|
+
- [ ] **Tablet (768px):** Optimized layout
|
|
387
|
+
- [ ] **Desktop (1280px):** Full features
|
|
388
|
+
- [ ] **FullHD (1920px):** No overflow
|
|
389
|
+
- [ ] **Zero horizontal scroll:** All viewports
|
|
390
|
+
|
|
391
|
+
---
|
|
392
|
+
|
|
393
|
+
## Browser Support
|
|
394
|
+
|
|
395
|
+
- [ ] Chrome (latest)
|
|
396
|
+
- [ ] Firefox (latest)
|
|
397
|
+
- [ ] Safari (latest)
|
|
398
|
+
- [ ] Edge (latest)
|
|
399
|
+
- [ ] Mobile Safari (iOS 14+)
|
|
400
|
+
- [ ] Chrome Mobile (latest)
|
|
401
|
+
|
|
402
|
+
---
|
|
403
|
+
|
|
404
|
+
## Documentation Updates Needed
|
|
405
|
+
|
|
406
|
+
- [ ] Component documentation
|
|
407
|
+
- [ ] User guide
|
|
408
|
+
- [ ] API documentation
|
|
409
|
+
- [ ] Changelog
|
|
410
|
+
- [ ] Migration guide
|
|
411
|
+
|
|
412
|
+
---
|
|
413
|
+
|
|
414
|
+
## Approval & Sign-off
|
|
415
|
+
|
|
416
|
+
### Stakeholder Review
|
|
417
|
+
|
|
418
|
+
| Stakeholder | Role | Approval Status | Date | Notes |
|
|
419
|
+
| ----------- | ------ | --------------------------- | ---------- | ---------- |
|
|
420
|
+
| [Name] | [Role] | [Pending/Approved/Rejected] | YYYY-MM-DD | [Comments] |
|
|
421
|
+
|
|
422
|
+
### Final Decision
|
|
423
|
+
|
|
424
|
+
**Decision:** [Approved/Rejected/Deferred]
|
|
425
|
+
**Date:** YYYY-MM-DD
|
|
426
|
+
**Decision Maker:** [Name]
|
|
427
|
+
**Rationale:** [Why this decision]
|
|
428
|
+
|
|
429
|
+
---
|
|
430
|
+
|
|
431
|
+
## Implementation Tracking
|
|
432
|
+
|
|
433
|
+
### Status Updates
|
|
434
|
+
|
|
435
|
+
**[Date]:** [Status update]
|
|
436
|
+
|
|
437
|
+
**[Date]:** [Status update]
|
|
438
|
+
|
|
439
|
+
**[Date]:** [Status update]
|
|
440
|
+
|
|
441
|
+
### Completion
|
|
442
|
+
|
|
443
|
+
**Deployed:** YYYY-MM-DD
|
|
444
|
+
**Post-Launch Review:** YYYY-MM-DD
|
|
445
|
+
**Final Metrics:** [Results vs targets]
|
|
446
|
+
|
|
447
|
+
---
|
|
448
|
+
|
|
449
|
+
**Version:** 1.0.0
|
|
450
|
+
**Last Updated:** YYYY-MM-DD
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: web-design-guidelines
|
|
3
|
+
description: Review UI code for Web Interface Guidelines compliance. Use when asked to "review my UI", "check accessibility", "audit design", "review UX", or "check my site against best practices".
|
|
4
|
+
metadata:
|
|
5
|
+
author: vercel
|
|
6
|
+
version: "1.0.0"
|
|
7
|
+
argument-hint: <file-or-pattern>
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Web Interface Guidelines
|
|
11
|
+
|
|
12
|
+
Review files for compliance with Web Interface Guidelines.
|
|
13
|
+
|
|
14
|
+
## How It Works
|
|
15
|
+
|
|
16
|
+
1. Fetch the latest guidelines from the source URL below
|
|
17
|
+
2. Read the specified files (or prompt user for files/pattern)
|
|
18
|
+
3. Check against all rules in the fetched guidelines
|
|
19
|
+
4. Output findings in the terse `file:line` format
|
|
20
|
+
|
|
21
|
+
## Guidelines Source
|
|
22
|
+
|
|
23
|
+
Fetch fresh guidelines before each review:
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
https://raw.githubusercontent.com/vercel-labs/web-interface-guidelines/main/command.md
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Use WebFetch to retrieve the latest rules. The fetched content contains all the rules and output format instructions.
|
|
30
|
+
|
|
31
|
+
## Usage
|
|
32
|
+
|
|
33
|
+
When a user provides a file or pattern argument:
|
|
34
|
+
1. Fetch guidelines from the source URL above
|
|
35
|
+
2. Read the specified files
|
|
36
|
+
3. Apply all rules from the fetched guidelines
|
|
37
|
+
4. Output findings using the format specified in the guidelines
|
|
38
|
+
|
|
39
|
+
If no files specified, ask the user which files to review.
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: webapp-testing
|
|
3
|
+
description: Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
|
|
4
|
+
license: Complete terms in LICENSE.txt
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Web Application Testing
|
|
8
|
+
|
|
9
|
+
To test local web applications, write native Python Playwright scripts.
|
|
10
|
+
|
|
11
|
+
**Helper Scripts Available**:
|
|
12
|
+
- `scripts/with_server.py` - Manages server lifecycle (supports multiple servers)
|
|
13
|
+
|
|
14
|
+
**Always run scripts with `--help` first** to see usage. DO NOT read the source until you try running the script first and find that a customized solution is abslutely necessary. These scripts can be very large and thus pollute your context window. They exist to be called directly as black-box scripts rather than ingested into your context window.
|
|
15
|
+
|
|
16
|
+
## Decision Tree: Choosing Your Approach
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
User task → Is it static HTML?
|
|
20
|
+
├─ Yes → Read HTML file directly to identify selectors
|
|
21
|
+
│ ├─ Success → Write Playwright script using selectors
|
|
22
|
+
│ └─ Fails/Incomplete → Treat as dynamic (below)
|
|
23
|
+
│
|
|
24
|
+
└─ No (dynamic webapp) → Is the server already running?
|
|
25
|
+
├─ No → Run: python scripts/with_server.py --help
|
|
26
|
+
│ Then use the helper + write simplified Playwright script
|
|
27
|
+
│
|
|
28
|
+
└�� Yes → Reconnaissance-then-action:
|
|
29
|
+
1. Navigate and wait for networkidle
|
|
30
|
+
2. Take screenshot or inspect DOM
|
|
31
|
+
3. Identify selectors from rendered state
|
|
32
|
+
4. Execute actions with discovered selectors
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Example: Using with_server.py
|
|
36
|
+
|
|
37
|
+
To start a server, run `--help` first, then use the helper:
|
|
38
|
+
|
|
39
|
+
**Single server:**
|
|
40
|
+
```bash
|
|
41
|
+
python scripts/with_server.py --server "npm run dev" --port 5173 -- python your_automation.py
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
**Multiple servers (e.g., backend + frontend):**
|
|
45
|
+
```bash
|
|
46
|
+
python scripts/with_server.py \
|
|
47
|
+
--server "cd backend && python server.py" --port 3000 \
|
|
48
|
+
--server "cd frontend && npm run dev" --port 5173 \
|
|
49
|
+
-- python your_automation.py
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
To create an automation script, include only Playwright logic (servers are managed automatically):
|
|
53
|
+
```python
|
|
54
|
+
from playwright.sync_api import sync_playwright
|
|
55
|
+
|
|
56
|
+
with sync_playwright() as p:
|
|
57
|
+
browser = p.chromium.launch(headless=True) # Always launch chromium in headless mode
|
|
58
|
+
page = browser.new_page()
|
|
59
|
+
page.goto('http://localhost:5173') # Server already running and ready
|
|
60
|
+
page.wait_for_load_state('networkidle') # CRITICAL: Wait for JS to execute
|
|
61
|
+
# ... your automation logic
|
|
62
|
+
browser.close()
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## Reconnaissance-Then-Action Pattern
|
|
66
|
+
|
|
67
|
+
1. **Inspect rendered DOM**:
|
|
68
|
+
```python
|
|
69
|
+
page.screenshot(path='/tmp/inspect.png', full_page=True)
|
|
70
|
+
content = page.content()
|
|
71
|
+
page.locator('button').all()
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
2. **Identify selectors** from inspection results
|
|
75
|
+
|
|
76
|
+
3. **Execute actions** using discovered selectors
|
|
77
|
+
|
|
78
|
+
## Common Pitfall
|
|
79
|
+
|
|
80
|
+
❌ **Don't** inspect the DOM before waiting for `networkidle` on dynamic apps
|
|
81
|
+
✅ **Do** wait for `page.wait_for_load_state('networkidle')` before inspection
|
|
82
|
+
|
|
83
|
+
## Best Practices
|
|
84
|
+
|
|
85
|
+
- **Use bundled scripts as black boxes** - To accomplish a task, consider whether one of the scripts available in `scripts/` can help. These scripts handle common, complex workflows reliably without cluttering the context window. Use `--help` to see usage, then invoke directly.
|
|
86
|
+
- Use `sync_playwright()` for synchronous scripts
|
|
87
|
+
- Always close the browser when done
|
|
88
|
+
- Use descriptive selectors: `text=`, `role=`, CSS selectors, or IDs
|
|
89
|
+
- Add appropriate waits: `page.wait_for_selector()` or `page.wait_for_timeout()`
|
|
90
|
+
|
|
91
|
+
## Reference Files
|
|
92
|
+
|
|
93
|
+
- **examples/** - Examples showing common patterns:
|
|
94
|
+
- `element_discovery.py` - Discovering buttons, links, and inputs on a page
|
|
95
|
+
- `static_html_automation.py` - Using file:// URLs for local HTML
|
|
96
|
+
- `console_logging.py` - Capturing console logs during automation
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
{
|
|
2
|
+
"taskId": "ui-ux-audit-fixes",
|
|
3
|
+
"type": "feature",
|
|
4
|
+
"title": "UI/UX Audit - Multiple Improvements",
|
|
5
|
+
"startTime": "2025-12-29T02:00:00.000Z",
|
|
6
|
+
"endTime": "2025-12-29T03:30:00.000Z",
|
|
7
|
+
"status": "completed",
|
|
8
|
+
"currentAgent": "commit-manager",
|
|
9
|
+
"completedSteps": [
|
|
10
|
+
"codebase-knowledge",
|
|
11
|
+
"analyzer",
|
|
12
|
+
"ui-ux-reviewer",
|
|
13
|
+
"documenter",
|
|
14
|
+
"implementation",
|
|
15
|
+
"tester",
|
|
16
|
+
"security-auditor",
|
|
17
|
+
"quality-checker",
|
|
18
|
+
"final-validator",
|
|
19
|
+
"domain-updater",
|
|
20
|
+
"commit-manager"
|
|
21
|
+
],
|
|
22
|
+
"remainingSteps": [],
|
|
23
|
+
"context": {
|
|
24
|
+
"branch": "feature/responsive-seed",
|
|
25
|
+
"description": "Comprehensive UI/UX audit fixes: bottom nav indicator size, achievement colors, winner highlighting, race creator flow, public race creation, host earnings display, explanatory page",
|
|
26
|
+
"affectedDomains": ["ui-ux-responsive", "races", "betting", "gamification"]
|
|
27
|
+
},
|
|
28
|
+
"files": {
|
|
29
|
+
"planned": [
|
|
30
|
+
"components/layout/BottomNav.tsx",
|
|
31
|
+
"components/gamification/BadgeCard.tsx",
|
|
32
|
+
"components/gamification/ProgressBar.tsx",
|
|
33
|
+
"components/gamification/LeaderboardTable.tsx",
|
|
34
|
+
"components/races/ParticipantList.tsx",
|
|
35
|
+
"app/(organizer)/my-races/page.tsx",
|
|
36
|
+
"app/(main)/races/[id]/page.tsx",
|
|
37
|
+
"app/(main)/how-it-works/page.tsx",
|
|
38
|
+
"app/(main)/profile/page.tsx"
|
|
39
|
+
],
|
|
40
|
+
"created": ["app/(main)/how-it-works/page.tsx"],
|
|
41
|
+
"modified": [
|
|
42
|
+
"components/layout/BottomNav.tsx",
|
|
43
|
+
"components/gamification/BadgeCard.tsx",
|
|
44
|
+
"components/gamification/ProgressBar.tsx",
|
|
45
|
+
"components/gamification/BadgeGallery.tsx",
|
|
46
|
+
"components/gamification/LeaderboardTable.tsx",
|
|
47
|
+
"components/races/ParticipantList.tsx",
|
|
48
|
+
"app/(main)/races/[id]/page.tsx",
|
|
49
|
+
"app/(main)/races/[id]/results/page.tsx",
|
|
50
|
+
"app/(main)/profile/page.tsx",
|
|
51
|
+
"app/(main)/achievements/page.tsx",
|
|
52
|
+
"app/(main)/bets/[id]/page.tsx",
|
|
53
|
+
"app/(main)/leaderboard/page.tsx",
|
|
54
|
+
"app/layout.tsx",
|
|
55
|
+
".claude/skills/codebase-knowledge/domains/ui-ux-responsive.md",
|
|
56
|
+
".claude/skills/codebase-knowledge/domains/races.md"
|
|
57
|
+
]
|
|
58
|
+
},
|
|
59
|
+
"results": {
|
|
60
|
+
"commit": "25a15c1",
|
|
61
|
+
"testsAdded": 0,
|
|
62
|
+
"testsPassed": "N/A (UI changes only)",
|
|
63
|
+
"qualityGates": "PASSED",
|
|
64
|
+
"securityAudit": "PASSED",
|
|
65
|
+
"completedFixes": {
|
|
66
|
+
"1_bottomnav_indicator": "✅ DONE - Reduced from 40x64px to 32x48px",
|
|
67
|
+
"2_achievement_colors": "✅ DONE - Zinc colors with dark mode support",
|
|
68
|
+
"3_winner_highlighting": "✅ DONE - Trophy, badge, gold gradient",
|
|
69
|
+
"4_race_results_display": "✅ DONE - Fetches results and highlights winner",
|
|
70
|
+
"5_fee_breakdown": "✅ DONE - Displayed in race details and profile",
|
|
71
|
+
"6_how_it_works_page": "✅ DONE - Comprehensive explanatory page",
|
|
72
|
+
"7_winner_declaration_ui": "⏳ DEFERRED - Requires backend changes",
|
|
73
|
+
"8_public_race_creation": "⏳ DEFERRED - Requires policy decision"
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
"notes": "Completed 6 of 8 requested fixes. Two items deferred due to backend/policy requirements."
|
|
77
|
+
}
|