@the-bearded-bear/claude-craft 8.8.1 → 8.8.2
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/Dev/i18n/de/Angular/commands/check-compliance.md +218 -168
- package/Dev/i18n/de/Common/agents/refactoring-specialist.md +146 -69
- package/Dev/i18n/de/Common/commands/add-technology.md +166 -68
- package/Dev/i18n/de/Common/commands/setup-ci.md +216 -33
- package/Dev/i18n/de/Laravel/commands/check-compliance.md +223 -115
- package/Dev/i18n/de/Python/checklists/new-feature.md +319 -44
- package/Dev/i18n/de/React/rules/02-architecture.md +483 -322
- package/Dev/i18n/de/React/rules/03-coding-standards.md +584 -368
- package/Dev/i18n/de/Symfony/commands/check-compliance.md +186 -114
- package/Dev/i18n/de/Symfony/rules/07-testing-symfony.md +679 -10
- package/Dev/i18n/de/UIUX/commands/a11y-component.md +284 -26
- package/Dev/i18n/de/UIUX/commands/design-tokens.md +199 -35
- package/Dev/i18n/de/UIUX/commands/user-flow.md +179 -16
- package/Dev/i18n/de/VueJS/commands/check-compliance.md +227 -102
- package/Dev/i18n/es/Angular/commands/check-compliance.md +217 -167
- package/Dev/i18n/es/Common/commands/add-technology.md +158 -60
- package/Dev/i18n/es/Laravel/commands/check-compliance.md +223 -115
- package/Dev/i18n/es/React/commands/check-testing.md +263 -169
- package/Dev/i18n/es/ReactNative/commands/check-testing.md +256 -198
- package/Dev/i18n/es/Symfony/commands/check-compliance.md +189 -117
- package/Dev/i18n/es/Symfony/commands/check-testing.md +301 -102
- package/Dev/i18n/es/Symfony/commands/migration-plan.md +267 -34
- package/Dev/i18n/es/UIUX/commands/a11y-component.md +274 -16
- package/Dev/i18n/es/UIUX/commands/design-tokens.md +186 -22
- package/Dev/i18n/es/UIUX/commands/user-flow.md +173 -10
- package/Dev/i18n/es/VueJS/commands/check-compliance.md +227 -102
- package/Dev/i18n/fr/Angular/commands/check-compliance.md +217 -167
- package/Dev/i18n/fr/Common/commands/ralph-run.md +138 -60
- package/Dev/i18n/fr/Laravel/commands/check-compliance.md +223 -115
- package/Dev/i18n/fr/React/commands/check-architecture.md +370 -53
- package/Dev/i18n/fr/React/commands/check-code-quality.md +454 -64
- package/Dev/i18n/fr/React/commands/check-testing.md +476 -102
- package/Dev/i18n/fr/Symfony/commands/check-compliance.md +188 -116
- package/Dev/i18n/fr/VueJS/commands/check-compliance.md +227 -102
- package/Dev/i18n/pt/Angular/commands/check-compliance.md +225 -175
- package/Dev/i18n/pt/Common/agents/ralph-conductor.md +211 -30
- package/Dev/i18n/pt/Common/commands/add-technology.md +149 -51
- package/Dev/i18n/pt/Common/commands/ralph-run.md +239 -35
- package/Dev/i18n/pt/Flutter/commands/analyze-performance.md +331 -46
- package/Dev/i18n/pt/Flutter/commands/check-compliance.md +234 -29
- package/Dev/i18n/pt/Flutter/commands/generate-feature.md +526 -51
- package/Dev/i18n/pt/Flutter/commands/generate-widget.md +515 -27
- package/Dev/i18n/pt/Flutter/commands/golden-update.md +322 -46
- package/Dev/i18n/pt/Flutter/commands/localization-check.md +278 -37
- package/Dev/i18n/pt/Laravel/commands/check-compliance.md +212 -104
- package/Dev/i18n/pt/React/commands/accessibility-check.md +151 -42
- package/Dev/i18n/pt/React/commands/bundle-analyze.md +300 -25
- package/Dev/i18n/pt/React/commands/check-architecture.md +369 -34
- package/Dev/i18n/pt/React/commands/check-code-quality.md +440 -34
- package/Dev/i18n/pt/React/commands/check-compliance.md +232 -62
- package/Dev/i18n/pt/React/commands/check-security.md +370 -31
- package/Dev/i18n/pt/React/commands/check-testing.md +473 -43
- package/Dev/i18n/pt/React/commands/generate-component.md +454 -19
- package/Dev/i18n/pt/React/commands/generate-hook.md +425 -24
- package/Dev/i18n/pt/React/commands/storybook-story.md +520 -35
- package/Dev/i18n/pt/ReactNative/commands/app-size.md +358 -387
- package/Dev/i18n/pt/ReactNative/commands/check-code-quality.md +246 -75
- package/Dev/i18n/pt/ReactNative/commands/check-compliance.md +191 -85
- package/Dev/i18n/pt/ReactNative/commands/check-security.md +363 -115
- package/Dev/i18n/pt/ReactNative/commands/check-testing.md +269 -79
- package/Dev/i18n/pt/ReactNative/commands/generate-screen.md +491 -324
- package/Dev/i18n/pt/ReactNative/commands/native-module.md +539 -82
- package/Dev/i18n/pt/ReactNative/commands/store-prepare.md +429 -185
- package/Dev/i18n/pt/ReactNative/rules/02-architecture.md +1084 -31
- package/Dev/i18n/pt/Symfony/commands/check-compliance.md +195 -123
- package/Dev/i18n/pt/UIUX/commands/a11y-audit.md +208 -24
- package/Dev/i18n/pt/UIUX/commands/a11y-component.md +281 -23
- package/Dev/i18n/pt/UIUX/commands/design-tokens.md +197 -33
- package/Dev/i18n/pt/UIUX/commands/user-flow.md +183 -20
- package/Dev/i18n/pt/VueJS/commands/check-compliance.md +228 -103
- package/Dev/i18n/pt/Workflow/commands/analyze.md +147 -146
- package/Dev/i18n/pt/Workflow/commands/design.md +205 -204
- package/Dev/i18n/pt/Workflow/commands/implement.md +184 -184
- package/Project/i18n/de/Sprint/commands/dev.md +339 -86
- package/Project/i18n/es/Sprint/commands/dev.md +342 -91
- package/Project/i18n/pt/Sprint/commands/dev.md +343 -92
- package/bundles/cursor/.cursorrules +1 -1
- package/bundles/windsurf/.windsurfrules +1 -1
- package/package.json +1 -1
|
@@ -1,33 +1,33 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: Definição de Design Tokens
|
|
3
|
-
argument-hint: [
|
|
3
|
+
argument-hint: [argumentos]
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Definição de Design Tokens
|
|
7
7
|
|
|
8
|
-
Você é um
|
|
8
|
+
Você é um Designer de IU Líder. Você deve definir design tokens para um sistema de design coerente e de fácil manutenção.
|
|
9
9
|
|
|
10
10
|
## Argumentos
|
|
11
11
|
$ARGUMENTS
|
|
12
12
|
|
|
13
13
|
Argumentos:
|
|
14
14
|
- Tipo de tokens a definir: colors, typography, spacing, shadows, all
|
|
15
|
-
- (Opcional) Cor primária base: #HEXCODE
|
|
15
|
+
- (Opcional) Cor primária de base: #HEXCODE
|
|
16
16
|
- (Opcional) Modo: light, dark, both
|
|
17
17
|
|
|
18
18
|
Exemplo: `/uiux:design-tokens all #3B82F6 both`
|
|
19
19
|
|
|
20
|
-
## Modo
|
|
20
|
+
## Modo de Planejamento
|
|
21
21
|
|
|
22
|
-
> **O modo
|
|
22
|
+
> **O modo de planejamento é obrigatório.** Antes de executar, Claude ativa o modo de planejamento para analisar o código impactado, propor um plano de implementação e aguardar a sua validação antes de fazer qualquer alteração.
|
|
23
23
|
|
|
24
24
|
## MISSÃO
|
|
25
25
|
|
|
26
26
|
### Etapa 1: Analisar o contexto
|
|
27
27
|
|
|
28
|
-
- Stack
|
|
29
|
-
-
|
|
30
|
-
-
|
|
28
|
+
- Stack de front-end (React, Vue, Tailwind, CSS vars...)
|
|
29
|
+
- Sistema de design existente?
|
|
30
|
+
- Diretrizes de marca fornecidas?
|
|
31
31
|
|
|
32
32
|
### Etapa 2: Definir os tokens
|
|
33
33
|
|
|
@@ -46,36 +46,80 @@ Formato: CSS Custom Properties
|
|
|
46
46
|
|
|
47
47
|
### Paleta Semântica
|
|
48
48
|
|
|
49
|
-
####
|
|
50
|
-
| Token |
|
|
51
|
-
|
|
49
|
+
#### Primário (Ação principal)
|
|
50
|
+
| Token | Claro | Escuro | Uso |
|
|
51
|
+
|-------|-------|--------|-----|
|
|
52
52
|
| --color-primary-50 | #eff6ff | #1e3a5f | Fundo sutil |
|
|
53
|
+
| --color-primary-100 | #dbeafe | #1e40af | Fundo |
|
|
54
|
+
| --color-primary-200 | #bfdbfe | #1d4ed8 | Borda |
|
|
55
|
+
| --color-primary-300 | #93c5fd | #2563eb | Borda hover |
|
|
56
|
+
| --color-primary-400 | #60a5fa | #3b82f6 | Ícone |
|
|
53
57
|
| --color-primary-500 | #3b82f6 | #60a5fa | Texto |
|
|
54
58
|
| --color-primary-600 | #2563eb | #93c5fd | Texto hover |
|
|
59
|
+
| --color-primary-700 | #1d4ed8 | #bfdbfe | - |
|
|
60
|
+
| --color-primary-800 | #1e40af | #dbeafe | - |
|
|
61
|
+
| --color-primary-900 | #1e3a5f | #eff6ff | - |
|
|
62
|
+
|
|
63
|
+
#### Sucesso
|
|
64
|
+
| Token | Claro | Escuro |
|
|
65
|
+
|-------|-------|--------|
|
|
66
|
+
| --color-success-50 | #f0fdf4 | #14532d |
|
|
67
|
+
| --color-success-500 | #22c55e | #4ade80 |
|
|
68
|
+
| --color-success-700 | #15803d | #86efac |
|
|
55
69
|
|
|
56
|
-
####
|
|
57
|
-
|
|
70
|
+
#### Aviso
|
|
71
|
+
| Token | Claro | Escuro |
|
|
72
|
+
|-------|-------|--------|
|
|
73
|
+
| --color-warning-50 | #fffbeb | #78350f |
|
|
74
|
+
| --color-warning-500 | #f59e0b | #fbbf24 |
|
|
75
|
+
| --color-warning-700 | #b45309 | #fcd34d |
|
|
58
76
|
|
|
59
|
-
####
|
|
60
|
-
| Token |
|
|
61
|
-
|
|
77
|
+
#### Erro
|
|
78
|
+
| Token | Claro | Escuro |
|
|
79
|
+
|-------|-------|--------|
|
|
80
|
+
| --color-error-50 | #fef2f2 | #7f1d1d |
|
|
81
|
+
| --color-error-500 | #ef4444 | #f87171 |
|
|
82
|
+
| --color-error-700 | #b91c1c | #fca5a5 |
|
|
83
|
+
|
|
84
|
+
#### Neutro (Texto, Fundos)
|
|
85
|
+
| Token | Claro | Escuro | Uso |
|
|
86
|
+
|-------|-------|--------|-----|
|
|
62
87
|
| --color-neutral-0 | #ffffff | #0a0a0a | Fundo |
|
|
63
|
-
| --color-neutral-
|
|
88
|
+
| --color-neutral-50 | #fafafa | #171717 | Fundo sutil |
|
|
89
|
+
| --color-neutral-100 | #f5f5f5 | #262626 | Fundo atenuado |
|
|
90
|
+
| --color-neutral-200 | #e5e5e5 | #404040 | Borda |
|
|
91
|
+
| --color-neutral-300 | #d4d4d4 | #525252 | Borda hover |
|
|
92
|
+
| --color-neutral-400 | #a3a3a3 | #737373 | Placeholder |
|
|
93
|
+
| --color-neutral-500 | #737373 | #a3a3a3 | Texto atenuado |
|
|
94
|
+
| --color-neutral-600 | #525252 | #d4d4d4 | Texto secundário |
|
|
95
|
+
| --color-neutral-700 | #404040 | #e5e5e5 | Texto primário |
|
|
96
|
+
| --color-neutral-800 | #262626 | #f5f5f5 | Texto de ênfase |
|
|
64
97
|
| --color-neutral-900 | #171717 | #fafafa | Texto forte |
|
|
65
98
|
|
|
66
|
-
### Tokens Alias (Semânticos)
|
|
99
|
+
### Tokens de Alias (Semânticos)
|
|
67
100
|
```css
|
|
68
101
|
/* Fundos */
|
|
69
102
|
--color-bg-primary: var(--color-neutral-0);
|
|
70
103
|
--color-bg-secondary: var(--color-neutral-50);
|
|
104
|
+
--color-bg-tertiary: var(--color-neutral-100);
|
|
105
|
+
--color-bg-inverse: var(--color-neutral-900);
|
|
71
106
|
|
|
72
|
-
/*
|
|
107
|
+
/* Texto */
|
|
73
108
|
--color-text-primary: var(--color-neutral-900);
|
|
74
109
|
--color-text-secondary: var(--color-neutral-600);
|
|
110
|
+
--color-text-muted: var(--color-neutral-500);
|
|
111
|
+
--color-text-inverse: var(--color-neutral-0);
|
|
75
112
|
|
|
76
113
|
/* Bordas */
|
|
77
114
|
--color-border-default: var(--color-neutral-200);
|
|
115
|
+
--color-border-hover: var(--color-neutral-300);
|
|
78
116
|
--color-border-focus: var(--color-primary-500);
|
|
117
|
+
|
|
118
|
+
/* Estados */
|
|
119
|
+
--color-state-focus: var(--color-primary-500);
|
|
120
|
+
--color-state-error: var(--color-error-500);
|
|
121
|
+
--color-state-success: var(--color-success-500);
|
|
122
|
+
--color-state-warning: var(--color-warning-500);
|
|
79
123
|
```
|
|
80
124
|
|
|
81
125
|
──────────────────────────────────────────────────────────────
|
|
@@ -84,39 +128,159 @@ Formato: CSS Custom Properties
|
|
|
84
128
|
|
|
85
129
|
### Famílias
|
|
86
130
|
```css
|
|
87
|
-
--font-family-sans: 'Inter', system-ui, sans-serif;
|
|
88
|
-
--font-family-mono: 'JetBrains Mono', monospace;
|
|
131
|
+
--font-family-sans: 'Inter', system-ui, -apple-system, sans-serif;
|
|
132
|
+
--font-family-mono: 'JetBrains Mono', 'Fira Code', monospace;
|
|
89
133
|
```
|
|
90
134
|
|
|
91
135
|
### Tamanhos (base 16px)
|
|
92
|
-
| Token | Tamanho |
|
|
93
|
-
|
|
94
|
-
| --font-size-xs | 0.75rem | 1rem |
|
|
95
|
-
| --font-size-
|
|
96
|
-
| --font-size-
|
|
136
|
+
| Token | Tamanho | Altura da linha | Uso |
|
|
137
|
+
|-------|---------|-----------------|-----|
|
|
138
|
+
| --font-size-xs | 0.75rem (12px) | 1rem | Rótulos, badges |
|
|
139
|
+
| --font-size-sm | 0.875rem (14px) | 1.25rem | Corpo pequeno |
|
|
140
|
+
| --font-size-base | 1rem (16px) | 1.5rem | Corpo |
|
|
141
|
+
| --font-size-lg | 1.125rem (18px) | 1.75rem | Texto de destaque |
|
|
142
|
+
| --font-size-xl | 1.25rem (20px) | 1.75rem | H4 |
|
|
143
|
+
| --font-size-2xl | 1.5rem (24px) | 2rem | H3 |
|
|
144
|
+
| --font-size-3xl | 1.875rem (30px) | 2.25rem | H2 |
|
|
145
|
+
| --font-size-4xl | 2.25rem (36px) | 2.5rem | H1 |
|
|
146
|
+
| --font-size-5xl | 3rem (48px) | 1 | Display |
|
|
147
|
+
|
|
148
|
+
### Pesos
|
|
149
|
+
| Token | Valor | Uso |
|
|
150
|
+
|-------|-------|-----|
|
|
151
|
+
| --font-weight-normal | 400 | Corpo |
|
|
152
|
+
| --font-weight-medium | 500 | Rótulos, nav |
|
|
153
|
+
| --font-weight-semibold | 600 | Subtítulos |
|
|
154
|
+
| --font-weight-bold | 700 | Títulos |
|
|
155
|
+
|
|
156
|
+
### Alturas de Linha
|
|
157
|
+
```css
|
|
158
|
+
--line-height-none: 1;
|
|
159
|
+
--line-height-tight: 1.25;
|
|
160
|
+
--line-height-snug: 1.375;
|
|
161
|
+
--line-height-normal: 1.5;
|
|
162
|
+
--line-height-relaxed: 1.625;
|
|
163
|
+
--line-height-loose: 2;
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
### Espaçamento entre Letras
|
|
167
|
+
```css
|
|
168
|
+
--letter-spacing-tighter: -0.05em;
|
|
169
|
+
--letter-spacing-tight: -0.025em;
|
|
170
|
+
--letter-spacing-normal: 0;
|
|
171
|
+
--letter-spacing-wide: 0.025em;
|
|
172
|
+
--letter-spacing-wider: 0.05em;
|
|
173
|
+
```
|
|
97
174
|
|
|
98
175
|
──────────────────────────────────────────────────────────────
|
|
99
|
-
📐
|
|
176
|
+
📐 ESPAÇAMENTO
|
|
100
177
|
──────────────────────────────────────────────────────────────
|
|
101
178
|
|
|
102
179
|
### Escala (base 4px)
|
|
103
180
|
| Token | Valor | Pixels | Uso |
|
|
104
181
|
|-------|-------|--------|-----|
|
|
182
|
+
| --spacing-0 | 0 | 0px | - |
|
|
183
|
+
| --spacing-px | 1px | 1px | Bordas |
|
|
184
|
+
| --spacing-0.5 | 0.125rem | 2px | Compacto |
|
|
105
185
|
| --spacing-1 | 0.25rem | 4px | XS |
|
|
186
|
+
| --spacing-1.5 | 0.375rem | 6px | - |
|
|
187
|
+
| --spacing-2 | 0.5rem | 8px | S |
|
|
188
|
+
| --spacing-2.5 | 0.625rem | 10px | - |
|
|
189
|
+
| --spacing-3 | 0.75rem | 12px | - |
|
|
106
190
|
| --spacing-4 | 1rem | 16px | M (base) |
|
|
191
|
+
| --spacing-5 | 1.25rem | 20px | - |
|
|
192
|
+
| --spacing-6 | 1.5rem | 24px | L |
|
|
107
193
|
| --spacing-8 | 2rem | 32px | XL |
|
|
194
|
+
| --spacing-10 | 2.5rem | 40px | - |
|
|
195
|
+
| --spacing-12 | 3rem | 48px | 2XL |
|
|
196
|
+
| --spacing-16 | 4rem | 64px | 3XL |
|
|
197
|
+
| --spacing-20 | 5rem | 80px | - |
|
|
198
|
+
| --spacing-24 | 6rem | 96px | 4XL |
|
|
108
199
|
|
|
109
200
|
──────────────────────────────────────────────────────────────
|
|
110
|
-
🌗 SOMBRAS
|
|
201
|
+
🌗 SOMBRAS
|
|
111
202
|
──────────────────────────────────────────────────────────────
|
|
112
203
|
|
|
113
|
-
|
|
204
|
+
| Token | Valor | Uso |
|
|
205
|
+
|-------|-------|-----|
|
|
206
|
+
| --shadow-xs | 0 1px 2px 0 rgb(0 0 0 / 0.05) | Sutil |
|
|
207
|
+
| --shadow-sm | 0 1px 3px 0 rgb(0 0 0 / 0.1) | Cards |
|
|
208
|
+
| --shadow-md | 0 4px 6px -1px rgb(0 0 0 / 0.1) | Dropdowns |
|
|
209
|
+
| --shadow-lg | 0 10px 15px -3px rgb(0 0 0 / 0.1) | Modais |
|
|
210
|
+
| --shadow-xl | 0 20px 25px -5px rgb(0 0 0 / 0.1) | Diálogos |
|
|
211
|
+
| --shadow-2xl | 0 25px 50px -12px rgb(0 0 0 / 0.25) | Sobreposições |
|
|
212
|
+
| --shadow-inner | inset 0 2px 4px 0 rgb(0 0 0 / 0.05) | Campos |
|
|
213
|
+
| --shadow-none | none | Redefinir |
|
|
214
|
+
|
|
215
|
+
──────────────────────────────────────────────────────────────
|
|
216
|
+
⭕ RAIOS (Border Radius)
|
|
217
|
+
──────────────────────────────────────────────────────────────
|
|
218
|
+
|
|
219
|
+
| Token | Valor | Uso |
|
|
220
|
+
|-------|-------|-----|
|
|
221
|
+
| --radius-none | 0 | Arestas vivas |
|
|
222
|
+
| --radius-sm | 0.125rem (2px) | Sutil |
|
|
223
|
+
| --radius-md | 0.375rem (6px) | Botões, campos |
|
|
224
|
+
| --radius-lg | 0.5rem (8px) | Cards |
|
|
225
|
+
| --radius-xl | 0.75rem (12px) | Modais |
|
|
226
|
+
| --radius-2xl | 1rem (16px) | Cards grandes |
|
|
227
|
+
| --radius-full | 9999px | Pílulas, avatares |
|
|
228
|
+
|
|
229
|
+
──────────────────────────────────────────────────────────────
|
|
230
|
+
⏱️ TRANSIÇÕES
|
|
231
|
+
──────────────────────────────────────────────────────────────
|
|
232
|
+
|
|
233
|
+
### Durações
|
|
234
|
+
| Token | Valor | Uso |
|
|
235
|
+
|-------|-------|-----|
|
|
236
|
+
| --duration-75 | 75ms | Micro |
|
|
237
|
+
| --duration-100 | 100ms | Rápido |
|
|
238
|
+
| --duration-150 | 150ms | Padrão |
|
|
239
|
+
| --duration-200 | 200ms | Normal |
|
|
240
|
+
| --duration-300 | 300ms | Lento |
|
|
241
|
+
| --duration-500 | 500ms | Ênfase |
|
|
242
|
+
|
|
243
|
+
### Easings
|
|
244
|
+
```css
|
|
245
|
+
--ease-linear: linear;
|
|
246
|
+
--ease-in: cubic-bezier(0.4, 0, 1, 1);
|
|
247
|
+
--ease-out: cubic-bezier(0, 0, 0.2, 1);
|
|
248
|
+
--ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
|
|
249
|
+
--ease-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
### Transições Compostas
|
|
253
|
+
```css
|
|
254
|
+
--transition-none: none;
|
|
255
|
+
--transition-all: all 150ms ease-out;
|
|
256
|
+
--transition-colors: color, background-color, border-color 150ms ease-out;
|
|
257
|
+
--transition-opacity: opacity 150ms ease-out;
|
|
258
|
+
--transition-shadow: box-shadow 150ms ease-out;
|
|
259
|
+
--transition-transform: transform 150ms ease-out;
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
──────────────────────────────────────────────────────────────
|
|
263
|
+
📦 Z-INDEX
|
|
264
|
+
──────────────────────────────────────────────────────────────
|
|
114
265
|
|
|
266
|
+
| Token | Valor | Uso |
|
|
267
|
+
|-------|-------|-----|
|
|
268
|
+
| --z-0 | 0 | Base |
|
|
269
|
+
| --z-10 | 10 | Elevado |
|
|
270
|
+
| --z-20 | 20 | Dropdowns |
|
|
271
|
+
| --z-30 | 30 | Fixo ao rolar |
|
|
272
|
+
| --z-40 | 40 | Fixo |
|
|
273
|
+
| --z-50 | 50 | Fundo do modal |
|
|
274
|
+
| --z-60 | 60 | Modal |
|
|
275
|
+
| --z-70 | 70 | Popover |
|
|
276
|
+
| --z-80 | 80 | Toast |
|
|
277
|
+
| --z-90 | 90 | Tooltip |
|
|
278
|
+
| --z-max | 9999 | Máximo |
|
|
115
279
|
```
|
|
116
280
|
|
|
117
281
|
### Etapa 3: Exportar
|
|
118
282
|
|
|
119
|
-
Gerar arquivos:
|
|
120
|
-
- `tokens.css`
|
|
121
|
-
- `tokens.json`
|
|
122
|
-
- `tailwind.config.js`
|
|
283
|
+
Gerar os arquivos:
|
|
284
|
+
- `tokens.css` — CSS Custom Properties
|
|
285
|
+
- `tokens.json` — formato Style Dictionary
|
|
286
|
+
- `tailwind.config.js` — extensão do Tailwind (se aplicável)
|
|
@@ -1,32 +1,32 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: Design de Fluxo de Usuário
|
|
3
|
-
argument-hint: [
|
|
3
|
+
argument-hint: [argumentos]
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Design de Fluxo de Usuário
|
|
7
7
|
|
|
8
|
-
Você é um Especialista UX/Ergonomia. Você deve projetar um fluxo de usuário
|
|
8
|
+
Você é um Especialista em UX/Ergonomia. Você deve projetar um fluxo de usuário completo e otimizado.
|
|
9
9
|
|
|
10
10
|
## Argumentos
|
|
11
11
|
$ARGUMENTS
|
|
12
12
|
|
|
13
13
|
Argumentos:
|
|
14
14
|
- Nome do fluxo a projetar
|
|
15
|
-
- (Opcional) Persona
|
|
15
|
+
- (Opcional) Persona-alvo
|
|
16
16
|
- (Opcional) Restrições específicas
|
|
17
17
|
|
|
18
|
-
Exemplo: `/uiux:user-flow "
|
|
18
|
+
Exemplo: `/uiux:user-flow "Cadastro de usuário"` ou `/uiux:user-flow "Checkout" persona:"Usuário mobile" constraint:"< 30 segundos"`
|
|
19
19
|
|
|
20
|
-
## Modo
|
|
20
|
+
## Modo de Planejamento
|
|
21
21
|
|
|
22
|
-
> **O modo
|
|
22
|
+
> **O modo de planejamento é recomendado.** Claude ativa o modo de planejamento para estruturar a abordagem, identificar dependências e apresentar uma estratégia de geração antes de criar os artefatos.
|
|
23
23
|
|
|
24
24
|
## MISSÃO
|
|
25
25
|
|
|
26
26
|
### Etapa 1: Definir o contexto
|
|
27
27
|
|
|
28
28
|
- Objetivo do usuário
|
|
29
|
-
- Persona
|
|
29
|
+
- Persona-alvo
|
|
30
30
|
- Contexto de uso (dispositivo, ambiente)
|
|
31
31
|
- Restrições de negócio
|
|
32
32
|
|
|
@@ -48,8 +48,8 @@ Versão: 1.0
|
|
|
48
48
|
| Atributo | Valor |
|
|
49
49
|
|----------|-------|
|
|
50
50
|
| Nome | {persona} |
|
|
51
|
-
|
|
|
52
|
-
| Nível técnico | Iniciante / Intermediário /
|
|
51
|
+
| Função | {função} |
|
|
52
|
+
| Nível técnico | Iniciante / Intermediário / Avançado |
|
|
53
53
|
| Dispositivo principal | Mobile / Desktop / Ambos |
|
|
54
54
|
| Contexto | {ambiente de uso} |
|
|
55
55
|
|
|
@@ -57,38 +57,195 @@ Versão: 1.0
|
|
|
57
57
|
> "{O que o usuário quer realizar}"
|
|
58
58
|
|
|
59
59
|
### Objetivo de negócio
|
|
60
|
-
> "{O que
|
|
60
|
+
> "{O que a empresa quer alcançar}"
|
|
61
|
+
|
|
62
|
+
### Restrições
|
|
63
|
+
- Tempo máximo: {X segundos/minutos}
|
|
64
|
+
- Etapas máximas: {Y}
|
|
65
|
+
- Dispositivo: {restrições técnicas}
|
|
66
|
+
- Offline: Sim / Não
|
|
67
|
+
|
|
68
|
+
──────────────────────────────────────────────────────────────
|
|
69
|
+
🗺️ VISÃO GERAL
|
|
70
|
+
──────────────────────────────────────────────────────────────
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐
|
|
74
|
+
│Início│───▶│Etapa1│───▶│Etapa2│───▶│Etapa3│───▶│ Fim │
|
|
75
|
+
└──────┘ └──────┘ └──────┘ └──────┘ └──────┘
|
|
76
|
+
│ │
|
|
77
|
+
▼ ▼
|
|
78
|
+
┌────────┐ ┌────────┐
|
|
79
|
+
│Erro A │ │Erro B │
|
|
80
|
+
└────────┘ └────────┘
|
|
81
|
+
```
|
|
61
82
|
|
|
62
83
|
──────────────────────────────────────────────────────────────
|
|
63
84
|
📋 FLUXO DETALHADO
|
|
64
85
|
──────────────────────────────────────────────────────────────
|
|
65
86
|
|
|
66
87
|
### Etapa 0: Gatilho
|
|
88
|
+
|
|
67
89
|
**Ponto de entrada**: {Como o usuário chega}
|
|
90
|
+
- Via: {menu / link / CTA / deep link}
|
|
91
|
+
- Estado anterior: {autenticado / anônimo / dados existentes}
|
|
92
|
+
- Pré-condições: {o que deve ser verdadeiro}
|
|
93
|
+
|
|
94
|
+
---
|
|
68
95
|
|
|
69
96
|
### Etapa 1: {Nome da etapa}
|
|
97
|
+
|
|
70
98
|
**Tela**: {Nome da tela}
|
|
71
99
|
**Objetivo**: {O que o usuário deve fazer}
|
|
72
100
|
|
|
73
101
|
#### Ações disponíveis
|
|
74
|
-
| Ação | Elemento
|
|
75
|
-
|
|
76
|
-
|
|
|
102
|
+
| Ação | Elemento de IU | Resultado |
|
|
103
|
+
|------|----------------|-----------|
|
|
104
|
+
| Primária | {botão/link} | Avança para a etapa 2 |
|
|
105
|
+
| Secundária | {botão/link} | {alternativa} |
|
|
106
|
+
| Terciária | {link} | {outra opção} |
|
|
107
|
+
|
|
108
|
+
#### Dados necessários
|
|
109
|
+
| Campo | Tipo | Validação | Obrigatório |
|
|
110
|
+
|-------|------|-----------|-------------|
|
|
111
|
+
| {campo} | {tipo} | {regras} | Sim/Não |
|
|
77
112
|
|
|
78
113
|
#### Feedback do sistema
|
|
79
114
|
| Evento | Feedback | Tipo |
|
|
80
115
|
|--------|----------|------|
|
|
116
|
+
| Foco no campo | {feedback} | Visual |
|
|
81
117
|
| Erro de validação | {mensagem} | Inline |
|
|
118
|
+
| Sucesso | {feedback} | Toast/inline |
|
|
119
|
+
|
|
120
|
+
#### Pontos de atenção
|
|
121
|
+
- ⚠️ {possível ponto de atrito}
|
|
122
|
+
- 💡 {oportunidade de melhoria}
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
### Etapa 2: {Nome da etapa}
|
|
127
|
+
|
|
128
|
+
{Mesma estrutura...}
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
### Etapa N: Confirmação (Fim)
|
|
133
|
+
|
|
134
|
+
**Tela**: {Confirmação / Sucesso}
|
|
135
|
+
**Estado final**: {O que foi realizado}
|
|
136
|
+
|
|
137
|
+
#### Conteúdo
|
|
138
|
+
- Mensagem de sucesso
|
|
139
|
+
- Resumo da ação
|
|
140
|
+
- Próximos passos sugeridos
|
|
141
|
+
|
|
142
|
+
#### Próximas ações
|
|
143
|
+
| Ação | Destino |
|
|
144
|
+
|------|---------|
|
|
145
|
+
| CTA Primário | {próximo fluxo} |
|
|
146
|
+
| Voltar | {painel/lista} |
|
|
147
|
+
| Compartilhar | {se aplicável} |
|
|
82
148
|
|
|
83
149
|
──────────────────────────────────────────────────────────────
|
|
84
|
-
|
|
150
|
+
⚠️ CAMINHOS ALTERNATIVOS
|
|
85
151
|
──────────────────────────────────────────────────────────────
|
|
86
152
|
|
|
153
|
+
### Erro: {Tipo de erro}
|
|
154
|
+
|
|
155
|
+
**Gatilho**: {O que causa o erro}
|
|
156
|
+
**Tela**: {Inline / Modal / Página dedicada}
|
|
157
|
+
|
|
158
|
+
#### Mensagem de erro
|
|
159
|
+
```
|
|
160
|
+
Título: {Título claro}
|
|
161
|
+
Descrição: {Explicação do problema}
|
|
162
|
+
Ação: {Como resolver}
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
#### Opções do usuário
|
|
166
|
+
- Tentar novamente: {comportamento}
|
|
167
|
+
- Modificar: {retornar à etapa X}
|
|
168
|
+
- Abandonar: {estado salvo?}
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
### Abandono: Salvamento de estado
|
|
173
|
+
|
|
174
|
+
**Comportamento**:
|
|
175
|
+
- Rascunho salvo automaticamente
|
|
176
|
+
- Duração de retenção: {X dias}
|
|
177
|
+
- Notificação de lembrete: Sim / Não
|
|
178
|
+
|
|
179
|
+
---
|
|
180
|
+
|
|
181
|
+
### Caso extremo: {Descrição}
|
|
182
|
+
|
|
183
|
+
**Situação**: {Contexto particular}
|
|
184
|
+
**Comportamento**: {Adaptação do fluxo}
|
|
185
|
+
|
|
186
|
+
──────────────────────────────────────────────────────────────
|
|
187
|
+
📊 MÉTRICAS E KPIs
|
|
188
|
+
──────────────────────────────────────────────────────────────
|
|
189
|
+
|
|
190
|
+
### Objetivos quantitativos
|
|
191
|
+
|
|
87
192
|
| Métrica | Objetivo | Medição |
|
|
88
193
|
|---------|----------|---------|
|
|
89
194
|
| Tempo de conclusão | < {X} seg | Time-on-task |
|
|
90
|
-
| Taxa de conclusão | > {Y}% |
|
|
195
|
+
| Taxa de conclusão | > {Y}% | Funil analítico |
|
|
196
|
+
| Taxa de erro | < {Z}% | Error rate |
|
|
91
197
|
| Número de cliques | ≤ {N} | Click tracking |
|
|
198
|
+
| Pontuação de satisfação | > {S}/5 | Pesquisa pós-tarefa |
|
|
199
|
+
|
|
200
|
+
### Pontos de medição
|
|
201
|
+
|
|
202
|
+
| Etapa | Evento a rastrear |
|
|
203
|
+
|-------|-------------------|
|
|
204
|
+
| Entrada | `flow_started` |
|
|
205
|
+
| Etapa 1 | `step_1_completed` |
|
|
206
|
+
| Etapa 2 | `step_2_completed` |
|
|
207
|
+
| Sucesso | `flow_completed` |
|
|
208
|
+
| Abandono | `flow_abandoned` com `last_step` |
|
|
209
|
+
| Erro | `flow_error` com `error_type` |
|
|
210
|
+
|
|
211
|
+
──────────────────────────────────────────────────────────────
|
|
212
|
+
🧠 ERGONOMIA
|
|
213
|
+
──────────────────────────────────────────────────────────────
|
|
214
|
+
|
|
215
|
+
### Carga cognitiva
|
|
216
|
+
|
|
217
|
+
| Etapa | Complexidade | Justificativa |
|
|
218
|
+
|-------|-------------|---------------|
|
|
219
|
+
| 1 | Baixa | {1-2 ações simples} |
|
|
220
|
+
| 2 | Média | {formulário curto} |
|
|
221
|
+
| 3 | Baixa | {somente confirmação} |
|
|
222
|
+
|
|
223
|
+
### Princípios aplicados
|
|
224
|
+
|
|
225
|
+
| Princípio | Aplicação |
|
|
226
|
+
|-----------|-----------|
|
|
227
|
+
| Divulgação progressiva | {como} |
|
|
228
|
+
| Valores padrão | {quais} |
|
|
229
|
+
| Validação inline | {quando} |
|
|
230
|
+
| Salvamento automático | {frequência} |
|
|
231
|
+
|
|
232
|
+
──────────────────────────────────────────────────────────────
|
|
233
|
+
♿ ACESSIBILIDADE
|
|
234
|
+
──────────────────────────────────────────────────────────────
|
|
235
|
+
|
|
236
|
+
### Navegação por teclado
|
|
237
|
+
- Ordem de tabulação: {sequência lógica}
|
|
238
|
+
- Links de salto: {se formulário longo}
|
|
239
|
+
- Gestão do foco: {na mudança de etapa}
|
|
240
|
+
|
|
241
|
+
### Leitor de tela
|
|
242
|
+
- Anúncio de etapa: "Etapa X de Y"
|
|
243
|
+
- Erros: aria-live="assertive"
|
|
244
|
+
- Progresso: aria-describedby
|
|
245
|
+
|
|
246
|
+
### Tempo
|
|
247
|
+
- Sem limite de tempo automático
|
|
248
|
+
- Se houver atraso: extensível ou desativável
|
|
92
249
|
|
|
93
250
|
──────────────────────────────────────────────────────────────
|
|
94
251
|
✅ CHECKLIST DE VALIDAÇÃO
|
|
@@ -96,18 +253,24 @@ Versão: 1.0
|
|
|
96
253
|
|
|
97
254
|
### UX
|
|
98
255
|
- [ ] Objetivo do usuário claro
|
|
99
|
-
- [ ]
|
|
256
|
+
- [ ] Mínimo de etapas necessárias
|
|
100
257
|
- [ ] Feedback em cada ação
|
|
101
258
|
- [ ] Caminhos de erro documentados
|
|
259
|
+
- [ ] Abandono com salvamento
|
|
260
|
+
|
|
261
|
+
### Mensurabilidade
|
|
262
|
+
- [ ] KPIs definidos
|
|
263
|
+
- [ ] Eventos de rastreamento listados
|
|
264
|
+
- [ ] Objetivos quantificados
|
|
102
265
|
|
|
103
266
|
### Acessibilidade
|
|
104
267
|
- [ ] Navegação por teclado
|
|
105
|
-
- [ ] Anúncios
|
|
268
|
+
- [ ] Anúncios para leitor de tela
|
|
106
269
|
- [ ] Sem limites de tempo
|
|
107
270
|
```
|
|
108
271
|
|
|
109
272
|
### Etapa 3: Validação
|
|
110
273
|
|
|
111
|
-
- Revisão com
|
|
112
|
-
- Teste
|
|
113
|
-
- Iteração
|
|
274
|
+
- Revisão com as partes interessadas
|
|
275
|
+
- Teste com usuários (mínimo 5 usuários)
|
|
276
|
+
- Iteração com base no feedback
|