@discourser/design-system 0.22.2 → 0.22.3

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 (75) hide show
  1. package/dist/figma-codex.json +2 -2
  2. package/docs/CSS_USAGE.md +235 -0
  3. package/docs/FIGMA_MAKE_SETUP.md +339 -0
  4. package/docs/GUIDELINES_REVIEW.md +728 -0
  5. package/docs/MAINTAINER_CHECKLIST.md +265 -0
  6. package/docs/TESTING_QUICK_REFERENCE.md +159 -0
  7. package/docs/TESTING_TOKENS.md +340 -0
  8. package/docs/active-stories/README.md +29 -0
  9. package/docs/active-stories/STORY-006a-figma-translation-foundations.md +324 -0
  10. package/docs/active-stories/STORY-006b-figma-translation-components.md +201 -0
  11. package/docs/active-stories/STORY-006c-figma-translation-layout-extension.md +258 -0
  12. package/docs/active-stories/STORY-008-kai-sidecar-fragments.md +137 -0
  13. package/docs/active-stories/STORY-011-verify-translation-docs.md +182 -0
  14. package/docs/archive/ARCHITECTURE-discourser-design-system.md +448 -0
  15. package/docs/claude-feed-back/ARCHITECTURE_DIAGRAM.md +243 -0
  16. package/docs/claude-feed-back/STYLING_VERIFICATION.md +89 -0
  17. package/docs/claude-feed-back/TEST_RESULTS.md +182 -0
  18. package/docs/context-share/ELEVATION_FIX_PLAN.md +903 -0
  19. package/docs/context-share/STORY-001-VALIDATION-PASSED.md +192 -0
  20. package/docs/context-share/STORY-002-IMPLEMENTATION-COMPLETE.md +161 -0
  21. package/docs/context-share/STORYBOOK_MCP_STRATEGY.md +867 -0
  22. package/docs/context-share/TESTING_GAPS_FILLED.md +353 -0
  23. package/docs/context-share/TOKEN_TESTING_SUMMARY.md +388 -0
  24. package/docs/context-share/code-connect-prompt.md +90 -0
  25. package/docs/context-share/dds-autonomous-pipeline.md +765 -0
  26. package/docs/context-share/fix-checkbox-radio-tokens.md +145 -0
  27. package/docs/context-share/icon-component-prompt.md +154 -0
  28. package/docs/context-share/icons/Audience.svg +3 -0
  29. package/docs/context-share/icons/AudioSpeaker.svg +3 -0
  30. package/docs/context-share/icons/BookmarkPlus.svg +3 -0
  31. package/docs/context-share/icons/ClipBoard.svg +8 -0
  32. package/docs/context-share/icons/DiscourserLogo.svg +4 -0
  33. package/docs/context-share/icons/ExitStudio.svg +4 -0
  34. package/docs/context-share/icons/Microphone.svg +5 -0
  35. package/docs/context-share/icons/NotebookPen.svg +3 -0
  36. package/docs/context-share/icons/PausePlay.svg +5 -0
  37. package/docs/context-share/icons/Play.svg +4 -0
  38. package/docs/context-share/icons/Record.svg +6 -0
  39. package/docs/context-share/icons/RepeatQuestion.svg +3 -0
  40. package/docs/context-share/icons/ScrollText.svg +3 -0
  41. package/docs/context-share/icons/Sparkles.svg +3 -0
  42. package/docs/context-share/icons/Speech.svg +3 -0
  43. package/docs/context-share/icons/StopPlay.svg +4 -0
  44. package/docs/context-share/icons/Timer.svg +3 -0
  45. package/docs/context-share/icons/UserProfile.svg +3 -0
  46. package/docs/context-share/m3-token-pipeline-audit.md +125 -0
  47. package/docs/context-share/storybook-mcp-kai-agent-revised-summary.md +211 -0
  48. package/docs/discourser-design-system-prd.md +3698 -0
  49. package/docs/figma-captures/01-typography.png +0 -0
  50. package/docs/figma-captures/02-button-iconbutton.png +0 -0
  51. package/docs/figma-captures/03-form-inputs.png +0 -0
  52. package/docs/figma-captures/04-form-controls.png +0 -0
  53. package/docs/figma-captures/05-data-display.png +0 -0
  54. package/docs/figma-captures/06-feedback.png +0 -0
  55. package/docs/figma-captures/07-overlays.png +0 -0
  56. package/docs/figma-captures/08-navigation-layout.png +0 -0
  57. package/docs/figma-captures/09-custom-components.png +0 -0
  58. package/docs/figma-captures/10-scenario-queue.png +0 -0
  59. package/docs/figma-captures/11-icon-library.png +0 -0
  60. package/docs/figma-make-docs/01-understanding-templates.md +235 -0
  61. package/docs/figma-make-docs/02-prerequisites.md +266 -0
  62. package/docs/figma-make-docs/03-creating-template.md +306 -0
  63. package/docs/figma-make-docs/04-adding-guidelines.md +448 -0
  64. package/docs/figma-make-docs/05-example-starter-code.md +590 -0
  65. package/docs/figma-make-docs/06-publishing-template.md +417 -0
  66. package/docs/figma-make-docs/07-maintenance.md +536 -0
  67. package/docs/figma-make-docs/08-faq.md +490 -0
  68. package/docs/figma-make-docs/README.md +95 -0
  69. package/docs/material-theme.json +418 -0
  70. package/docs/plans/2026-03-12-figma-token-export-rewrite.md +504 -0
  71. package/docs/plans/2026-03-12-step7-panda-token-resolution-design.md +119 -0
  72. package/docs/plans/2026-03-12-step7-panda-token-resolution.md +993 -0
  73. package/docs/token-name-mapping.json +850 -0
  74. package/docs/token-name-mapping.md +251 -0
  75. package/package.json +3 -2
@@ -0,0 +1,536 @@
1
+ # Maintaining Templates
2
+
3
+ This guide covers how to update and maintain your Figma Make template over time.
4
+
5
+ ## Overview
6
+
7
+ **Why Maintenance Matters:**
8
+ - Keep template up-to-date with package updates
9
+ - Fix bugs discovered by users
10
+ - Add new components as they're released
11
+ - Improve based on user feedback
12
+ - Maintain consistency with design system evolution
13
+
14
+ ## Understanding Template Updates
15
+
16
+ ### Key Principle: Independence
17
+
18
+ **Important:** Updating a template **does NOT** update existing files created from it.
19
+
20
+ ```
21
+ Template (v1.0)
22
+ ↓ Creates
23
+ User File A (snapshot of v1.0)
24
+
25
+ Template Updated → (v1.1)
26
+ ↓ Creates new
27
+ User File B (snapshot of v1.1)
28
+
29
+ User File A remains at v1.0
30
+ ```
31
+
32
+ **Implications:**
33
+ - ✅ Users' files are stable and won't break
34
+ - ✅ Users can continue working without disruption
35
+ - ❌ Users don't automatically get updates
36
+ - ❌ Users must create new files to get updates
37
+
38
+ ## When to Update Your Template
39
+
40
+ ### Always Update For:
41
+
42
+ **Critical Fixes:**
43
+ - Security vulnerabilities
44
+ - Breaking bugs in examples
45
+ - Incorrect guidelines
46
+ - Broken imports or dependencies
47
+
48
+ **Package Updates:**
49
+ - New design system version published
50
+ - New components added
51
+ - Bug fixes in components
52
+ - Breaking changes that need documentation
53
+
54
+ **Guideline Improvements:**
55
+ - Better examples discovered
56
+ - Clearer documentation needed
57
+ - New best practices established
58
+ - User confusion about usage
59
+
60
+ ### Consider Updating For:
61
+
62
+ **Minor Improvements:**
63
+ - Better example code
64
+ - Additional examples
65
+ - Enhanced documentation
66
+ - Visual polish
67
+
68
+ **New Features:**
69
+ - New components released
70
+ - Additional utility functions
71
+ - Advanced patterns
72
+
73
+ ### Don't Update For:
74
+
75
+ **User-Specific Needs:**
76
+ - One user's specific request
77
+ - Project-specific customizations
78
+ - Experimental features
79
+
80
+ **Frequent Minor Tweaks:**
81
+ - Small wording changes
82
+ - Cosmetic adjustments
83
+ - Personal preferences
84
+
85
+ **Recommendation:** Batch minor updates together, release major updates when significant.
86
+
87
+ ## How to Update Your Template
88
+
89
+ ### Step 1: Update the Source File
90
+
91
+ #### 1.1 Find Your Source File
92
+
93
+ 1. Go to Figma dashboard
94
+ 2. Find the original file used to create the template
95
+ 3. **This is the file you'll edit**
96
+ 4. NOT a file created from the template
97
+
98
+ **How to identify source file:**
99
+ - It has the template name (e.g., "Discourser Design System Template")
100
+ - It's in the location where you first created it
101
+ - Opening it shows your original work
102
+
103
+ #### 1.2 Make Your Changes
104
+
105
+ Common updates:
106
+
107
+ **Package Version:**
108
+ ```json
109
+ // package.json
110
+ {
111
+ "dependencies": {
112
+ "@discourser/design-system": "^0.2.0" // Updated version
113
+ }
114
+ }
115
+ ```
116
+
117
+ **Guidelines:**
118
+ - Edit files in `guidelines/` folder
119
+ - Add new component docs for new components
120
+ - Update existing docs for API changes
121
+ - Improve examples based on feedback
122
+
123
+ **Example Code:**
124
+ - Fix bugs in examples
125
+ - Add new example components
126
+ - Improve existing examples
127
+ - Remove outdated patterns
128
+
129
+ #### 1.3 Test Changes
130
+
131
+ Before publishing update:
132
+ - [ ] Preview works correctly
133
+ - [ ] All examples function
134
+ - [ ] No console errors
135
+ - [ ] Guidelines are accurate
136
+ - [ ] AI uses components correctly
137
+
138
+ ### Step 2: Update Template Metadata
139
+
140
+ #### 2.1 Update Description (If Needed)
141
+
142
+ If you've added significant features:
143
+ 1. Prepare updated description
144
+ 2. Mention what's new
145
+ 3. Update component list if changed
146
+
147
+ **Example:**
148
+ ```
149
+ Start building with the Discourser Design System v2
150
+
151
+ This template includes:
152
+ • Material Design 3 components (NEW: Checkbox, Radio)
153
+ • Complete design system guidelines
154
+ • Enhanced examples with more patterns
155
+ • TypeScript + Vite configuration
156
+ • Responsive layouts and best practices
157
+
158
+ 🆕 New in this version:
159
+ - Added Checkbox and Radio components
160
+ - Improved form examples
161
+ - Updated to design system v0.2.0
162
+ ```
163
+
164
+ #### 2.2 Prepare Version Notes
165
+
166
+ Keep track of changes:
167
+ ```markdown
168
+ # Template Version History
169
+
170
+ ## v1.1 (2025-01-15)
171
+ - Updated @discourser/design-system to v0.2.0
172
+ - Added Checkbox and Radio component guidelines
173
+ - Improved form examples
174
+ - Fixed dialog example bug
175
+
176
+ ## v1.0 (2025-01-01)
177
+ - Initial release
178
+ - Button, Card, Dialog, IconButton, Input, Switch
179
+ - Complete guidelines
180
+ - Three example tabs
181
+ ```
182
+
183
+ ### Step 3: Publish Update
184
+
185
+ #### 3.1 Access Update Option
186
+
187
+ 1. Open the source Figma Make file
188
+ 2. Click **Share** (top-right)
189
+ 3. Below the Share modal, click **Update template**
190
+
191
+ **If you don't see "Update template":**
192
+ - Verify you're in the source file (not a copy)
193
+ - Check you have edit access
194
+ - Ensure template was previously published
195
+
196
+ #### 3.2 Follow Update Wizard
197
+
198
+ The process is similar to publishing:
199
+
200
+ **Step 1: Write a description**
201
+ - Review and update template name (if needed)
202
+ - Update description
203
+ - Keep same publication scope (Team/Organization)
204
+
205
+ **Step 2: Fine-tune the preview**
206
+ - Update thumbnail if needed
207
+ - Generate new snapshot if UI changed
208
+ - Preview how it looks
209
+
210
+ **Step 3: Add the final details**
211
+ - Update template guidelines if needed
212
+ - Review modification permissions
213
+ - Update instructions for users
214
+
215
+ **Click "Update"**
216
+
217
+ #### 3.3 Verify Update
218
+
219
+ 1. Go to Resources panel
220
+ 2. Find your template
221
+ 3. Create a new file from it
222
+ 4. Verify new features/fixes are present
223
+
224
+ ### Step 4: Communicate Update
225
+
226
+ #### 4.1 Announce to Team
227
+
228
+ **Example announcement:**
229
+ ```
230
+ 📢 Design System Template Updated (v1.1)
231
+
232
+ The Discourser Design System Template has been updated!
233
+
234
+ What's new:
235
+ • Updated to @discourser/design-system v0.2.0
236
+ • Added Checkbox and Radio component guidelines
237
+ • Improved form examples with more patterns
238
+ • Fixed dialog example bug
239
+
240
+ To use the update:
241
+ - Create a new file from the template in Resources
242
+ - Existing files are NOT affected
243
+
244
+ Questions? Let me know!
245
+ ```
246
+
247
+ #### 4.2 Update Documentation
248
+
249
+ If you maintain internal docs:
250
+ - Update template documentation
251
+ - Note version changes
252
+ - Explain migration if needed
253
+
254
+ #### 4.3 Provide Migration Guidance (If Needed)
255
+
256
+ For breaking changes:
257
+ ```markdown
258
+ # Migrating from v1.0 to v1.1
259
+
260
+ ## Breaking Changes
261
+ None - fully backward compatible
262
+
263
+ ## New Features
264
+ - Checkbox and Radio components now available
265
+ - Import: `import { Checkbox, Radio } from '@discourser/design-system'`
266
+
267
+ ## Updated Guidelines
268
+ - Check guidelines/components/checkbox.md
269
+ - Check guidelines/components/radio.md
270
+
271
+ ## Recommended Actions
272
+ - Review new examples in Form Examples tab
273
+ - Update forms to use Checkbox instead of custom implementations
274
+ ```
275
+
276
+ ## Version Management
277
+
278
+ ### Semantic Versioning for Templates
279
+
280
+ While templates don't have formal versions, you can track them:
281
+
282
+ **Naming Convention:**
283
+ - v1.0 - Initial release
284
+ - v1.1 - Minor updates (new examples, fixes)
285
+ - v2.0 - Major updates (breaking changes, redesign)
286
+
287
+ **In Description:**
288
+ ```
289
+ Discourser Design System Starter (v1.1)
290
+ ```
291
+
292
+ ### Tracking Changes
293
+
294
+ **Maintain a changelog:**
295
+ ```markdown
296
+ # Changelog
297
+
298
+ ## [1.2.0] - 2025-02-01
299
+ ### Added
300
+ - New DatePicker component
301
+ - Calendar component guidelines
302
+ - Date formatting examples
303
+
304
+ ### Changed
305
+ - Updated Button examples
306
+ - Improved Input validation examples
307
+
308
+ ### Fixed
309
+ - Dialog close button positioning
310
+ - Switch label alignment
311
+
312
+ ## [1.1.0] - 2025-01-15
313
+ ...
314
+ ```
315
+
316
+ ### When to Create New Template
317
+
318
+ Instead of updating, create a new template when:
319
+ - **Major redesign** - Completely different structure
320
+ - **Different purpose** - E.g., "Mobile Template" vs "Desktop Template"
321
+ - **Breaking changes** - Users need to choose between versions
322
+ - **Different tech stack** - E.g., different build tool
323
+
324
+ ## Handling User Feedback
325
+
326
+ ### Collecting Feedback
327
+
328
+ **Channels:**
329
+ - Slack/Discord channel for questions
330
+ - GitHub issues for bugs
331
+ - Regular check-ins with users
332
+ - Analytics (if available)
333
+
334
+ **Questions to ask:**
335
+ - What components do you use most?
336
+ - What examples were most helpful?
337
+ - What was confusing?
338
+ - What's missing?
339
+
340
+ ### Prioritizing Updates
341
+
342
+ **High Priority:**
343
+ - Fixes for broken functionality
344
+ - Corrections for wrong guidelines
345
+ - Security updates
346
+ - Frequently requested features
347
+
348
+ **Medium Priority:**
349
+ - Improved examples
350
+ - Better documentation
351
+ - Additional components
352
+
353
+ **Low Priority:**
354
+ - Nice-to-have examples
355
+ - Advanced use cases
356
+ - Cosmetic improvements
357
+
358
+ ### Implementing Feedback
359
+
360
+ 1. **Collect** feedback over time (1-2 weeks)
361
+ 2. **Group** similar requests
362
+ 3. **Prioritize** by impact and effort
363
+ 4. **Plan** update with selected items
364
+ 5. **Implement** and test
365
+ 6. **Release** update
366
+ 7. **Communicate** changes
367
+
368
+ ## Deprecation Strategy
369
+
370
+ When removing or changing features:
371
+
372
+ ### Announce Early
373
+
374
+ **Timeline:**
375
+ ```
376
+ Week 0: Announce upcoming deprecation
377
+ Week 2: Reminder about deprecation
378
+ Week 4: Release update with deprecation
379
+ Week 8: Remove deprecated feature
380
+ ```
381
+
382
+ ### Provide Migration Path
383
+
384
+ **Example:**
385
+ ```markdown
386
+ ## Deprecation Notice
387
+
388
+ The `OldButton` component will be removed in v2.0.
389
+
390
+ ### What to do:
391
+ 1. Replace `<OldButton>` with `<Button variant="filled">`
392
+ 2. Update prop names:
393
+ - `primary` → `variant="filled"`
394
+ - `secondary` → `variant="outlined"`
395
+
396
+ ### Timeline:
397
+ - v1.8 (now): OldButton still works, shows warning
398
+ - v2.0 (Feb 1): OldButton removed
399
+
400
+ ### Need help?
401
+ Ask in #design-system channel
402
+ ```
403
+
404
+ ### Support Both Temporarily
405
+
406
+ If possible, support old and new simultaneously during transition.
407
+
408
+ ## Common Maintenance Scenarios
409
+
410
+ ### Scenario 1: New Component Added
411
+
412
+ **Steps:**
413
+ 1. Update `package.json` to new version
414
+ 2. Add component guideline to `guidelines/components/`
415
+ 3. Update `overview-components.md` to list new component
416
+ 4. Add new component to examples
417
+ 5. Test thoroughly
418
+ 6. Publish update
419
+ 7. Announce new component
420
+
421
+ ### Scenario 2: Breaking Change in Package
422
+
423
+ **Steps:**
424
+ 1. Review breaking changes in package
425
+ 2. Update all affected examples
426
+ 3. Update guidelines with new API
427
+ 4. Add migration guide
428
+ 5. Test extensively
429
+ 6. Consider version bump (v1.x → v2.0)
430
+ 7. Announce with clear migration path
431
+
432
+ ### Scenario 3: Bug in Example Code
433
+
434
+ **Steps:**
435
+ 1. Verify bug exists
436
+ 2. Fix in source file
437
+ 3. Test fix works
438
+ 4. Publish update quickly
439
+ 5. Brief announcement about fix
440
+
441
+ ### Scenario 4: User Confusion About Guidelines
442
+
443
+ **Steps:**
444
+ 1. Identify confusing section
445
+ 2. Rewrite for clarity
446
+ 3. Add examples if needed
447
+ 4. Add DO/DON'T section
448
+ 5. Get feedback on new version
449
+ 6. Publish update
450
+
451
+ ## Best Practices
452
+
453
+ ### Update Frequency
454
+
455
+ **Recommended:**
456
+ - **Critical fixes:** Immediately (same day)
457
+ - **Minor updates:** Monthly or bi-monthly
458
+ - **Major updates:** Quarterly
459
+ - **Package updates:** When new design system version releases
460
+
461
+ ### Testing Before Release
462
+
463
+ Always test:
464
+ - [ ] Create new file from template
465
+ - [ ] Preview loads without errors
466
+ - [ ] All examples work
467
+ - [ ] AI generates correct code
468
+ - [ ] Guidelines are accurate
469
+ - [ ] No TypeScript errors
470
+
471
+ ### Communication
472
+
473
+ **Always communicate:**
474
+ - What changed
475
+ - Why it changed
476
+ - How to use new features
477
+ - Migration path if needed
478
+
479
+ ### Documentation
480
+
481
+ **Maintain:**
482
+ - Version history/changelog
483
+ - Known issues list
484
+ - Roadmap for future updates
485
+ - FAQ based on user questions
486
+
487
+ ## Unpublishing a Template
488
+
489
+ If you need to remove a template:
490
+
491
+ ### Steps
492
+
493
+ 1. Open source Figma Make file
494
+ 2. Click **Share** → **Update template**
495
+ 3. Click **Unpublish**
496
+ 4. Confirm unpublishing
497
+
498
+ ### Implications
499
+
500
+ - Template removed from Resources panel
501
+ - Users can't create new files from it
502
+ - **Existing files** created from template are unaffected
503
+ - You can republish later if needed
504
+
505
+ ### When to Unpublish
506
+
507
+ **Good reasons:**
508
+ - Template is outdated and shouldn't be used
509
+ - Replaced by better template
510
+ - Design system deprecated
511
+ - Major breaking changes coming
512
+
513
+ **Bad reasons:**
514
+ - Temporary issues (fix and update instead)
515
+ - One user had a problem
516
+ - Minor updates needed
517
+
518
+ ## Checkpoint
519
+
520
+ For maintaining your template effectively:
521
+
522
+ - [x] Understand update process
523
+ - [x] Know when to update vs. when to wait
524
+ - [x] Can publish template updates
525
+ - [x] Communicate changes to users
526
+ - [x] Maintain version history
527
+ - [x] Handle user feedback
528
+ - [x] Plan for deprecations
529
+
530
+ ## What's Next?
531
+
532
+ You now know how to maintain your template! Check the FAQ for answers to common questions.
533
+
534
+ **Next:** [FAQ](./08-faq.md) →
535
+
536
+ **Previous:** [Publishing Your Template](./06-publishing-template.md) ←