Check web interfaces against Vercel's design guidelines...
Review web interfaces against Vercel's comprehensive design guidelines and propose fixes.
When a user asks to review their UI or check against design guidelines:
https://vercel.com/design/guidelinesGuidelines URL: https://vercel.com/design/guidelines
Always fetch fresh guidelines to ensure you're checking against the latest standards.
Present findings as:
## {Category} Issues
### {Severity}: {Guideline Name}
**File:** `path/to/file.tsx:42`
**Issue:** {Description of the violation}
**Guideline:** {Brief guideline reference}
**Fix:**
```{language}
{Proposed code fix}
Severity levels:
- **Critical**: Accessibility violations, broken functionality
- **Warning**: UX issues, performance concerns
- **Suggestion**: Polish, best practices
## Example Review
File: components/Modal.tsx:28
Issue: Modal lacks focus trap - keyboard users can tab outside
Guideline: Implement focus traps per WAI-ARIA patterns
Fix:
// Add focus trap using @radix-ui/react-focus-guards or similar
import { FocusScope } from '@radix-ui/react-focus-scope';
<FocusScope trapped>
<ModalContent>{children}</ModalContent>
</FocusScope>
File: components/Button.tsx:15
Issue: No minimum loading duration - causes flicker on fast responses
Guideline: Add 150-300ms delay and 300-500ms minimum visibility
Fix:
const [isLoading, setIsLoading] = useState(false);
const minimumLoadingTime = 300;
async function handleClick() {
setIsLoading(true);
const start = Date.now();
await action();
const elapsed = Date.now() - start;
if (elapsed < minimumLoadingTime) {
await new Promise(r => setTimeout(r, minimumLoadingTime - elapsed));
}
setIsLoading(false);
}
## Quick Checklist
For rapid reviews, check these high-impact items first:
- [ ] All interactive elements keyboard accessible
- [ ] Visible focus rings on focusable elements
- [ ] Hit targets ≥24px (44px on mobile)
- [ ] Form inputs have associated labels
- [ ] Loading states don't flicker
- [ ] `prefers-reduced-motion` respected
- [ ] No `transition: all`
- [ ] Errors show how to fix, not just what's wrong
- [ ] Color contrast meets APCA standards
- [ ] No zoom disabled
## Present Results to User
After reviewing:
Reviewed {N} files against Vercel design guidelines.
{Detailed findings by category}