@tinkcarlos/skillora 0.2.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/.claude/skills/.temp-skill-index.md +245 -0
- package/.claude/skills/SKILL.md +264 -0
- package/.claude/skills/api-scaffolding/SKILL.md +431 -0
- package/.claude/skills/api-scaffolding/agents/backend-architect.md +282 -0
- package/.claude/skills/api-scaffolding/agents/django-pro.md +144 -0
- package/.claude/skills/api-scaffolding/agents/fastapi-pro.md +156 -0
- package/.claude/skills/api-scaffolding/agents/graphql-architect.md +146 -0
- package/.claude/skills/api-scaffolding/skills/fastapi-templates/SKILL.md +171 -0
- package/.claude/skills/api-testing-observability/SKILL.md +583 -0
- package/.claude/skills/api-testing-observability/agents/api-documenter.md +146 -0
- package/.claude/skills/api-testing-observability/commands/api-mock.md +1320 -0
- package/.claude/skills/brainstorming/SKILL.md +283 -0
- package/.claude/skills/bug-fixing/SKILL.md +382 -0
- package/.claude/skills/bug-fixing/references/backend-guide.md +132 -0
- package/.claude/skills/bug-fixing/references/bug-guide.md +354 -0
- package/.claude/skills/bug-fixing/references/bug-record-template.md +134 -0
- package/.claude/skills/bug-fixing/references/bug-records.md +88 -0
- package/.claude/skills/bug-fixing/references/code-review-gate.md +81 -0
- package/.claude/skills/bug-fixing/references/common-bugs.md +140 -0
- package/.claude/skills/bug-fixing/references/complete-workflow.md +361 -0
- package/.claude/skills/bug-fixing/references/config-driven-fixes.md +136 -0
- package/.claude/skills/bug-fixing/references/context-isolation-protocol.md +268 -0
- package/.claude/skills/bug-fixing/references/cross-surface-regression.md +120 -0
- package/.claude/skills/bug-fixing/references/database-investigation.md +129 -0
- package/.claude/skills/bug-fixing/references/dependency-and-integrity-protocol.md +369 -0
- package/.claude/skills/bug-fixing/references/fix-completeness-checklist.md +239 -0
- package/.claude/skills/bug-fixing/references/frontend-guide.md +219 -0
- package/.claude/skills/bug-fixing/references/fullstack-joint-guide.md +123 -0
- package/.claude/skills/bug-fixing/references/functional-breakage.md +117 -0
- package/.claude/skills/bug-fixing/references/ide-lint-errors-guide.md +176 -0
- package/.claude/skills/bug-fixing/references/impact-analysis.md +511 -0
- package/.claude/skills/bug-fixing/references/investigation-checklist.md +263 -0
- package/.claude/skills/bug-fixing/references/knowledge-extraction-guide.md +531 -0
- package/.claude/skills/bug-fixing/references/knowledge-workflow.md +212 -0
- package/.claude/skills/bug-fixing/references/post-edit-quality-gate.md +30 -0
- package/.claude/skills/bug-fixing/references/python-env-and-testing.md +126 -0
- package/.claude/skills/bug-fixing/references/rca-guide.md +428 -0
- package/.claude/skills/bug-fixing/references/similar-bug-patterns.md +113 -0
- package/.claude/skills/bug-fixing/references/skill-delegation-guide.md +350 -0
- package/.claude/skills/bug-fixing/references/skill-orchestration.md +155 -0
- package/.claude/skills/bug-fixing/references/testing-strategy.md +350 -0
- package/.claude/skills/bug-fixing/references/tooling-build-scripts.md +162 -0
- package/.claude/skills/bug-fixing/references/user-input-validation.md +77 -0
- package/.claude/skills/bug-fixing/references/ux-patterns.md +158 -0
- package/.claude/skills/bug-fixing/references/windows-terminal-hygiene.md +106 -0
- package/.claude/skills/bug-fixing/references/zero-regression-matrix.md +239 -0
- package/.claude/skills/bug-fixing/references/zero-risk-protocol.md +102 -0
- package/.claude/skills/bug-fixing/scripts/format_code.py +611 -0
- package/.claude/skills/bug-fixing/scripts/generate_report_template.py +74 -0
- package/.claude/skills/bug-fixing/scripts/lint_check.py +816 -0
- package/.claude/skills/bug-fixing/scripts/requirements.txt +36 -0
- package/.claude/skills/cicd-pipeline/SKILL.md +300 -0
- package/.claude/skills/code-review/SKILL.md +535 -0
- package/.claude/skills/code-review/references/anti-pattern-scan.md +102 -0
- package/.claude/skills/code-review/references/automated-analysis.md +456 -0
- package/.claude/skills/code-review/references/backend-common-issues.md +589 -0
- package/.claude/skills/code-review/references/backend-expert-guide.md +415 -0
- package/.claude/skills/code-review/references/backend-review.md +868 -0
- package/.claude/skills/code-review/references/batch-processing-strategy.md +198 -0
- package/.claude/skills/code-review/references/call-chain-analysis-protocol.md +166 -0
- package/.claude/skills/code-review/references/common-patterns.md +321 -0
- package/.claude/skills/code-review/references/configuration-review.md +425 -0
- package/.claude/skills/code-review/references/control-flow-completeness.md +114 -0
- package/.claude/skills/code-review/references/database-review.md +298 -0
- package/.claude/skills/code-review/references/dependency-and-integrity-protocol.md +313 -0
- package/.claude/skills/code-review/references/external-standards.md +51 -0
- package/.claude/skills/code-review/references/feature-review.md +329 -0
- package/.claude/skills/code-review/references/file-review-template.md +326 -0
- package/.claude/skills/code-review/references/frontend-advanced.md +654 -0
- package/.claude/skills/code-review/references/frontend-common-issues.md +482 -0
- package/.claude/skills/code-review/references/frontend-expert-guide.md +342 -0
- package/.claude/skills/code-review/references/frontend-review.md +783 -0
- package/.claude/skills/code-review/references/fullstack-consistency.md +418 -0
- package/.claude/skills/code-review/references/fullstack-review.md +477 -0
- package/.claude/skills/code-review/references/functional-completeness.md +386 -0
- package/.claude/skills/code-review/references/hidden-bugs-detection.md +473 -0
- package/.claude/skills/code-review/references/ide-lint-errors-guide.md +173 -0
- package/.claude/skills/code-review/references/infrastructure-review.md +453 -0
- package/.claude/skills/code-review/references/iteration-review.md +264 -0
- package/.claude/skills/code-review/references/job-review.md +335 -0
- package/.claude/skills/code-review/references/layered-checklist-protocol.md +157 -0
- package/.claude/skills/code-review/references/logic-completeness.md +535 -0
- package/.claude/skills/code-review/references/mandatory-checklist.md +288 -0
- package/.claude/skills/code-review/references/multi-language-guide.md +800 -0
- package/.claude/skills/code-review/references/new-project-review.md +226 -0
- package/.claude/skills/code-review/references/non-code-files-review.md +451 -0
- package/.claude/skills/code-review/references/overlooked-issues.md +657 -0
- package/.claude/skills/code-review/references/platform-specific-review.md +195 -0
- package/.claude/skills/code-review/references/precision-analysis-protocol.md +260 -0
- package/.claude/skills/code-review/references/python-patterns.md +494 -0
- package/.claude/skills/code-review/references/rca-techniques.md +362 -0
- package/.claude/skills/code-review/references/report-template.md +430 -0
- package/.claude/skills/code-review/references/resource-limits-and-degradation.md +137 -0
- package/.claude/skills/code-review/references/review-dimensions.md +311 -0
- package/.claude/skills/code-review/references/review-guide.md +202 -0
- package/.claude/skills/code-review/references/review-knowledge-workflow.md +257 -0
- package/.claude/skills/code-review/references/review-progress-tracker-protocol.md +172 -0
- package/.claude/skills/code-review/references/review-record-template.md +195 -0
- package/.claude/skills/code-review/references/skill-orchestration.md +143 -0
- package/.claude/skills/code-review/references/ui-ux-review.md +470 -0
- package/.claude/skills/containerization/SKILL.md +313 -0
- package/.claude/skills/database-migrations/agents/database-admin.md +142 -0
- package/.claude/skills/database-migrations/agents/database-optimizer.md +144 -0
- package/.claude/skills/database-migrations/commands/migration-observability.md +408 -0
- package/.claude/skills/database-migrations/commands/sql-migrations.md +492 -0
- package/.claude/skills/finishing-a-development-branch/SKILL.md +319 -0
- package/.claude/skills/frontend-design/LICENSE.txt +177 -0
- package/.claude/skills/frontend-design/SKILL.md +587 -0
- package/.claude/skills/frontend-design/references/color-consistency.md +487 -0
- package/.claude/skills/frontend-design/references/color-palettes-full.md +657 -0
- package/.claude/skills/frontend-design/references/design-system-generator.md +285 -0
- package/.claude/skills/frontend-design/references/font-pairings-full.md +705 -0
- package/.claude/skills/frontend-design/references/industry-anti-patterns.md +281 -0
- package/.claude/skills/frontend-design/references/layout-anti-patterns.md +582 -0
- package/.claude/skills/frontend-design/references/motion-patterns.md +659 -0
- package/.claude/skills/frontend-design/references/pre-delivery-checklist.md +153 -0
- package/.claude/skills/frontend-design/references/responsive-design.md +555 -0
- package/.claude/skills/frontend-design/references/style-modification-rules.md +335 -0
- package/.claude/skills/frontend-design/references/ui-styles-full.md +383 -0
- package/.claude/skills/frontend-design/references/ui-styles-rating.md +191 -0
- package/.claude/skills/frontend-design/references/ux-guidelines.md +640 -0
- package/.claude/skills/fullstack-developer/SKILL.md +512 -0
- package/.claude/skills/fullstack-developer/references/api-contract-guide.md +312 -0
- package/.claude/skills/fullstack-developer/references/api-response-patterns.md +223 -0
- package/.claude/skills/fullstack-developer/references/async-patterns.md +220 -0
- package/.claude/skills/fullstack-developer/references/bug-prevention.md +914 -0
- package/.claude/skills/fullstack-developer/references/code-quality-checklist.md +271 -0
- package/.claude/skills/fullstack-developer/references/complete-development-workflow.md +278 -0
- package/.claude/skills/fullstack-developer/references/context-isolation-protocol.md +256 -0
- package/.claude/skills/fullstack-developer/references/database-migration.md +331 -0
- package/.claude/skills/fullstack-developer/references/dependency-and-integrity-protocol.md +390 -0
- package/.claude/skills/fullstack-developer/references/development-phases.md +333 -0
- package/.claude/skills/fullstack-developer/references/expert-guide.md +214 -0
- package/.claude/skills/fullstack-developer/references/file-import-patterns.md +114 -0
- package/.claude/skills/fullstack-developer/references/graceful-degradation-patterns.md +78 -0
- package/.claude/skills/fullstack-developer/references/ide-lint-errors-guide.md +183 -0
- package/.claude/skills/fullstack-developer/references/integration-testing.md +301 -0
- package/.claude/skills/fullstack-developer/references/mock-api-patterns.md +307 -0
- package/.claude/skills/fullstack-developer/references/phase-gate-template.md +249 -0
- package/.claude/skills/fullstack-developer/references/post-edit-quality-gate.md +30 -0
- package/.claude/skills/fullstack-developer/references/python-engineering.md +79 -0
- package/.claude/skills/fullstack-developer/references/skill-orchestration.md +214 -0
- package/.claude/skills/fullstack-developer/references/skill-router-table.md +304 -0
- package/.claude/skills/fullstack-developer/references/state-sync.md +217 -0
- package/.claude/skills/fullstack-developer/references/ui-testing-checklist.md +292 -0
- package/.claude/skills/fullstack-developer/scripts/format_code.py +611 -0
- package/.claude/skills/fullstack-developer/scripts/lint_check.py +816 -0
- package/.claude/skills/fullstack-developer/scripts/requirements.txt +36 -0
- package/.claude/skills/performance-optimization/SKILL.md +250 -0
- package/.claude/skills/product-requirements/SKILL.md +357 -0
- package/.claude/skills/product-requirements/references/acceptance-criteria.md +335 -0
- package/.claude/skills/product-requirements/references/answer-first-questioning-protocol.md +299 -0
- package/.claude/skills/product-requirements/references/competitive-analysis-guide.md +183 -0
- package/.claude/skills/product-requirements/references/document-accuracy-protocol.md +253 -0
- package/.claude/skills/product-requirements/references/document-management-protocol.md +278 -0
- package/.claude/skills/product-requirements/references/external-standards.md +62 -0
- package/.claude/skills/product-requirements/references/feature-spec-template.md +359 -0
- package/.claude/skills/product-requirements/references/knowledge-acquisition-protocol.md +251 -0
- package/.claude/skills/product-requirements/references/plan-execution-protocol.md +334 -0
- package/.claude/skills/product-requirements/references/plan-generation-protocol.md +264 -0
- package/.claude/skills/product-requirements/references/prioritization-frameworks.md +80 -0
- package/.claude/skills/product-requirements/references/requirement-decomposition-protocol.md +291 -0
- package/.claude/skills/product-requirements/references/user-story-examples.md +297 -0
- package/.claude/skills/product-requirements/references/workflow-templates.md +266 -0
- package/.claude/skills/react-best-practices/SKILL.md +198 -0
- package/.claude/skills/react-best-practices/references/advanced-patterns.md +94 -0
- package/.claude/skills/react-best-practices/references/bundle-optimization.md +182 -0
- package/.claude/skills/react-best-practices/references/client-data-fetching.md +112 -0
- package/.claude/skills/react-best-practices/references/complete-guide.md +2249 -0
- package/.claude/skills/react-best-practices/references/eliminating-waterfalls.md +169 -0
- package/.claude/skills/react-best-practices/references/javascript-performance.md +256 -0
- package/.claude/skills/react-best-practices/references/rendering-performance.md +230 -0
- package/.claude/skills/react-best-practices/references/rerender-optimization.md +214 -0
- package/.claude/skills/react-best-practices/references/server-performance.md +182 -0
- package/.claude/skills/security-audit/SKILL.md +226 -0
- package/.claude/skills/shared-references/advanced-debugging-techniques.md +186 -0
- package/.claude/skills/shared-references/code-quality-checklist.md +218 -0
- package/.claude/skills/shared-references/code-review-efficiency-guide.md +125 -0
- package/.claude/skills/shared-references/mcp-dependency-compatibility-protocol.md +276 -0
- package/.claude/skills/shared-references/skill-call-graph.md +230 -0
- package/.claude/skills/shared-references/skill-orchestration-protocol.md +281 -0
- package/.claude/skills/shared-references/subagent-dispatch-templates.md +199 -0
- package/.claude/skills/skill-expert-skills/LICENSE.txt +204 -0
- package/.claude/skills/skill-expert-skills/QUICK_NAVIGATION.md +374 -0
- package/.claude/skills/skill-expert-skills/SKILL.md +247 -0
- package/.claude/skills/skill-expert-skills/docs/_index.md +91 -0
- package/.claude/skills/skill-expert-skills/references/deep-research-methodology.md +389 -0
- package/.claude/skills/skill-expert-skills/references/docs-generation-workflow.md +398 -0
- package/.claude/skills/skill-expert-skills/references/domain-expertise-protocol.md +343 -0
- package/.claude/skills/skill-expert-skills/references/domain-knowledge/_index.md +54 -0
- package/.claude/skills/skill-expert-skills/references/domain-knowledge/backend-expertise.md +517 -0
- package/.claude/skills/skill-expert-skills/references/domain-knowledge/bug-fixing-expertise.md +363 -0
- package/.claude/skills/skill-expert-skills/references/domain-knowledge/code-review-expertise.md +392 -0
- package/.claude/skills/skill-expert-skills/references/domain-knowledge/frontend-expertise.md +410 -0
- package/.claude/skills/skill-expert-skills/references/domain-knowledge-template.md +503 -0
- package/.claude/skills/skill-expert-skills/references/examples.md +782 -0
- package/.claude/skills/skill-expert-skills/references/integration-examples.md +655 -0
- package/.claude/skills/skill-expert-skills/references/knowledge-validation-checklist.md +246 -0
- package/.claude/skills/skill-expert-skills/references/latest-knowledge-acquisition.md +461 -0
- package/.claude/skills/skill-expert-skills/references/mcp-tools-guide.md +439 -0
- package/.claude/skills/skill-expert-skills/references/official-best-practices.md +616 -0
- package/.claude/skills/skill-expert-skills/references/patterns.md +218 -0
- package/.claude/skills/skill-expert-skills/references/plugin-skills-guide.md +432 -0
- package/.claude/skills/skill-expert-skills/references/requirement-elicitation-protocol.md +290 -0
- package/.claude/skills/skill-expert-skills/references/skill-creator-SKILL.md +353 -0
- package/.claude/skills/skill-expert-skills/references/skill-templates.md +583 -0
- package/.claude/skills/skill-expert-skills/references/skills-knowledge-base.md +561 -0
- package/.claude/skills/skill-expert-skills/references/tools-guide.md +379 -0
- package/.claude/skills/skill-expert-skills/references/troubleshooting.md +378 -0
- package/.claude/skills/skill-expert-skills/references/universality-guide.md +205 -0
- package/.claude/skills/skill-expert-skills/references/writing-style-guide.md +466 -0
- package/.claude/skills/skill-expert-skills/scripts/__pycache__/quick_validate.cpython-313.pyc +0 -0
- package/.claude/skills/skill-expert-skills/scripts/__pycache__/universal_validate.cpython-313.pyc +0 -0
- package/.claude/skills/skill-expert-skills/scripts/analyze_trigger.py +425 -0
- package/.claude/skills/skill-expert-skills/scripts/diff_with_official.py +188 -0
- package/.claude/skills/skill-expert-skills/scripts/init_skill.py +349 -0
- package/.claude/skills/skill-expert-skills/scripts/package_skill.py +156 -0
- package/.claude/skills/skill-expert-skills/scripts/quick_validate.py +493 -0
- package/.claude/skills/skill-expert-skills/scripts/requirements.txt +2 -0
- package/.claude/skills/skill-expert-skills/scripts/universal_validate.py +182 -0
- package/.claude/skills/skill-expert-skills/scripts/upgrade_skill.py +431 -0
- package/.claude/skills/subagent-driven-development/SKILL.md +268 -0
- package/.claude/skills/test-driven-development/SKILL.md +246 -0
- package/.claude/skills/test-driven-development/references/testing-anti-patterns.md +192 -0
- package/.claude/skills/using-git-worktrees/SKILL.md +266 -0
- package/.claude/skills/using-skillstack/SKILL.md +127 -0
- package/.claude/skills/vercel-deploy/SKILL.md +166 -0
- package/.claude/skills/vercel-deploy/scripts/deploy.sh +249 -0
- package/.claude/skills/verification-before-completion/SKILL.md +305 -0
- package/.claude/skills/writing-plans/SKILL.md +259 -0
- package/README.md +69 -0
- package/bin/cli.js +468 -0
- package/lib/init.js +333 -0
- package/package.json +29 -0
|
@@ -0,0 +1,640 @@
|
|
|
1
|
+
# UX Guidelines Reference
|
|
2
|
+
|
|
3
|
+
98 essential UX best practices, anti-patterns, and accessibility rules.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Navigation & Structure (15 guidelines)
|
|
8
|
+
|
|
9
|
+
### 1. Primary Navigation
|
|
10
|
+
- Maximum 7±2 items in main navigation
|
|
11
|
+
- Use clear, action-oriented labels
|
|
12
|
+
- Highlight current page/section
|
|
13
|
+
- Mobile: Use hamburger menu with clear open/close states
|
|
14
|
+
|
|
15
|
+
### 2. Breadcrumbs
|
|
16
|
+
- Show on all pages beyond homepage (>2 levels deep)
|
|
17
|
+
- Use ">" or "/" as separator
|
|
18
|
+
- Make all items except current clickable
|
|
19
|
+
- Current item should not be a link
|
|
20
|
+
|
|
21
|
+
### 3. Footer Navigation
|
|
22
|
+
- Include sitemap-style links for SEO
|
|
23
|
+
- Group by category (Company, Product, Resources, Legal)
|
|
24
|
+
- Include contact info and social links
|
|
25
|
+
- Repeat key CTAs
|
|
26
|
+
|
|
27
|
+
### 4. Search
|
|
28
|
+
- Place in consistent location (top right common)
|
|
29
|
+
- Show clear search icon (magnifying glass)
|
|
30
|
+
- Provide autocomplete suggestions
|
|
31
|
+
- Show "No results" with helpful alternatives
|
|
32
|
+
|
|
33
|
+
### 5. Back Navigation
|
|
34
|
+
- Always provide clear back/return path
|
|
35
|
+
- Preserve scroll position when returning
|
|
36
|
+
- Use browser back button correctly
|
|
37
|
+
- In modals: clear close button
|
|
38
|
+
|
|
39
|
+
### 6. Page Structure
|
|
40
|
+
- Use semantic HTML (header, nav, main, aside, footer)
|
|
41
|
+
- Implement skip-to-content link
|
|
42
|
+
- Logical heading hierarchy (H1 → H2 → H3)
|
|
43
|
+
- One H1 per page
|
|
44
|
+
|
|
45
|
+
### 7. Loading States
|
|
46
|
+
- Show skeleton screens instead of spinners
|
|
47
|
+
- Indicate progress for long operations
|
|
48
|
+
- Preserve layout during loading
|
|
49
|
+
- Show partial content when available
|
|
50
|
+
|
|
51
|
+
### 8. Empty States
|
|
52
|
+
- Explain what belongs in empty area
|
|
53
|
+
- Provide clear action to populate
|
|
54
|
+
- Use friendly illustrations (optional)
|
|
55
|
+
- Never show truly blank screens
|
|
56
|
+
|
|
57
|
+
### 9. Error Pages (404/500)
|
|
58
|
+
- Maintain site branding and navigation
|
|
59
|
+
- Explain what happened in plain language
|
|
60
|
+
- Provide clear next steps (home, search, contact)
|
|
61
|
+
- Log errors for monitoring
|
|
62
|
+
|
|
63
|
+
### 10. Pagination vs Infinite Scroll
|
|
64
|
+
- **Pagination**: Better for goal-oriented browsing, SEO
|
|
65
|
+
- **Infinite Scroll**: Better for discovery, social feeds
|
|
66
|
+
- Always show load progress
|
|
67
|
+
- Provide "Back to top" button
|
|
68
|
+
|
|
69
|
+
### 11. Tabs vs Accordion
|
|
70
|
+
- **Tabs**: For parallel content comparison, desktop
|
|
71
|
+
- **Accordion**: For sequential content, FAQ, mobile
|
|
72
|
+
- Show one item open by default
|
|
73
|
+
- Allow opening multiple accordion items
|
|
74
|
+
|
|
75
|
+
### 12. Modal Usage
|
|
76
|
+
- Use sparingly for critical actions
|
|
77
|
+
- Close on overlay click and Escape key
|
|
78
|
+
- Trap focus inside modal
|
|
79
|
+
- Return focus on close
|
|
80
|
+
|
|
81
|
+
### 13. Sidebar Navigation
|
|
82
|
+
- Collapsible for desktop flexibility
|
|
83
|
+
- Highlight active section
|
|
84
|
+
- Group related items
|
|
85
|
+
- Show icons for quick scanning
|
|
86
|
+
|
|
87
|
+
### 14. Progressive Disclosure
|
|
88
|
+
- Show only necessary info initially
|
|
89
|
+
- Use "Show more" or expanding sections
|
|
90
|
+
- Don't hide critical information
|
|
91
|
+
- Reduce cognitive load
|
|
92
|
+
|
|
93
|
+
### 15. Content Hierarchy
|
|
94
|
+
- Most important content above fold
|
|
95
|
+
- Use F-pattern or Z-pattern layouts
|
|
96
|
+
- Break up long content with headings
|
|
97
|
+
- Use whitespace to group related items
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
## Forms & Input (20 guidelines)
|
|
102
|
+
|
|
103
|
+
### 16. Form Layout
|
|
104
|
+
- One column forms perform best
|
|
105
|
+
- Group related fields with fieldsets
|
|
106
|
+
- Left-align labels (or top-align on mobile)
|
|
107
|
+
- 8-16px spacing between fields
|
|
108
|
+
|
|
109
|
+
### 17. Label Placement
|
|
110
|
+
- **Top-aligned**: Fastest completion, best for mobile
|
|
111
|
+
- **Left-aligned**: Better scanability, longer forms
|
|
112
|
+
- **Inline/Placeholder**: Avoid (disappears on focus)
|
|
113
|
+
|
|
114
|
+
### 18. Required Fields
|
|
115
|
+
- Mark required fields clearly (asterisk + "required")
|
|
116
|
+
- Or mark optional fields instead
|
|
117
|
+
- Don't make everything required
|
|
118
|
+
- Explain requirements upfront
|
|
119
|
+
|
|
120
|
+
### 19. Input Field Sizing
|
|
121
|
+
- Match input width to expected content
|
|
122
|
+
- Phone: ~150px, Email: ~250px, Text: ~400px
|
|
123
|
+
- Full width on mobile
|
|
124
|
+
- Consistent heights within form
|
|
125
|
+
|
|
126
|
+
### 20. Placeholder Text
|
|
127
|
+
- Use for format hints, not labels
|
|
128
|
+
- Gray color to distinguish from entered text
|
|
129
|
+
- Disappears on focus (never sole label)
|
|
130
|
+
- Example: "e.g., john@example.com"
|
|
131
|
+
|
|
132
|
+
### 21. Input Validation
|
|
133
|
+
- Validate on blur, not on every keystroke
|
|
134
|
+
- Show errors inline next to field
|
|
135
|
+
- Use red for errors, green for success
|
|
136
|
+
- Explain how to fix the error
|
|
137
|
+
|
|
138
|
+
### 22. Error Messages
|
|
139
|
+
- Be specific: "Password must be 8+ characters"
|
|
140
|
+
- Not generic: "Invalid input"
|
|
141
|
+
- Place below/beside the field
|
|
142
|
+
- Don't clear the field on error
|
|
143
|
+
|
|
144
|
+
### 23. Success States
|
|
145
|
+
- Confirm successful submission clearly
|
|
146
|
+
- Show checkmark or success message
|
|
147
|
+
- Provide next steps
|
|
148
|
+
- Don't leave user wondering "did it work?"
|
|
149
|
+
|
|
150
|
+
### 24. Password Fields
|
|
151
|
+
- Show/hide password toggle
|
|
152
|
+
- Display strength meter
|
|
153
|
+
- Show requirements upfront
|
|
154
|
+
- Allow paste in password fields
|
|
155
|
+
|
|
156
|
+
### 25. Select vs Radio
|
|
157
|
+
- **Radio**: 2-5 options, all visible
|
|
158
|
+
- **Select**: 5+ options, space constrained
|
|
159
|
+
- Never mix in same form
|
|
160
|
+
- Custom selects: maintain accessibility
|
|
161
|
+
|
|
162
|
+
### 26. Checkbox vs Toggle
|
|
163
|
+
- **Checkbox**: Multiple selections, forms
|
|
164
|
+
- **Toggle**: Binary on/off, instant effect
|
|
165
|
+
- Checkbox needs submit button
|
|
166
|
+
- Toggle takes effect immediately
|
|
167
|
+
|
|
168
|
+
### 27. Date Input
|
|
169
|
+
- Use native date picker when possible
|
|
170
|
+
- Allow manual entry in common formats
|
|
171
|
+
- Show expected format
|
|
172
|
+
- Consider date range presets
|
|
173
|
+
|
|
174
|
+
### 28. File Upload
|
|
175
|
+
- Show accepted formats and size limits
|
|
176
|
+
- Drag and drop support
|
|
177
|
+
- Progress indicator for large files
|
|
178
|
+
- Preview uploaded files
|
|
179
|
+
|
|
180
|
+
### 29. Multi-step Forms
|
|
181
|
+
- Show progress indicator
|
|
182
|
+
- Allow back navigation
|
|
183
|
+
- Save progress between steps
|
|
184
|
+
- Summarize before final submit
|
|
185
|
+
|
|
186
|
+
### 30. Autofill & Autocomplete
|
|
187
|
+
- Use correct input types for autofill
|
|
188
|
+
- name="email", autocomplete="email"
|
|
189
|
+
- Don't disable browser autofill
|
|
190
|
+
- Provide smart suggestions
|
|
191
|
+
|
|
192
|
+
### 31. Form Submit Button
|
|
193
|
+
- Clear label: "Create Account" not "Submit"
|
|
194
|
+
- Disable during submission
|
|
195
|
+
- Show loading state
|
|
196
|
+
- Single primary action button
|
|
197
|
+
|
|
198
|
+
### 32. Inline Editing
|
|
199
|
+
- Clear edit mode indication
|
|
200
|
+
- Save on blur or explicit save button
|
|
201
|
+
- Cancel option to revert
|
|
202
|
+
- Show what's being edited
|
|
203
|
+
|
|
204
|
+
### 33. Search/Filter Forms
|
|
205
|
+
- Apply filters immediately (no submit)
|
|
206
|
+
- Show active filter count
|
|
207
|
+
- Clear all filters option
|
|
208
|
+
- Persist filters in URL
|
|
209
|
+
|
|
210
|
+
### 34. Form Accessibility
|
|
211
|
+
- All inputs need visible labels
|
|
212
|
+
- Error messages linked to fields
|
|
213
|
+
- Tab order logical
|
|
214
|
+
- Screen reader tested
|
|
215
|
+
|
|
216
|
+
### 35. Mobile Form Optimization
|
|
217
|
+
- Appropriate keyboard types (email, number, tel)
|
|
218
|
+
- Large touch targets (44x44px minimum)
|
|
219
|
+
- Minimize typing required
|
|
220
|
+
- Use device capabilities (camera, location)
|
|
221
|
+
|
|
222
|
+
---
|
|
223
|
+
|
|
224
|
+
## Buttons & CTAs (15 guidelines)
|
|
225
|
+
|
|
226
|
+
### 36. Button Hierarchy
|
|
227
|
+
- **Primary**: Main action, one per view
|
|
228
|
+
- **Secondary**: Supporting actions
|
|
229
|
+
- **Tertiary/Ghost**: Cancel, back, less important
|
|
230
|
+
|
|
231
|
+
### 37. Button States
|
|
232
|
+
- Default, Hover, Active, Focus, Disabled
|
|
233
|
+
- Visible focus ring for accessibility
|
|
234
|
+
- Disabled: reduced opacity + cursor: not-allowed
|
|
235
|
+
- Loading state for async actions
|
|
236
|
+
|
|
237
|
+
### 38. Button Labels
|
|
238
|
+
- Use action verbs: "Download", "Save", "Delete"
|
|
239
|
+
- Avoid vague: "Click Here", "Submit"
|
|
240
|
+
- Include context: "Add to Cart", "Start Free Trial"
|
|
241
|
+
- Consistent terminology throughout
|
|
242
|
+
|
|
243
|
+
### 39. Button Size
|
|
244
|
+
- Minimum touch target: 44x44px
|
|
245
|
+
- Desktop: 36-48px height typical
|
|
246
|
+
- Consistent padding: 12-24px horizontal
|
|
247
|
+
- Full width on mobile for primary actions
|
|
248
|
+
|
|
249
|
+
### 40. Icon Buttons
|
|
250
|
+
- Always include tooltip/label
|
|
251
|
+
- aria-label for accessibility
|
|
252
|
+
- Standard icons for common actions
|
|
253
|
+
- Text label when space allows
|
|
254
|
+
|
|
255
|
+
### 41. Destructive Actions
|
|
256
|
+
- Red color for delete/remove
|
|
257
|
+
- Confirmation dialog required
|
|
258
|
+
- Option to undo when possible
|
|
259
|
+
- Clear warning message
|
|
260
|
+
|
|
261
|
+
### 42. Call-to-Action (CTA)
|
|
262
|
+
- One primary CTA per section
|
|
263
|
+
- High contrast, prominent placement
|
|
264
|
+
- Action-oriented text
|
|
265
|
+
- Above the fold for key CTAs
|
|
266
|
+
|
|
267
|
+
### 43. Button Groups
|
|
268
|
+
- Related actions grouped together
|
|
269
|
+
- Clear visual connection
|
|
270
|
+
- Consistent spacing (4-8px)
|
|
271
|
+
- Logical order (cancel before submit)
|
|
272
|
+
|
|
273
|
+
### 44. Toggle Buttons
|
|
274
|
+
- Clear on/off state
|
|
275
|
+
- Immediate visual feedback
|
|
276
|
+
- Accessible state announcement
|
|
277
|
+
- Consider using actual toggle for settings
|
|
278
|
+
|
|
279
|
+
### 45. Floating Action Button (FAB)
|
|
280
|
+
- Single primary action per screen
|
|
281
|
+
- Bottom right placement (Material Design)
|
|
282
|
+
- 56px size, consistent shadow
|
|
283
|
+
- Extended FAB with label for clarity
|
|
284
|
+
|
|
285
|
+
### 46. Button Loading States
|
|
286
|
+
- Replace text with spinner
|
|
287
|
+
- Or show spinner beside text
|
|
288
|
+
- Disable during loading
|
|
289
|
+
- Maintain button size
|
|
290
|
+
|
|
291
|
+
### 47. Ghost/Text Buttons
|
|
292
|
+
- Use for secondary actions
|
|
293
|
+
- Clear hover state
|
|
294
|
+
- Adequate padding for touch
|
|
295
|
+
- Don't overuse—reduces clickability
|
|
296
|
+
|
|
297
|
+
### 48. Split Buttons
|
|
298
|
+
- Primary action + dropdown
|
|
299
|
+
- Clear separation indicator
|
|
300
|
+
- Accessible dropdown
|
|
301
|
+
- Use sparingly
|
|
302
|
+
|
|
303
|
+
### 49. Button Placement
|
|
304
|
+
- Primary action on right (LTR)
|
|
305
|
+
- Or at bottom for forms
|
|
306
|
+
- Consistent throughout app
|
|
307
|
+
- Close/Cancel on left
|
|
308
|
+
|
|
309
|
+
### 50. Disabled Buttons
|
|
310
|
+
- Explain why disabled
|
|
311
|
+
- Use tooltip or helper text
|
|
312
|
+
- Don't completely hide
|
|
313
|
+
- 0.5 opacity + no pointer events
|
|
314
|
+
|
|
315
|
+
---
|
|
316
|
+
|
|
317
|
+
## Feedback & Communication (15 guidelines)
|
|
318
|
+
|
|
319
|
+
### 51. Toast Notifications
|
|
320
|
+
- Brief, dismissible messages
|
|
321
|
+
- Auto-dismiss after 3-5 seconds
|
|
322
|
+
- Position: top-right or bottom-center
|
|
323
|
+
- Allow manual dismiss
|
|
324
|
+
|
|
325
|
+
### 52. Alert Types
|
|
326
|
+
- **Info** (blue): Neutral information
|
|
327
|
+
- **Success** (green): Completed actions
|
|
328
|
+
- **Warning** (yellow): Potential issues
|
|
329
|
+
- **Error** (red): Something went wrong
|
|
330
|
+
|
|
331
|
+
### 53. Inline Feedback
|
|
332
|
+
- Show feedback near the action
|
|
333
|
+
- Don't rely only on color
|
|
334
|
+
- Include icon + text
|
|
335
|
+
- Persist until acknowledged or resolved
|
|
336
|
+
|
|
337
|
+
### 54. Progress Indicators
|
|
338
|
+
- Determinate: Known duration (progress bar)
|
|
339
|
+
- Indeterminate: Unknown duration (spinner)
|
|
340
|
+
- Show percentage when possible
|
|
341
|
+
- Estimate time remaining for long tasks
|
|
342
|
+
|
|
343
|
+
### 55. Skeleton Screens
|
|
344
|
+
- Match content layout
|
|
345
|
+
- Subtle animation (pulse or shimmer)
|
|
346
|
+
- Replace with content progressively
|
|
347
|
+
- Better UX than spinners
|
|
348
|
+
|
|
349
|
+
### 56. Confirmation Messages
|
|
350
|
+
- Confirm important actions
|
|
351
|
+
- "Are you sure?" with consequences
|
|
352
|
+
- Clear accept/cancel buttons
|
|
353
|
+
- Show what will be affected
|
|
354
|
+
|
|
355
|
+
### 57. Undo Functionality
|
|
356
|
+
- Offer undo for destructive actions
|
|
357
|
+
- Toast with undo button
|
|
358
|
+
- Time-limited (5-10 seconds)
|
|
359
|
+
- Better than confirmation dialogs
|
|
360
|
+
|
|
361
|
+
### 58. Help Text
|
|
362
|
+
- Place near relevant fields
|
|
363
|
+
- Persistent (don't hide on focus)
|
|
364
|
+
- Brief and scannable
|
|
365
|
+
- Link to detailed help if needed
|
|
366
|
+
|
|
367
|
+
### 59. Tooltips
|
|
368
|
+
- Hover/focus triggered
|
|
369
|
+
- Brief content (1-2 lines)
|
|
370
|
+
- Consistent placement
|
|
371
|
+
- Touch: tap to show, tap elsewhere to dismiss
|
|
372
|
+
|
|
373
|
+
### 60. Empty Data Handling
|
|
374
|
+
- Friendly illustration (optional)
|
|
375
|
+
- Clear explanation
|
|
376
|
+
- Action to add data
|
|
377
|
+
- Don't show "0 results" tables
|
|
378
|
+
|
|
379
|
+
### 61. System Status
|
|
380
|
+
- Always indicate system state
|
|
381
|
+
- Loading, saving, synced indicators
|
|
382
|
+
- Connection status (online/offline)
|
|
383
|
+
- Background task progress
|
|
384
|
+
|
|
385
|
+
### 62. Micro-interactions
|
|
386
|
+
- Button press feedback
|
|
387
|
+
- Form submission animations
|
|
388
|
+
- Toggle state changes
|
|
389
|
+
- Delightful but not distracting
|
|
390
|
+
|
|
391
|
+
### 63. Error Recovery
|
|
392
|
+
- Help users recover from errors
|
|
393
|
+
- Don't lose their input
|
|
394
|
+
- Suggest alternatives
|
|
395
|
+
- Provide contact support option
|
|
396
|
+
|
|
397
|
+
### 64. Onboarding
|
|
398
|
+
- Progressive disclosure
|
|
399
|
+
- Skippable but accessible later
|
|
400
|
+
- Highlight key features
|
|
401
|
+
- Don't overwhelm
|
|
402
|
+
|
|
403
|
+
### 65. Copy/Microcopy
|
|
404
|
+
- Human, not robotic
|
|
405
|
+
- Consistent terminology
|
|
406
|
+
- Culturally appropriate
|
|
407
|
+
- Test with real users
|
|
408
|
+
|
|
409
|
+
---
|
|
410
|
+
|
|
411
|
+
## Accessibility (18 guidelines)
|
|
412
|
+
|
|
413
|
+
### 66. Color Contrast
|
|
414
|
+
- 4.5:1 minimum for normal text
|
|
415
|
+
- 3:1 for large text (18pt+)
|
|
416
|
+
- Don't rely on color alone
|
|
417
|
+
- Test with contrast checkers
|
|
418
|
+
|
|
419
|
+
### 67. Focus Indicators
|
|
420
|
+
- Visible focus ring (2px+)
|
|
421
|
+
- High contrast from background
|
|
422
|
+
- Never remove focus styles
|
|
423
|
+
- Custom focus styles allowed
|
|
424
|
+
|
|
425
|
+
### 68. Keyboard Navigation
|
|
426
|
+
- All interactive elements focusable
|
|
427
|
+
- Logical tab order
|
|
428
|
+
- No keyboard traps
|
|
429
|
+
- Skip links for main content
|
|
430
|
+
|
|
431
|
+
### 69. Screen Reader Support
|
|
432
|
+
- Semantic HTML first
|
|
433
|
+
- ARIA labels when needed
|
|
434
|
+
- Alt text for images
|
|
435
|
+
- Test with screen readers
|
|
436
|
+
|
|
437
|
+
### 70. Alt Text
|
|
438
|
+
- Describe image content/function
|
|
439
|
+
- Decorative images: alt=""
|
|
440
|
+
- Complex images: long description
|
|
441
|
+
- Don't start with "Image of..."
|
|
442
|
+
|
|
443
|
+
### 71. Link Text
|
|
444
|
+
- Descriptive link text
|
|
445
|
+
- Avoid "click here", "read more"
|
|
446
|
+
- Underline links in body text
|
|
447
|
+
- Distinguish from buttons
|
|
448
|
+
|
|
449
|
+
### 72. Form Labels
|
|
450
|
+
- Every input needs a label
|
|
451
|
+
- Labels associated with inputs (for/id)
|
|
452
|
+
- Required field indication
|
|
453
|
+
- Error states linked to inputs
|
|
454
|
+
|
|
455
|
+
### 73. ARIA Usage
|
|
456
|
+
- Use native HTML first
|
|
457
|
+
- ARIA supplements, doesn't replace
|
|
458
|
+
- Test ARIA implementations
|
|
459
|
+
- Don't overuse ARIA
|
|
460
|
+
|
|
461
|
+
### 74. Touch Targets
|
|
462
|
+
- Minimum 44x44px
|
|
463
|
+
- 8px minimum spacing
|
|
464
|
+
- Adequate padding, not just icon size
|
|
465
|
+
- Consider thumb zones on mobile
|
|
466
|
+
|
|
467
|
+
### 75. Text Sizing
|
|
468
|
+
- Allow 200% zoom without breaking
|
|
469
|
+
- Use relative units (rem, em)
|
|
470
|
+
- Don't disable zoom
|
|
471
|
+
- Test text scaling
|
|
472
|
+
|
|
473
|
+
### 76. Motion & Animation
|
|
474
|
+
- Respect prefers-reduced-motion
|
|
475
|
+
- Avoid flashing content
|
|
476
|
+
- Provide pause/stop for auto-play
|
|
477
|
+
- No content-conveying motion
|
|
478
|
+
|
|
479
|
+
### 77. Reading Order
|
|
480
|
+
- DOM order matches visual order
|
|
481
|
+
- Logical heading structure
|
|
482
|
+
- Content accessible without CSS
|
|
483
|
+
- Test with screen reader
|
|
484
|
+
|
|
485
|
+
### 78. Language
|
|
486
|
+
- Set page language (lang attribute)
|
|
487
|
+
- Mark language changes in content
|
|
488
|
+
- Plain language preferred
|
|
489
|
+
- Reading level appropriate
|
|
490
|
+
|
|
491
|
+
### 79. Timing
|
|
492
|
+
- Allow enough time to read/act
|
|
493
|
+
- Warn before timeouts
|
|
494
|
+
- Allow time extensions
|
|
495
|
+
- Save progress frequently
|
|
496
|
+
|
|
497
|
+
### 80. Cognitive Load
|
|
498
|
+
- Clear, simple language
|
|
499
|
+
- Break up complex tasks
|
|
500
|
+
- Provide help and documentation
|
|
501
|
+
- Consistent patterns
|
|
502
|
+
|
|
503
|
+
### 81. Testing Accessibility
|
|
504
|
+
- Automated tools (axe, WAVE)
|
|
505
|
+
- Manual keyboard testing
|
|
506
|
+
- Screen reader testing
|
|
507
|
+
- User testing with disabilities
|
|
508
|
+
|
|
509
|
+
### 82. WCAG Compliance
|
|
510
|
+
- Level A: Minimum requirement
|
|
511
|
+
- Level AA: Recommended standard
|
|
512
|
+
- Level AAA: Enhanced accessibility
|
|
513
|
+
- Know your legal requirements
|
|
514
|
+
|
|
515
|
+
### 83. Accessible Media
|
|
516
|
+
- Captions for video
|
|
517
|
+
- Transcripts for audio
|
|
518
|
+
- Audio description for video
|
|
519
|
+
- Player controls accessible
|
|
520
|
+
|
|
521
|
+
---
|
|
522
|
+
|
|
523
|
+
## Performance & Technical (15 guidelines)
|
|
524
|
+
|
|
525
|
+
### 84. Page Load
|
|
526
|
+
- First Contentful Paint < 1.8s
|
|
527
|
+
- Largest Contentful Paint < 2.5s
|
|
528
|
+
- Show loading skeleton immediately
|
|
529
|
+
- Prioritize above-fold content
|
|
530
|
+
|
|
531
|
+
### 85. Interaction Response
|
|
532
|
+
- < 100ms feels instant
|
|
533
|
+
- 100-300ms noticeable
|
|
534
|
+
- 300ms+ show loading indicator
|
|
535
|
+
- First Input Delay < 100ms
|
|
536
|
+
|
|
537
|
+
### 86. Image Optimization
|
|
538
|
+
- Use modern formats (WebP, AVIF)
|
|
539
|
+
- Lazy load below-fold images
|
|
540
|
+
- Provide srcset for responsive
|
|
541
|
+
- Compress appropriately
|
|
542
|
+
|
|
543
|
+
### 87. Layout Stability
|
|
544
|
+
- Cumulative Layout Shift < 0.1
|
|
545
|
+
- Reserve space for images
|
|
546
|
+
- Reserve space for ads
|
|
547
|
+
- No late-loading content push
|
|
548
|
+
|
|
549
|
+
### 88. Offline Support
|
|
550
|
+
- Service worker for reliability
|
|
551
|
+
- Cache critical assets
|
|
552
|
+
- Graceful offline behavior
|
|
553
|
+
- Sync when reconnected
|
|
554
|
+
|
|
555
|
+
### 89. Mobile Optimization
|
|
556
|
+
- Responsive design required
|
|
557
|
+
- Touch-friendly interactions
|
|
558
|
+
- Appropriate input types
|
|
559
|
+
- Device testing
|
|
560
|
+
|
|
561
|
+
### 90. Progressive Enhancement
|
|
562
|
+
- Core functionality without JS
|
|
563
|
+
- Enhance with JavaScript
|
|
564
|
+
- Feature detection, not browser detection
|
|
565
|
+
- Graceful degradation
|
|
566
|
+
|
|
567
|
+
### 91. URL Design
|
|
568
|
+
- Clean, readable URLs
|
|
569
|
+
- Reflect content hierarchy
|
|
570
|
+
- Stable, don't break links
|
|
571
|
+
- Support deep linking
|
|
572
|
+
|
|
573
|
+
### 92. State Management
|
|
574
|
+
- Preserve state in URL when relevant
|
|
575
|
+
- Browser back button works
|
|
576
|
+
- Refresh doesn't lose data
|
|
577
|
+
- Form data persisted
|
|
578
|
+
|
|
579
|
+
### 93. Error Handling
|
|
580
|
+
- Catch all errors gracefully
|
|
581
|
+
- User-friendly error messages
|
|
582
|
+
- Log errors for debugging
|
|
583
|
+
- Retry mechanisms for network
|
|
584
|
+
|
|
585
|
+
### 94. Cross-Browser
|
|
586
|
+
- Test major browsers
|
|
587
|
+
- Progressive enhancement
|
|
588
|
+
- Polyfills when needed
|
|
589
|
+
- Document supported browsers
|
|
590
|
+
|
|
591
|
+
### 95. Print Styles
|
|
592
|
+
- Print stylesheet
|
|
593
|
+
- Hide navigation/ads
|
|
594
|
+
- Readable typography
|
|
595
|
+
- Proper page breaks
|
|
596
|
+
|
|
597
|
+
### 96. Security UX
|
|
598
|
+
- Clear HTTPS indicator
|
|
599
|
+
- Explain security features
|
|
600
|
+
- Don't ask for unnecessary data
|
|
601
|
+
- Privacy-respecting defaults
|
|
602
|
+
|
|
603
|
+
### 97. Internationalization
|
|
604
|
+
- Plan for translation (text expansion)
|
|
605
|
+
- Right-to-left support if needed
|
|
606
|
+
- Date/time/number formats
|
|
607
|
+
- Cultural considerations
|
|
608
|
+
|
|
609
|
+
### 98. Analytics & Tracking
|
|
610
|
+
- Respect DNT (Do Not Track)
|
|
611
|
+
- Clear privacy policy
|
|
612
|
+
- Consent for cookies/tracking
|
|
613
|
+
- Minimal data collection
|
|
614
|
+
|
|
615
|
+
---
|
|
616
|
+
|
|
617
|
+
## Quick Reference Checklist
|
|
618
|
+
|
|
619
|
+
### Before Launch
|
|
620
|
+
- [ ] All pages have proper headings (H1-H6)
|
|
621
|
+
- [ ] All images have alt text
|
|
622
|
+
- [ ] Color contrast meets WCAG AA
|
|
623
|
+
- [ ] All forms have labels
|
|
624
|
+
- [ ] Keyboard navigation works
|
|
625
|
+
- [ ] Error handling implemented
|
|
626
|
+
- [ ] Loading states defined
|
|
627
|
+
- [ ] Empty states designed
|
|
628
|
+
- [ ] Mobile responsive tested
|
|
629
|
+
- [ ] Cross-browser tested
|
|
630
|
+
- [ ] Performance metrics acceptable
|
|
631
|
+
- [ ] Accessibility audit passed
|
|
632
|
+
|
|
633
|
+
### For Every Component
|
|
634
|
+
- [ ] Has hover state
|
|
635
|
+
- [ ] Has focus state
|
|
636
|
+
- [ ] Has disabled state (if applicable)
|
|
637
|
+
- [ ] Has error state (if applicable)
|
|
638
|
+
- [ ] Has loading state (if applicable)
|
|
639
|
+
- [ ] Touch target adequate
|
|
640
|
+
- [ ] Screen reader accessible
|