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.
Files changed (67) hide show
  1. package/package.json +1 -1
  2. package/template/.claude/CLAUDE.md +86 -20
  3. package/template/.claude/agents/sd-audit.md +197 -0
  4. package/template/.claude/agents/sd-fix-verify-semantic.md +112 -0
  5. package/template/.claude/agents/sd-fix-verify-technical.md +36 -0
  6. package/template/.claude/agents/sd-fix.md +194 -0
  7. package/template/.claude/agents/sd-research.md +61 -0
  8. package/template/.claude/agents/sd-synthesis.md +74 -0
  9. package/template/.claude/commands/super-design.md +15 -0
  10. package/template/.claude/hooks/super-design-session-start.sh +4 -0
  11. package/template/.claude/settings.json +14 -0
  12. package/template/.claude/skills/codebase-knowledge/SKILL.md +145 -0
  13. package/template/.claude/skills/codebase-knowledge/TEMPLATE.md +35 -0
  14. package/template/.claude/skills/codebase-knowledge/domains/claude-system.md +93 -0
  15. package/template/.claude/skills/composition-patterns/SKILL.md +89 -0
  16. package/template/.claude/skills/docs-tracker/SKILL.md +239 -0
  17. package/template/.claude/skills/mcp-builder/SKILL.md +236 -0
  18. package/template/.claude/skills/quality-gate/scripts/check-all.sh +83 -0
  19. package/template/.claude/skills/react-best-practices/SKILL.md +146 -0
  20. package/template/.claude/skills/security-scan/reference/owasp-top-10.md +257 -0
  21. package/template/.claude/skills/security-scan/scripts/scan.py +190 -0
  22. package/template/.claude/skills/super-design/README.md +37 -0
  23. package/template/.claude/skills/super-design/SKILL.md +105 -0
  24. package/template/.claude/skills/super-design/hooks/guard-paths.py +35 -0
  25. package/template/.claude/skills/super-design/hooks/post-edit-lint.py +57 -0
  26. package/template/.claude/skills/super-design/references/audit-methodology.md +513 -0
  27. package/template/.claude/skills/super-design/references/change-detection-playbook.md +1432 -0
  28. package/template/.claude/skills/super-design/references/design-theory.md +706 -0
  29. package/template/.claude/skills/super-design/references/fix-agent-playbook.md +118 -0
  30. package/template/.claude/skills/super-design/references/market-research-playbook.md +773 -0
  31. package/template/.claude/skills/super-design/references/playwright-mcp-reference.md +1057 -0
  32. package/template/.claude/skills/super-design/references/skills-subagents-reference.md +784 -0
  33. package/template/.claude/skills/super-design/references/superpowers-and-distribution.md +136 -0
  34. package/template/.claude/skills/super-design/scripts/detect-changes.sh +61 -0
  35. package/template/.claude/skills/super-design/scripts/diff-tokens.sh +13 -0
  36. package/template/.claude/skills/super-design/scripts/discover-routes.sh +45 -0
  37. package/template/.claude/skills/super-design/scripts/extract-tokens.mjs +41 -0
  38. package/template/.claude/skills/super-design/scripts/hash-pages.sh +42 -0
  39. package/template/.claude/skills/super-design/scripts/validate-state.sh +15 -0
  40. package/template/.claude/skills/super-design/scripts/verify-audit.sh +19 -0
  41. package/template/.claude/skills/super-design/templates/audit-state.schema.json +57 -0
  42. package/template/.claude/skills/super-design/templates/findings.schema.json +57 -0
  43. package/template/.claude/skills/super-design/templates/fix-history.md.tpl +26 -0
  44. package/template/.claude/skills/super-design/templates/overview.md.tpl +52 -0
  45. package/template/.claude/skills/test-coverage/reference/playwright-patterns.md +260 -0
  46. package/template/.claude/skills/test-coverage/scripts/coverage-check.sh +52 -0
  47. package/template/.claude/skills/typeui-ant/SKILL.md +133 -0
  48. package/template/.claude/skills/typeui-application/SKILL.md +128 -0
  49. package/template/.claude/skills/typeui-artistic/SKILL.md +133 -0
  50. package/template/.claude/skills/typeui-bento/SKILL.md +127 -0
  51. package/template/.claude/skills/typeui-bold/SKILL.md +127 -0
  52. package/template/.claude/skills/typeui-clean/SKILL.md +128 -0
  53. package/template/.claude/skills/typeui-dashboard/SKILL.md +133 -0
  54. package/template/.claude/skills/typeui-doodle/SKILL.md +142 -0
  55. package/template/.claude/skills/typeui-dramatic/SKILL.md +127 -0
  56. package/template/.claude/skills/typeui-enterprise/SKILL.md +132 -0
  57. package/template/.claude/skills/typeui-neobrutalism/SKILL.md +127 -0
  58. package/template/.claude/skills/typeui-paper/SKILL.md +127 -0
  59. package/template/.claude/skills/ui-ux-audit/QUICK-START.md +450 -0
  60. package/template/.claude/skills/ui-ux-audit/README.md +470 -0
  61. package/template/.claude/skills/ui-ux-audit/templates/audit-report.md +591 -0
  62. package/template/.claude/skills/ui-ux-audit/templates/competitor-analysis.md +363 -0
  63. package/template/.claude/skills/ui-ux-audit/templates/component-spec.md +491 -0
  64. package/template/.claude/skills/ui-ux-audit/templates/improvement-recommendation.md +450 -0
  65. package/template/.claude/skills/web-design-guidelines/SKILL.md +39 -0
  66. package/template/.claude/skills/webapp-testing/SKILL.md +96 -0
  67. package/template/.claude/skills/workflow-state/workflow-state.json +77 -0
@@ -0,0 +1,491 @@
1
+ # Component Specification: [Component Name]
2
+
3
+ **Date:** YYYY-MM-DD
4
+ **Author:** [Agent name]
5
+ **Status:** [Draft/Review/Approved/Implemented]
6
+
7
+ ---
8
+
9
+ ## Overview
10
+
11
+ ### Purpose
12
+
13
+ [What problem does this component solve?]
14
+
15
+ ### Context
16
+
17
+ [Where and when is this component used?]
18
+
19
+ ### User Stories
20
+
21
+ 1. As a [user type], I need to [action] so that [benefit]
22
+ 2. As a [user type], I need to [action] so that [benefit]
23
+ 3. As a [user type], I need to [action] so that [benefit]
24
+
25
+ ---
26
+
27
+ ## Visual Design
28
+
29
+ ### Desktop (1280px+)
30
+
31
+ ```
32
+ [ASCII mockup or description]
33
+ ┌─────────────────────────────────────┐
34
+ │ [Component layout] │
35
+ │ ┌──────┐ ┌───────────────────┐ │
36
+ │ │ Icon │ │ Content │ │
37
+ │ └──────┘ │ │ │
38
+ │ └───────────────────┘ │
39
+ └─────────────────────────────────────┘
40
+ ```
41
+
42
+ **Dimensions:**
43
+
44
+ - Width: [value]
45
+ - Height: [value]
46
+ - Padding: [value]
47
+ - Margin: [value]
48
+
49
+ ### Mobile (375px+)
50
+
51
+ ```
52
+ [ASCII mockup or description]
53
+ ┌───────────────┐
54
+ │ [Component] │
55
+ │ [Stacked] │
56
+ │ [Layout] │
57
+ └───────────────┘
58
+ ```
59
+
60
+ **Dimensions:**
61
+
62
+ - Width: [value]
63
+ - Height: [value]
64
+ - Padding: [value]
65
+ - Margin: [value]
66
+
67
+ ### Responsive Breakpoints
68
+
69
+ | Breakpoint | Width | Layout Changes |
70
+ | ---------- | -------- | -------------- |
71
+ | Mobile | < 640px | [Description] |
72
+ | Tablet | 640-1024 | [Description] |
73
+ | Desktop | > 1024px | [Description] |
74
+
75
+ ---
76
+
77
+ ## Component API
78
+
79
+ ### Props
80
+
81
+ ```typescript
82
+ interface [ComponentName]Props {
83
+ // Required props
84
+ [propName]: [type]; // [Description]
85
+
86
+ // Optional props
87
+ [propName]?: [type]; // [Description]
88
+
89
+ // Event handlers
90
+ on[Event]?: (data: [type]) => void; // [Description]
91
+
92
+ // Styling
93
+ className?: string; // Additional CSS classes
94
+ style?: React.CSSProperties; // Inline styles
95
+ }
96
+ ```
97
+
98
+ ### Example Usage
99
+
100
+ ```tsx
101
+ import { [ComponentName] } from '@/components/[path]';
102
+
103
+ export default function Example() {
104
+ const handle[Event] = (data: [type]) => {
105
+ // Event handler logic
106
+ };
107
+
108
+ return (
109
+ <[ComponentName]
110
+ [prop]="[value]"
111
+ on[Event]={handle[Event]}
112
+ className="[additional classes]"
113
+ />
114
+ );
115
+ }
116
+ ```
117
+
118
+ ---
119
+
120
+ ## States & Variants
121
+
122
+ ### Default State
123
+
124
+ [Description and visual representation]
125
+
126
+ **Styling:**
127
+
128
+ ```css
129
+ /* Key classes or styles */
130
+ ```
131
+
132
+ ### Hover State
133
+
134
+ [Description and visual representation]
135
+
136
+ **Styling:**
137
+
138
+ ```css
139
+ /* Key classes or styles */
140
+ ```
141
+
142
+ ### Active/Focus State
143
+
144
+ [Description and visual representation]
145
+
146
+ **Styling:**
147
+
148
+ ```css
149
+ /* Key classes or styles */
150
+ ```
151
+
152
+ ### Disabled State
153
+
154
+ [Description and visual representation]
155
+
156
+ **Styling:**
157
+
158
+ ```css
159
+ /* Key classes or styles */
160
+ ```
161
+
162
+ ### Loading State
163
+
164
+ [Description and visual representation]
165
+
166
+ **Styling:**
167
+
168
+ ```css
169
+ /* Key classes or styles */
170
+ ```
171
+
172
+ ### Error State
173
+
174
+ [Description and visual representation]
175
+
176
+ **Styling:**
177
+
178
+ ```css
179
+ /* Key classes or styles */
180
+ ```
181
+
182
+ ### Variants
183
+
184
+ | Variant Name | Description | Use Case |
185
+ | ------------ | -------------------- | ------------- |
186
+ | [name] | [Visual description] | [When to use] |
187
+
188
+ ---
189
+
190
+ ## Behavior
191
+
192
+ ### Interactions
193
+
194
+ 1. **[Interaction 1]**
195
+ - Trigger: [What user does]
196
+ - Response: [What component does]
197
+ - Animation: [If applicable]
198
+
199
+ 2. **[Interaction 2]**
200
+ - Trigger: [What user does]
201
+ - Response: [What component does]
202
+ - Animation: [If applicable]
203
+
204
+ ### Animations
205
+
206
+ | Animation | Trigger | Duration | Easing |
207
+ | --------- | ------- | -------- | ----------------- |
208
+ | [name] | [When] | [Time] | [Easing function] |
209
+
210
+ ### Keyboard Navigation
211
+
212
+ | Key | Action |
213
+ | ---------- | -------------- |
214
+ | Tab | [What happens] |
215
+ | Shift+Tab | [What happens] |
216
+ | Enter | [What happens] |
217
+ | Space | [What happens] |
218
+ | Escape | [What happens] |
219
+ | Arrow keys | [What happens] |
220
+
221
+ ### Touch Gestures
222
+
223
+ | Gesture | Action |
224
+ | ---------- | -------------- |
225
+ | Tap | [What happens] |
226
+ | Long press | [What happens] |
227
+ | Swipe | [What happens] |
228
+ | Pinch | [What happens] |
229
+
230
+ ---
231
+
232
+ ## Design Tokens
233
+
234
+ ### Colors
235
+
236
+ ```css
237
+ /* Component-specific colors */
238
+ --component-bg: [value];
239
+ --component-text: [value];
240
+ --component-border: [value];
241
+ --component-hover: [value];
242
+ --component-active: [value];
243
+ ```
244
+
245
+ **From Design System:**
246
+
247
+ - Primary: `hsl(var(--primary))`
248
+ - Secondary: `hsl(var(--secondary))`
249
+ - [etc]
250
+
251
+ ### Typography
252
+
253
+ ```css
254
+ /* Text styles */
255
+ --component-font-size: [value];
256
+ --component-font-weight: [value];
257
+ --component-line-height: [value];
258
+ --component-letter-spacing: [value];
259
+ ```
260
+
261
+ ### Spacing
262
+
263
+ ```css
264
+ /* Internal spacing */
265
+ --component-padding-x: [value];
266
+ --component-padding-y: [value];
267
+ --component-gap: [value];
268
+ ```
269
+
270
+ ### Border & Shadow
271
+
272
+ ```css
273
+ /* Visual effects */
274
+ --component-border-radius: [value];
275
+ --component-border-width: [value];
276
+ --component-shadow: [value];
277
+ ```
278
+
279
+ ---
280
+
281
+ ## Accessibility
282
+
283
+ ### WCAG Compliance
284
+
285
+ - [ ] **Contrast:** Meets 4.5:1 ratio for text
286
+ - [ ] **Touch Targets:** Minimum 44x44px
287
+ - [ ] **Keyboard:** Full keyboard navigation
288
+ - [ ] **Focus:** Visible focus indicator
289
+ - [ ] **Labels:** All elements properly labeled
290
+ - [ ] **ARIA:** Appropriate ARIA attributes
291
+ - [ ] **Screen Reader:** Tested with screen reader
292
+
293
+ ### ARIA Attributes
294
+
295
+ ```tsx
296
+ <[ComponentName]
297
+ role="[role]"
298
+ aria-label="[label]"
299
+ aria-labelledby="[id]"
300
+ aria-describedby="[id]"
301
+ aria-expanded="[boolean]"
302
+ aria-controls="[id]"
303
+ aria-live="[off|polite|assertive]"
304
+ />
305
+ ```
306
+
307
+ ### Screen Reader Announcements
308
+
309
+ | Event | Announcement |
310
+ | ------- | --------------------------- |
311
+ | [Event] | "[What screen reader says]" |
312
+
313
+ ---
314
+
315
+ ## Performance
316
+
317
+ ### Loading Strategy
318
+
319
+ - [ ] Lazy loaded
320
+ - [ ] Code split
321
+ - [ ] Preloaded
322
+ - [ ] Eagerly loaded
323
+
324
+ **Rationale:** [Why this strategy?]
325
+
326
+ ### Bundle Size
327
+
328
+ - Estimated: [size] KB
329
+ - With dependencies: [size] KB
330
+
331
+ ### Optimization
332
+
333
+ - [ ] Memoized with React.memo
334
+ - [ ] Uses useCallback for handlers
335
+ - [ ] Uses useMemo for computed values
336
+ - [ ] Debounced/throttled where needed
337
+ - [ ] Virtualized if list/grid
338
+
339
+ ---
340
+
341
+ ## Dependencies
342
+
343
+ ### External Libraries
344
+
345
+ | Library | Version | Purpose |
346
+ | ------- | ------- | ----------------- |
347
+ | [name] | [ver] | [Why it's needed] |
348
+
349
+ ### Internal Dependencies
350
+
351
+ | Component/Hook | Purpose |
352
+ | -------------- | ----------------- |
353
+ | [name] | [Why it's needed] |
354
+
355
+ ---
356
+
357
+ ## File Structure
358
+
359
+ ```
360
+ components/[feature]/[ComponentName]/
361
+ ├── [ComponentName].tsx # Main component
362
+ ├── [ComponentName]Skeleton.tsx # Loading skeleton
363
+ ├── [ComponentName].test.tsx # Unit tests
364
+ ├── [ComponentName].stories.tsx # Storybook stories (if used)
365
+ └── index.ts # Barrel export
366
+ ```
367
+
368
+ ---
369
+
370
+ ## Testing
371
+
372
+ ### Unit Tests
373
+
374
+ ```typescript
375
+ describe('[ComponentName]', () => {
376
+ it('should render with default props', () => {
377
+ // Test
378
+ });
379
+
380
+ it('should handle [interaction]', () => {
381
+ // Test
382
+ });
383
+
384
+ it('should be accessible', () => {
385
+ // Test
386
+ });
387
+ });
388
+ ```
389
+
390
+ ### E2E Test Scenarios
391
+
392
+ 1. [Scenario 1 - description]
393
+ 2. [Scenario 2 - description]
394
+ 3. [Scenario 3 - description]
395
+
396
+ ### Visual Regression
397
+
398
+ - [ ] Desktop viewport
399
+ - [ ] Mobile viewport
400
+ - [ ] Dark mode
401
+ - [ ] Light mode
402
+ - [ ] Hover states
403
+ - [ ] Focus states
404
+
405
+ ---
406
+
407
+ ## Edge Cases
408
+
409
+ ### Data Edge Cases
410
+
411
+ | Case | Handling Strategy |
412
+ | -------------- | ----------------- |
413
+ | Empty data | [How to handle] |
414
+ | Very long text | [How to handle] |
415
+ | Special chars | [How to handle] |
416
+ | Null/undefined | [How to handle] |
417
+
418
+ ### UI Edge Cases
419
+
420
+ | Case | Handling Strategy |
421
+ | --------------- | ----------------- |
422
+ | Narrow viewport | [How to handle] |
423
+ | Wide viewport | [How to handle] |
424
+ | High zoom | [How to handle] |
425
+ | Slow network | [How to handle] |
426
+
427
+ ---
428
+
429
+ ## Related Components
430
+
431
+ | Component | Relationship |
432
+ | --------- | ----------------- |
433
+ | [name] | [How they relate] |
434
+
435
+ ---
436
+
437
+ ## Migration Guide
438
+
439
+ ### From Previous Version
440
+
441
+ [If this replaces an existing component]
442
+
443
+ **Breaking Changes:**
444
+
445
+ 1. [Change 1]
446
+ 2. [Change 2]
447
+
448
+ **Migration Steps:**
449
+
450
+ 1. [Step 1]
451
+ 2. [Step 2]
452
+
453
+ ---
454
+
455
+ ## Future Enhancements
456
+
457
+ ### Planned Features
458
+
459
+ - [ ] [Feature 1]
460
+ - [ ] [Feature 2]
461
+ - [ ] [Feature 3]
462
+
463
+ ### Potential Improvements
464
+
465
+ - [ ] [Improvement 1]
466
+ - [ ] [Improvement 2]
467
+
468
+ ---
469
+
470
+ ## References
471
+
472
+ ### Design Inspiration
473
+
474
+ - [Link to design]
475
+ - [Link to similar component]
476
+
477
+ ### Documentation
478
+
479
+ - [Link to Radix UI docs if using]
480
+ - [Link to related article]
481
+
482
+ ### Research
483
+
484
+ - [Link to competitor analysis]
485
+ - [Link to user research]
486
+
487
+ ---
488
+
489
+ **Specification Version:** 1.0.0
490
+ **Last Updated:** YYYY-MM-DD
491
+ **Status:** [Draft/Review/Approved/Implemented]