skills/ux-review/SKILL.md
Review Flutter components and screens for UX/UI compliance. Trigger: When user invokes /ux-review command or requests UX audit.
npx skillsauth add 333-333-333/agents ux-reviewInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
/ux-review <path>First, load these skills for reference:
flutter-ux-rules — Core UX rulesflutter-design-tokens — Token definitionscorporate-colors — Color paletteIf path is a directory, find all .dart files in:
atoms/molecules/organisms/templates/pages/widgets/If path is a file, review that single file.
For each file, verify:
GestureDetector have 48x48 dp minimumAppSizes.touchTarget used for tap areasColor(0xFF...) — use context.theme.colors.*fontSize: N — use context.theme.typography.*AppSpacing.*AppRadii.*AppSizes.*onPressed: null has visual disabled statesemanticLabelsemanticLabelOutput format:
# UX Review: {path}
## Summary
- Files reviewed: N
- ✅ Compliant: N
- ⚠️ Warnings: N
- ❌ Violations: N
## Violations (must fix)
### {filename}
- **Line N**: Magic number `padding: 17` — use `AppSpacing.*`
- **Line N**: Missing `semanticLabel` on Icon
## Warnings
### {filename}
- **Line N**: Consider using `AppSizes.touchTarget` instead of `48`
## Suggestions
- Consider extracting repeated padding pattern to a constant
- Form could benefit from autofill hints
## Compliant ✅
- {filename}: All checks passed
| Pattern | Severity | Message |
|---------|----------|---------|
| Color(0xFF...) | ❌ Violation | Use context.theme.colors.* |
| fontSize: N | ❌ Violation | Use context.theme.typography.* |
| EdgeInsets.all(N) where N not in tokens | ⚠️ Warning | Use AppSpacing.* |
| BorderRadius.circular(N) | ⚠️ Warning | Use AppRadii.* |
| width: N, height: N for tap targets | ⚠️ Warning | Use AppSizes.touchTarget |
| Icon(...) without semanticLabel | ❌ Violation | Add semanticLabel |
| onPressed: null without opacity change | ❌ Violation | Disabled needs visual feedback |
# Review single file
/ux-review lib/shared/presentation/atoms/app_button.dart
# Review directory
/ux-review lib/shared/presentation/atoms/
# Review entire feature
/ux-review lib/features/auth/presentation/
flutter-ux-rules skill assets/ux_review_checklist.mdflutter-design-tokens skilldevelopment
TypeScript strict patterns and best practices. Trigger: When implementing or refactoring TypeScript in .ts/.tsx (types, interfaces, generics, const maps, type guards, removing any, tightening unknown).
testing
Testing philosophy and strategy for every feature: test pyramid, mandatory levels per change type, completion checklist, and skill delegation. Trigger: When planning tests for a feature, reviewing test coverage, defining acceptance criteria, or asking what tests a change needs.
development
Terraform security practices: sensitive variables, secret management, state protection, .gitignore patterns, and CI/CD credential handling. Trigger: When handling secrets in Terraform, configuring state backends, reviewing .gitignore for Terraform, or setting up CI/CD pipelines for infrastructure.
development
Terraform code conventions: file organization, naming, variables, outputs, formatting, and the plan/apply workflow. Trigger: When writing Terraform files, reviewing HCL code style, organizing .tf files, or adding new Terraform modules.