review-frontend
Validates frontend code for component patterns, form handling, and accessibility standards.
Install
mkdir -p .claude/skills/review-frontend && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/10890" && unzip -o skill.zip -d .claude/skills/review-frontend && rm skill.zipInstalls to .claude/skills/review-frontend
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Frontend review checklist for OpenAEV React/TypeScript code: component patterns, forms, MUI usage, permissions, i18n, state management, dead code. Use when reviewing PRs or auditing frontend features.Key capabilities
- →Audit component structure
- →Check form validation
- →Verify permissions
- →Check i18n compliance
How it works
Conducts a complete audit of frontend PRs against established patterns and guidelines.
Inputs & outputs
When to use review-frontend
- →Auditing frontend pull requests
- →Verifying React component patterns
- →Checking i18n compliance
About this skill
Frontend Review
Procedure
Step 1 — Check component structure
- One component per file, one folder per feature
- Functional components with
FunctionComponenttyping - No class components in new code (
.jsx→.tsxmigration required when touching) - Props defined via explicit
interface Props(not inline)
Step 2 — Check forms
- Zod for validation via
zodImplement<T>().with({...}) - React Hook Form via
useForm<T>+FormProvider - Field controllers:
TextFieldController,SelectFieldController,TagFieldController - Form layout: flexbox with
gap: theme.spacing(2), no MUI Grid - Validate types match
api-types.d.ts(auto-generated, never manual)
Step 3 — Check MUI & styling
- No MUI for layout — native
div,section,header, flexbox/grid sxoverstyle— usesxon MUI components, neverstyle={{ }}- Theme tokens — use
theme.palette,theme.spacing(),theme.shape,theme.typographyfor all visual values; no hardcoded#hex,rgba(), or rawpx(fixedwidthexempt)
Step 4 — Check permissions
- Create/Edit: wrapped with
<Can I={ACTIONS.X} a={SUBJECTS.Y}> - No hardcoded role checks — use CASL
ability.can() - New subjects → added in
src/utils/permissions/types.ts
Step 5 — Check i18n
t()called early — pass translated strings to child components- Keys = English text:
t('Organization name'), nott('organization_name') - No missing translations:
cd openaev-front && yarn i18n-checker 2>&1 | tail -20
Step 6 — Check data loading patterns
- Paginated lists:
useQueryableWithLocalStorage+PaginationComponentV2 - Actions: simple calls in
actions/{feature}/{feature}-actions.ts - Hooks: custom hook per feature (e.g.,
useOrganizations.ts) for local state
Step 7 — Check TypeScript
- No
anytypes - No
@ts-ignorewithout explanatory comment - Auto-generated types from API used (not manual interfaces for API responses):
grep -rn "interface.*Input\|interface.*Output" openaev-front/src/ --include="*.ts" --include="*.tsx" | grep -v api-types | grep -v node_modules | head -20
Step 8 — Check dead code
- No unused imports (ESLint catches most)
- No orphaned
.jsxfiles if a.tsxreplacement exists - No components imported but not rendered
- No dead props — grep all call-sites of modified components; any prop declared in
interface Propsthat no consumer passes must be removed
Step 9 — Report
Document findings using conventional comments format:
issue (blocking):for pattern violations that cause bugs or inconsistencysuggestion (non-blocking):for improvements and modernizationnitpick:for style preferencespraise:for well-implemented patterns
When not to use it
- →Backend code review
Prerequisites
Limitations
- →Requires manual reporting of findings
How it compares
Enforces specific frontend patterns like CASL permissions and Zod validation.
Compared to similar skills
review-frontend side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| review-frontend (this skill) | 0 | 3mo | Review | Intermediate |
| accessibility-compliance | 45 | 2mo | No flags | Intermediate |
| frontend-code-review | 11 | 2mo | No flags | Advanced |
| feature-flags | 6 | 6mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
accessibility-compliance
wshobson
Implement WCAG 2.2 compliant interfaces with mobile accessibility, inclusive design patterns, and assistive technology support. Use when auditing accessibility, implementing ARIA patterns, building for screen readers, or ensuring inclusive user experiences.
frontend-code-review
langgenius
Trigger when the user requests a review of frontend files (e.g., `.tsx`, `.ts`, `.js`). Support both pending-change reviews and focused file reviews while applying the checklist rules.
feature-flags
Use when feature flag tests fail, flags need updating, understanding @gate pragmas, debugging channel-specific test failures, or adding new flags to React.
i18n
lobehub
Internationalization guide using react-i18next. Use when adding translations, creating i18n keys, or working with localized text in React components (.tsx files). Triggers on translation tasks, locale management, or i18n implementation.
opik-frontend
comet-ml
React frontend patterns for Opik. Use when working in apps/opik-frontend, on components, state, or data fetching.
react-useeffect
jarrodwatts
React useEffect best practices from official docs. Use when writing/reviewing useEffect, useState for derived values, data fetching, or state synchronization. Teaches when NOT to use Effect and better alternatives.