design-protocol 1.0.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.
- package/LICENSE +21 -0
- package/README.md +225 -0
- package/agents/dp-researcher.md +239 -0
- package/agents/dp-verifier.md +207 -0
- package/bin/install.js +464 -0
- package/commands/dp-back.md +221 -0
- package/commands/dp-discuss.md +257 -0
- package/commands/dp-execute.md +513 -0
- package/commands/dp-journey.md +85 -0
- package/commands/dp-progress.md +178 -0
- package/commands/dp-roadmap.md +83 -0
- package/commands/dp-skip.md +186 -0
- package/commands/dp-start.md +510 -0
- package/commands/dp-storytell.md +94 -0
- package/commands/dp-verify.md +207 -0
- package/package.json +59 -0
- package/skills/dp-color/SKILL.md +214 -0
- package/skills/dp-color/export_tokens.py +297 -0
- package/skills/dp-color/references/apca-contrast.md +87 -0
- package/skills/dp-color/references/hue-emotions.md +109 -0
- package/skills/dp-color/references/oklch-gamut.md +79 -0
- package/skills/dp-color/references/pitfalls.md +171 -0
- package/skills/dp-color/references/scale-patterns.md +206 -0
- package/skills/dp-color/references/tool-workflows.md +200 -0
- package/skills/dp-discovery/SKILL.md +480 -0
- package/skills/dp-eng_review/SKILL.md +471 -0
- package/skills/dp-eng_review/references/code-review-checklist.md +385 -0
- package/skills/dp-eng_review/references/react-patterns.md +512 -0
- package/skills/dp-eng_review/references/shadcn-patterns.md +510 -0
- package/skills/dp-eng_review/references/tailwind-conventions.md +351 -0
- package/skills/dp-journey/SKILL.md +682 -0
- package/skills/dp-journey/references/journey-types.md +97 -0
- package/skills/dp-journey/references/map-structures.md +177 -0
- package/skills/dp-journey/references/omnichannel-patterns.md +208 -0
- package/skills/dp-journey/references/research-methods.md +125 -0
- package/skills/dp-prd/SKILL.md +201 -0
- package/skills/dp-prd/references/claude-code-spec.md +107 -0
- package/skills/dp-prd/references/interview-questions.md +158 -0
- package/skills/dp-prd/references/section-templates.md +231 -0
- package/skills/dp-research/SKILL.md +540 -0
- package/skills/dp-research/references/facilitation-guide.md +291 -0
- package/skills/dp-research/references/interview-guide-template.md +190 -0
- package/skills/dp-research/references/method-selection.md +195 -0
- package/skills/dp-research/references/question-writing.md +244 -0
- package/skills/dp-research/references/research-report-template.md +363 -0
- package/skills/dp-research/references/synthesis-methods.md +289 -0
- package/skills/dp-research/references/usability-test-template.md +260 -0
- package/skills/dp-roadmap/SKILL.md +648 -0
- package/skills/dp-roadmap/references/prioritization-frameworks.md +312 -0
- package/skills/dp-roadmap/references/roadmap-structures.md +179 -0
- package/skills/dp-roadmap/references/roadmap-workshops.md +264 -0
- package/skills/dp-roadmap/references/theme-development.md +168 -0
- package/skills/dp-storytell/SKILL.md +645 -0
- package/skills/dp-storytell/references/audience-playbooks.md +260 -0
- package/skills/dp-storytell/references/content-type-templates.md +310 -0
- package/skills/dp-storytell/references/delivery-tactics.md +228 -0
- package/skills/dp-storytell/references/narrative-frameworks.md +259 -0
- package/skills/dp-ui/SKILL.md +503 -0
- package/skills/dp-ui/references/b2b-enterprise-patterns.md +319 -0
- package/skills/dp-ui/references/data-visualization.md +304 -0
- package/skills/dp-ui/references/visual-design-principles.md +237 -0
- package/skills/dp-ux/SKILL.md +414 -0
- package/skills/dp-ux/references/accessibility-checklist.md +128 -0
- package/skills/dp-ux/references/product-excellence.md +149 -0
- package/skills/dp-ux/references/usability-principles.md +140 -0
- package/skills/dp-ux/references/ux-patterns.md +221 -0
- package/templates/config.json +55 -0
- package/templates/context.md +96 -0
- package/templates/project.md +83 -0
- package/templates/requirements.md +137 -0
- package/templates/roadmap.md +168 -0
- package/templates/state.md +107 -0
|
@@ -0,0 +1,503 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: dp-ui
|
|
3
|
+
description: Apply visual design principles and B2B/enterprise UI patterns to create polished, professional interfaces. Trigger with "/dp:ui" or when designing dashboards, data-dense interfaces, complex tables, enterprise applications. Phase 3 of DP workflow.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# UI Design — Visual Principles & B2B Patterns
|
|
7
|
+
|
|
8
|
+
Create interfaces with the visual rigor of Stripe, the data density of Bloomberg, and the clarity of Linear — polished, professional, and built for power users.
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## DP Workflow Integration
|
|
13
|
+
|
|
14
|
+
This skill is Phase 3 of the DP (Design Protocol) workflow. It automatically detects and integrates with the workflow when present.
|
|
15
|
+
|
|
16
|
+
### Detecting Workflow Mode
|
|
17
|
+
|
|
18
|
+
At the start of any `/dp:ui` invocation:
|
|
19
|
+
|
|
20
|
+
1. **Check for `.design/config.json`**
|
|
21
|
+
2. **If found** (workflow mode):
|
|
22
|
+
- Load `.design/phases/DISCOVERY.md` for problem context
|
|
23
|
+
- Load `.design/phases/UX-DECISIONS.md` for interaction patterns
|
|
24
|
+
- Load `.design/REQUIREMENTS.md` for visual requirements
|
|
25
|
+
- Check for `03-CONTEXT.md` if `/dp:discuss` was run first
|
|
26
|
+
- Announce: "Loading context from discovery and UX phases..."
|
|
27
|
+
- Display: "Components to design: [list from UX-DECISIONS.md]"
|
|
28
|
+
3. **If not found** (standalone mode):
|
|
29
|
+
- Run with default behavior
|
|
30
|
+
- Ask: "What would you like me to help design visually?"
|
|
31
|
+
|
|
32
|
+
### Context Loading (Workflow Mode)
|
|
33
|
+
|
|
34
|
+
When workflow documents exist, extract and display:
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
DP WORKFLOW ACTIVE
|
|
38
|
+
────────────────────────────────────────────────────────────────────────────────
|
|
39
|
+
Project: [name]
|
|
40
|
+
Phase: 3 of 4 (UI)
|
|
41
|
+
Previous: Discovery complete, UX complete
|
|
42
|
+
|
|
43
|
+
From Discovery:
|
|
44
|
+
• Problem: [problem statement one-liner]
|
|
45
|
+
• User: [primary user role]
|
|
46
|
+
• Constraints: [relevant visual/brand constraints]
|
|
47
|
+
|
|
48
|
+
From UX Decisions:
|
|
49
|
+
• Components to specify visually:
|
|
50
|
+
- [Component 1] (9 states defined)
|
|
51
|
+
- [Component 2] (6 states defined)
|
|
52
|
+
- [Component 3] (4 states defined)
|
|
53
|
+
• Visual direction hints: [any from UX handoff]
|
|
54
|
+
• Accessibility requirements: [list]
|
|
55
|
+
|
|
56
|
+
Your Focus This Phase:
|
|
57
|
+
Apply visual design principles to create polished interface specifications.
|
|
58
|
+
────────────────────────────────────────────────────────────────────────────────
|
|
59
|
+
|
|
60
|
+
Ready to proceed? Or /dp:back to revisit UX decisions.
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
### Context Sources
|
|
64
|
+
|
|
65
|
+
| From Discovery | Used For |
|
|
66
|
+
|----------------|----------|
|
|
67
|
+
| Problem statement | Design context |
|
|
68
|
+
| Primary user | Audience consideration |
|
|
69
|
+
| Constraints | Technical/timeline boundaries |
|
|
70
|
+
| Brand guidelines | Visual constraints |
|
|
71
|
+
|
|
72
|
+
| From UX-DECISIONS | Used For |
|
|
73
|
+
|-------------------|----------|
|
|
74
|
+
| Component list | Design targets |
|
|
75
|
+
| State coverage needed | Required visual states |
|
|
76
|
+
| Accessibility constraints | A11y requirements |
|
|
77
|
+
| Visual direction hints | Style guidance |
|
|
78
|
+
| User flow | Layout context |
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## Workflow
|
|
83
|
+
|
|
84
|
+
1. **Combine with ux skill** — Always apply usability principles alongside visual design
|
|
85
|
+
2. **Apply visual fundamentals** — Check references/visual-design-principles.md for grids, hierarchy, Gestalt
|
|
86
|
+
3. **Use B2B patterns** — Check references/b2b-enterprise-patterns.md for dashboards, tables, complex workflows
|
|
87
|
+
4. **Data visualization** — Check references/data-visualization.md for charts, graphs, real-time data
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## Core Visual Principles
|
|
92
|
+
|
|
93
|
+
### Visual Hierarchy
|
|
94
|
+
Establish clear importance through:
|
|
95
|
+
- **Size** — Larger = more important
|
|
96
|
+
- **Weight** — Bolder = more important
|
|
97
|
+
- **Color** — Higher contrast/saturation = more important
|
|
98
|
+
- **Position** — Top-left (in LTR) scans first
|
|
99
|
+
- **Whitespace** — Isolated elements draw attention
|
|
100
|
+
|
|
101
|
+
### Grid Systems
|
|
102
|
+
- Use 8px base grid for all spacing (4px for fine adjustments)
|
|
103
|
+
- 12-column grids for complex layouts
|
|
104
|
+
- Consistent gutters (16px, 24px, or 32px)
|
|
105
|
+
- Align everything — if it looks slightly off, it is
|
|
106
|
+
|
|
107
|
+
### The Gestalt Principles
|
|
108
|
+
- **Proximity** — Group related items close together
|
|
109
|
+
- **Similarity** — Similar items appear related
|
|
110
|
+
- **Continuity** — Eyes follow lines and curves
|
|
111
|
+
- **Closure** — Mind completes incomplete shapes
|
|
112
|
+
- **Figure/Ground** — Clear separation of content and background
|
|
113
|
+
|
|
114
|
+
### Whitespace
|
|
115
|
+
- Whitespace is not empty — it's a design element
|
|
116
|
+
- More whitespace around important elements
|
|
117
|
+
- Consistent spacing creates rhythm
|
|
118
|
+
- Dense ≠ cluttered (see Bloomberg, Linear)
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## B2B Design Priorities
|
|
123
|
+
|
|
124
|
+
1. **Efficiency over delight** — Power users need speed, not whimsy
|
|
125
|
+
2. **Information density** — Show more, scroll less (when designed well)
|
|
126
|
+
3. **Keyboard shortcuts** — Essential for daily-use tools
|
|
127
|
+
4. **Customization** — Let users configure their workspace
|
|
128
|
+
5. **Bulk operations** — Multi-select, batch actions are expected
|
|
129
|
+
6. **Clear data hierarchy** — Most important metrics prominent
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
## Output Structure (Workflow Mode)
|
|
134
|
+
|
|
135
|
+
When in workflow mode, produce structured output:
|
|
136
|
+
|
|
137
|
+
### UI-SPEC.md Structure
|
|
138
|
+
|
|
139
|
+
```yaml
|
|
140
|
+
---
|
|
141
|
+
phase: ui
|
|
142
|
+
skill: ui
|
|
143
|
+
completed: YYYY-MM-DDTHH:MM:SSZ
|
|
144
|
+
context_loaded:
|
|
145
|
+
- DISCOVERY.md
|
|
146
|
+
- UX-DECISIONS.md
|
|
147
|
+
- 03-CONTEXT.md (if existed)
|
|
148
|
+
requirements_addressed:
|
|
149
|
+
- VIS-01
|
|
150
|
+
- VIS-02
|
|
151
|
+
components_specified:
|
|
152
|
+
- ComponentName1
|
|
153
|
+
- ComponentName2
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
# UI Specification: [Feature Name]
|
|
157
|
+
|
|
158
|
+
## Visual Direction
|
|
159
|
+
|
|
160
|
+
**Style:** [Modern minimal / Dense professional / Playful / etc.]
|
|
161
|
+
**Inspiration:** [Reference products or styles]
|
|
162
|
+
**Key Principles:**
|
|
163
|
+
1. [Principle 1]
|
|
164
|
+
2. [Principle 2]
|
|
165
|
+
3. [Principle 3]
|
|
166
|
+
|
|
167
|
+
## Layout & Grid
|
|
168
|
+
|
|
169
|
+
**Grid System:** 8px base grid
|
|
170
|
+
**Columns:** [12-column / 6-column / custom]
|
|
171
|
+
**Gutters:** [16px / 24px / 32px]
|
|
172
|
+
**Max Width:** [1280px / 1440px / fluid]
|
|
173
|
+
**Breakpoints:**
|
|
174
|
+
| Breakpoint | Width | Columns | Gutter |
|
|
175
|
+
|------------|-------|---------|--------|
|
|
176
|
+
| Mobile | <640px | 4 | 16px |
|
|
177
|
+
| Tablet | 640-1024px | 8 | 24px |
|
|
178
|
+
| Desktop | >1024px | 12 | 24px |
|
|
179
|
+
|
|
180
|
+
## Visual Hierarchy
|
|
181
|
+
|
|
182
|
+
**Primary Focus:** [What draws eye first]
|
|
183
|
+
**Secondary Elements:** [Supporting content]
|
|
184
|
+
**Tertiary/Background:** [Less prominent items]
|
|
185
|
+
|
|
186
|
+
**Z-Index Layers:**
|
|
187
|
+
| Layer | Z-Index | Contents |
|
|
188
|
+
|-------|---------|----------|
|
|
189
|
+
| Base | 0 | Main content |
|
|
190
|
+
| Elevated | 10 | Cards, dropdowns |
|
|
191
|
+
| Modal | 100 | Modals, dialogs |
|
|
192
|
+
| Toast | 200 | Notifications |
|
|
193
|
+
|
|
194
|
+
## Design Tokens
|
|
195
|
+
|
|
196
|
+
### Colors
|
|
197
|
+
|
|
198
|
+
**Brand/Primary:**
|
|
199
|
+
| Token | Value | Usage |
|
|
200
|
+
|-------|-------|-------|
|
|
201
|
+
| --primary | [hex] | Primary actions, links |
|
|
202
|
+
| --primary-hover | [hex] | Hover state |
|
|
203
|
+
| --primary-foreground | [hex] | Text on primary |
|
|
204
|
+
|
|
205
|
+
**Semantic:**
|
|
206
|
+
| Token | Value | Usage |
|
|
207
|
+
|-------|-------|-------|
|
|
208
|
+
| --success | [hex] | Success states |
|
|
209
|
+
| --error | [hex] | Error states |
|
|
210
|
+
| --warning | [hex] | Warning states |
|
|
211
|
+
| --info | [hex] | Info states |
|
|
212
|
+
|
|
213
|
+
**Neutrals:**
|
|
214
|
+
| Token | Value | Usage |
|
|
215
|
+
|-------|-------|-------|
|
|
216
|
+
| --background | [hex] | Page background |
|
|
217
|
+
| --foreground | [hex] | Primary text |
|
|
218
|
+
| --muted | [hex] | Secondary text |
|
|
219
|
+
| --border | [hex] | Borders |
|
|
220
|
+
|
|
221
|
+
### Typography
|
|
222
|
+
|
|
223
|
+
**Font Family:**
|
|
224
|
+
- Headings: [Font name]
|
|
225
|
+
- Body: [Font name]
|
|
226
|
+
- Mono: [Font name]
|
|
227
|
+
|
|
228
|
+
**Scale:**
|
|
229
|
+
| Token | Size | Line Height | Weight | Usage |
|
|
230
|
+
|-------|------|-------------|--------|-------|
|
|
231
|
+
| --text-xs | 12px | 16px | 400 | Captions |
|
|
232
|
+
| --text-sm | 14px | 20px | 400 | Secondary |
|
|
233
|
+
| --text-base | 16px | 24px | 400 | Body |
|
|
234
|
+
| --text-lg | 18px | 28px | 500 | Emphasis |
|
|
235
|
+
| --text-xl | 20px | 28px | 600 | Subheadings |
|
|
236
|
+
| --text-2xl | 24px | 32px | 700 | Headings |
|
|
237
|
+
| --text-3xl | 30px | 36px | 700 | Page titles |
|
|
238
|
+
|
|
239
|
+
### Spacing
|
|
240
|
+
|
|
241
|
+
**Scale (8px base):**
|
|
242
|
+
| Token | Value | Usage |
|
|
243
|
+
|-------|-------|-------|
|
|
244
|
+
| --space-1 | 4px | Tight spacing |
|
|
245
|
+
| --space-2 | 8px | Default small |
|
|
246
|
+
| --space-3 | 12px | Medium small |
|
|
247
|
+
| --space-4 | 16px | Default |
|
|
248
|
+
| --space-5 | 20px | Medium |
|
|
249
|
+
| --space-6 | 24px | Large |
|
|
250
|
+
| --space-8 | 32px | Section gap |
|
|
251
|
+
| --space-10 | 40px | Large section |
|
|
252
|
+
| --space-12 | 48px | Page section |
|
|
253
|
+
|
|
254
|
+
### Border Radius
|
|
255
|
+
|
|
256
|
+
| Token | Value | Usage |
|
|
257
|
+
|-------|-------|-------|
|
|
258
|
+
| --radius-sm | 4px | Small elements |
|
|
259
|
+
| --radius-md | 6px | Default |
|
|
260
|
+
| --radius-lg | 8px | Cards |
|
|
261
|
+
| --radius-xl | 12px | Modals |
|
|
262
|
+
| --radius-full | 9999px | Pills, avatars |
|
|
263
|
+
|
|
264
|
+
### Shadows
|
|
265
|
+
|
|
266
|
+
| Token | Value | Usage |
|
|
267
|
+
|-------|-------|-------|
|
|
268
|
+
| --shadow-sm | [box-shadow] | Subtle elevation |
|
|
269
|
+
| --shadow-md | [box-shadow] | Cards |
|
|
270
|
+
| --shadow-lg | [box-shadow] | Dropdowns |
|
|
271
|
+
| --shadow-xl | [box-shadow] | Modals |
|
|
272
|
+
|
|
273
|
+
## Component Visual Specifications
|
|
274
|
+
|
|
275
|
+
### [Component 1]: [Name]
|
|
276
|
+
|
|
277
|
+
**Dimensions:**
|
|
278
|
+
- Height: [value]
|
|
279
|
+
- Min Width: [value]
|
|
280
|
+
- Padding: [value]
|
|
281
|
+
|
|
282
|
+
**Visual States:**
|
|
283
|
+
| State | Background | Border | Text | Shadow | Other |
|
|
284
|
+
|-------|------------|--------|------|--------|-------|
|
|
285
|
+
| Default | [value] | [value] | [value] | [value] | |
|
|
286
|
+
| Hover | [value] | [value] | [value] | [value] | cursor: pointer |
|
|
287
|
+
| Focus | [value] | [value] | [value] | [value] | ring: 2px |
|
|
288
|
+
| Active | [value] | [value] | [value] | [value] | |
|
|
289
|
+
| Disabled | [value] | [value] | [value] | [value] | opacity: 0.5 |
|
|
290
|
+
| Loading | [value] | [value] | [value] | [value] | spinner |
|
|
291
|
+
| Error | [value] | [value] | [value] | [value] | |
|
|
292
|
+
| Success | [value] | [value] | [value] | [value] | |
|
|
293
|
+
|
|
294
|
+
**Tailwind Classes:**
|
|
295
|
+
```
|
|
296
|
+
Default: bg-background border border-border text-foreground rounded-md px-4 py-2
|
|
297
|
+
Hover: hover:bg-muted hover:border-primary
|
|
298
|
+
Focus: focus:outline-none focus:ring-2 focus:ring-primary focus:ring-offset-2
|
|
299
|
+
...
|
|
300
|
+
```
|
|
301
|
+
|
|
302
|
+
**Variants:**
|
|
303
|
+
| Variant | Modifications |
|
|
304
|
+
|---------|---------------|
|
|
305
|
+
| Primary | bg-primary text-primary-foreground |
|
|
306
|
+
| Secondary | bg-secondary text-secondary-foreground |
|
|
307
|
+
| Outline | bg-transparent border-2 |
|
|
308
|
+
| Ghost | bg-transparent hover:bg-muted |
|
|
309
|
+
|
|
310
|
+
### [Component 2]: [Name]
|
|
311
|
+
...
|
|
312
|
+
|
|
313
|
+
## Animation & Transitions
|
|
314
|
+
|
|
315
|
+
**Default Transition:**
|
|
316
|
+
- Duration: 150ms
|
|
317
|
+
- Easing: ease-out
|
|
318
|
+
- Properties: color, background-color, border-color, opacity, transform
|
|
319
|
+
|
|
320
|
+
**Specific Animations:**
|
|
321
|
+
| Element | Animation | Duration | Easing |
|
|
322
|
+
|---------|-----------|----------|--------|
|
|
323
|
+
| Modal enter | fade + scale | 200ms | ease-out |
|
|
324
|
+
| Modal exit | fade | 150ms | ease-in |
|
|
325
|
+
| Dropdown | slide-down | 150ms | ease-out |
|
|
326
|
+
| Toast | slide-in | 200ms | ease-out |
|
|
327
|
+
|
|
328
|
+
**Reduced Motion:**
|
|
329
|
+
- Respect `prefers-reduced-motion`
|
|
330
|
+
- Replace animations with instant changes
|
|
331
|
+
|
|
332
|
+
## Responsive Behavior
|
|
333
|
+
|
|
334
|
+
| Component | Mobile | Tablet | Desktop |
|
|
335
|
+
|-----------|--------|--------|---------|
|
|
336
|
+
| [Component 1] | [behavior] | [behavior] | [behavior] |
|
|
337
|
+
| [Component 2] | [behavior] | [behavior] | [behavior] |
|
|
338
|
+
|
|
339
|
+
## Requirements Coverage
|
|
340
|
+
|
|
341
|
+
| Requirement | Addressed By | Notes |
|
|
342
|
+
|-------------|--------------|-------|
|
|
343
|
+
| VIS-01: [text] | [Token/Component] | |
|
|
344
|
+
| VIS-02: [text] | [Token/Component] | |
|
|
345
|
+
| A11Y-03: Color independence | Semantic tokens | Icons + text for all states |
|
|
346
|
+
|
|
347
|
+
## Handoff Notes for Review Phase
|
|
348
|
+
|
|
349
|
+
- Implementation approach: [shadcn/ui components to use]
|
|
350
|
+
- Critical visual details: [list]
|
|
351
|
+
- Known compromises: [list]
|
|
352
|
+
- Testing priorities: [list]
|
|
353
|
+
```
|
|
354
|
+
|
|
355
|
+
---
|
|
356
|
+
|
|
357
|
+
## State Updates (Workflow Mode)
|
|
358
|
+
|
|
359
|
+
After completing UI specification:
|
|
360
|
+
|
|
361
|
+
1. **Write output to `.design/phases/UI-SPEC.md`**
|
|
362
|
+
|
|
363
|
+
2. **Update `.design/STATE.md`**:
|
|
364
|
+
```markdown
|
|
365
|
+
## Current Position
|
|
366
|
+
Phase: 3 of 4 (UI)
|
|
367
|
+
Status: completed
|
|
368
|
+
Progress: [███████░░░] 75%
|
|
369
|
+
|
|
370
|
+
### Last Activity
|
|
371
|
+
- **Date:** [TIMESTAMP]
|
|
372
|
+
- **Action:** Completed UI phase with /dp:ui
|
|
373
|
+
- **User:** [session user]
|
|
374
|
+
|
|
375
|
+
### Accumulated Context
|
|
376
|
+
...
|
|
377
|
+
#### Major Decisions Made
|
|
378
|
+
| Phase | Decision | Impact |
|
|
379
|
+
|-------|----------|--------|
|
|
380
|
+
| Discovery | [decision] | [impact] |
|
|
381
|
+
| UX | [decision] | [impact] |
|
|
382
|
+
| UI | [key visual decision 1] | [impact] |
|
|
383
|
+
| UI | [key visual decision 2] | [impact] |
|
|
384
|
+
```
|
|
385
|
+
|
|
386
|
+
3. **Update `.design/config.json`**:
|
|
387
|
+
```json
|
|
388
|
+
{
|
|
389
|
+
"workflow": {
|
|
390
|
+
"current_phase": 4,
|
|
391
|
+
"phases_completed": ["discovery", "ux", "ui"],
|
|
392
|
+
"workflow_status": "in_progress"
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
```
|
|
396
|
+
|
|
397
|
+
4. **Update `.design/REQUIREMENTS.md`** with addressed visual requirements
|
|
398
|
+
|
|
399
|
+
---
|
|
400
|
+
|
|
401
|
+
## Handoff (Workflow Mode)
|
|
402
|
+
|
|
403
|
+
```
|
|
404
|
+
═══════════════════════════════════════════════════════════════════════════════
|
|
405
|
+
UI SPECIFICATION COMPLETE
|
|
406
|
+
═══════════════════════════════════════════════════════════════════════════════
|
|
407
|
+
|
|
408
|
+
Output: .design/phases/UI-SPEC.md
|
|
409
|
+
|
|
410
|
+
Summary:
|
|
411
|
+
• Visual direction: [style]
|
|
412
|
+
• Grid system: 8px base, [N]-column layout
|
|
413
|
+
• Design tokens: [M] colors, [P] typography scales, [Q] spacing tokens
|
|
414
|
+
• Components specified: [list]
|
|
415
|
+
• All [N] UX states have visual specs
|
|
416
|
+
|
|
417
|
+
Progress: [███████░░░] 75%
|
|
418
|
+
|
|
419
|
+
Ready for Implementation & Review?
|
|
420
|
+
────────────────────────────────────────────────────────────────────────────────
|
|
421
|
+
→ /dp:eng_review to review implementation (recommended)
|
|
422
|
+
|
|
423
|
+
Or:
|
|
424
|
+
→ /dp:progress to review full status
|
|
425
|
+
→ /dp:back to revisit UX decisions
|
|
426
|
+
|
|
427
|
+
═══════════════════════════════════════════════════════════════════════════════
|
|
428
|
+
```
|
|
429
|
+
|
|
430
|
+
---
|
|
431
|
+
|
|
432
|
+
## Standalone Mode Behavior
|
|
433
|
+
|
|
434
|
+
When no `.design/` directory exists:
|
|
435
|
+
|
|
436
|
+
1. Output UI specifications inline (current behavior)
|
|
437
|
+
2. Ask standard handoff question:
|
|
438
|
+
> "Would you like me to run `/dp:eng_review` to review the implementation?"
|
|
439
|
+
3. Optionally offer: "Or start a full DP workflow with `/dp:start`?"
|
|
440
|
+
|
|
441
|
+
---
|
|
442
|
+
|
|
443
|
+
## Implementation Checklist
|
|
444
|
+
|
|
445
|
+
Before finalizing any UI:
|
|
446
|
+
|
|
447
|
+
- [ ] Does it follow an 8px grid?
|
|
448
|
+
- [ ] Is the visual hierarchy clear? (squint test)
|
|
449
|
+
- [ ] Are related items grouped? (proximity)
|
|
450
|
+
- [ ] Is spacing consistent throughout?
|
|
451
|
+
- [ ] Do colors convey meaning consistently?
|
|
452
|
+
- [ ] Is information density appropriate for the audience?
|
|
453
|
+
- [ ] Are primary actions visually dominant?
|
|
454
|
+
- [ ] Does it work at different viewport sizes?
|
|
455
|
+
|
|
456
|
+
---
|
|
457
|
+
|
|
458
|
+
## Reference Files
|
|
459
|
+
|
|
460
|
+
- **references/visual-design-principles.md** — Grids, hierarchy, Gestalt, typography, color theory
|
|
461
|
+
- **references/b2b-enterprise-patterns.md** — Dashboards, tables, filters, complex forms, workflows
|
|
462
|
+
- **references/data-visualization.md** — Charts, graphs, real-time data, maritime-specific displays
|
|
463
|
+
|
|
464
|
+
---
|
|
465
|
+
|
|
466
|
+
## Config Integration
|
|
467
|
+
|
|
468
|
+
Respects these settings from `.design/config.json`:
|
|
469
|
+
```json
|
|
470
|
+
{
|
|
471
|
+
"phases": {
|
|
472
|
+
"ui": {
|
|
473
|
+
"enabled": true,
|
|
474
|
+
"includeB2B": true,
|
|
475
|
+
"includeDataViz": false,
|
|
476
|
+
"gridSystem": "8px"
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
}
|
|
480
|
+
```
|
|
481
|
+
|
|
482
|
+
When `includeB2B: true`, automatically apply B2B/enterprise patterns.
|
|
483
|
+
When `includeDataViz: true`, include data visualization guidance.
|
|
484
|
+
|
|
485
|
+
---
|
|
486
|
+
|
|
487
|
+
## Workflow Navigation
|
|
488
|
+
|
|
489
|
+
```
|
|
490
|
+
┌─────────┐
|
|
491
|
+
/dp:start → /dp:discovery → /dp:ux → /dp:execute → │ YOU ARE │ → /dp:execute → /dp:eng_review → /dp:verify
|
|
492
|
+
Phase 1 Phase 2 (wireframe) │ HERE │ (polished) Phase 4
|
|
493
|
+
│ Phase 3 │
|
|
494
|
+
└─────────┘
|
|
495
|
+
```
|
|
496
|
+
|
|
497
|
+
| | |
|
|
498
|
+
|---|---|
|
|
499
|
+
| **Previous** | `/dp:execute` — Wireframe implementation |
|
|
500
|
+
| **Current** | `/dp:ui` — Visual design & tokens (Phase 3) |
|
|
501
|
+
| **Next** | `/dp:execute` — Generate polished implementation |
|
|
502
|
+
| **Related** | `/dp:discuss` — Capture context before this phase |
|
|
503
|
+
| | `/dp:back` — Return to UX if flows need changes |
|