Accessibility Audit
Audit code against WCAG 2.2 AA starting with the six violations that dominate the web: semantic HTML over ARIA, keyboard paths, honest coverage limits.
Audit this code for accessibility (WCAG 2.2 AA). Start with the failures that dominate real-world audits, and be honest about what a code review can't verify. The code (components/templates/pages): """ [PASTE THE MARKUP/COMPONENTS, or point an agent at the views/components directories] """ What this UI does: [THE FLOWS: forms, navigation, modals, tables, what users accomplish here] Framework: [REACT / VUE / RAILS TEMPLATES / etc.] **Pass 1: the big six** (these account for ~96% of detected failures on the web; check every instance): 1. Color contrast: flag any hardcoded colors that look below 4.5:1 for normal text / 3:1 for large text and UI components. Mark [MEASURE: fg/bg pair] where values come from a theme I didn't paste. 2. Missing/empty alt text: every img and svg, decorative ones get empty alt (alt=""), meaningful ones get a description of function, not appearance; linked images describe the destination. 3. Form inputs without labels: every input labeled (label for / aria-label as last resort), placeholder is not a label. 4. Empty links and buttons: icon-only controls need accessible names. 5. Document language + page title where applicable. 6. Heading structure: one h1, no skipped levels, headings as structure not styling. **Pass 2: the ARIA discipline check:** pages using ARIA average MORE errors than pages without it, no ARIA beats bad ARIA. Flag: role/aria-* on elements where native HTML does the job (div-with-onclick that should be button, div role="navigation" that should be nav), aria-labels that lie or drift from visible text, ARIA states (aria-expanded, aria-selected) declared but never updated in the code. Every custom widget (dropdown, modal, tabs) gets checked against its APG pattern: correct role AND states AND keyboard handlers; an ARIA role without its keyboard behavior is a broken promise to screen readers. **Pass 3: keyboard paths, traced in the code:** everything clickable reachable and operable by keyboard (real button/a elements or explicit key handlers), visible focus styles not suppressed (outline: none without replacement is a finding), focus management on modals (trap + return on close), no positive tabindex, and the WCAG 2.2 additions: focus not obscured by sticky headers, touch targets ≥24px, no drag-only interactions without a click alternative. For each finding: WCAG criterion | file/line | who it breaks and how (the user story: "keyboard user cannot close this modal") | the fix, in code. **The honesty section (mandatory):** what this static audit could NOT verify, actual rendered contrast, real screen-reader behavior, focus order in the live DOM, alt-text QUALITY: with the manual test list for each (tab through every flow; NVDA/VoiceOver smoke test on the top 3 flows). Never call the result "compliant": automated and code review together cover roughly a third to a half of WCAG: the rest is manual. Rules: prefer deleting ARIA and using native elements over adding ARIA. Severity-rank by user impact on MY stated flows, not by criterion number.
More coding prompts
Write the commit message for this change. Diff: """ [PASTE THE STAGED DIFF] """ Why I made this change: [THE REASON, THE TICKET, THE BUG REPORT, or "you infer it"] Convention: [Conventional Commits / this repo's existing style, pasted below / plain] Recent commits from this repo, to match style: """ [PASTE 5-10 RECENT COMMIT SUBJECT LIN
Commit Message
Write a commit message that explains why the change was made, in Conventional Commits format, split into separate commits when needed.
Codingbeginner
Help me recover from a git mistake without making it worse. What I was trying to do: [THE GOAL] What I ran: [THE EXACT COMMANDS, IN ORDER] What happened instead: [THE OUTPUT OR THE STATE NOW] Has this been pushed or shared: [YES/NO, and to which branch and whether anyone else has pulled] Uncommitted work I cannot lose: [WHAT AND WHERE, o
Undo a Git Mistake
Recover from a bad commit, force push, wrong branch, or lost work with a reversible plan and the exact commands, explained before you run them.
Codingintermediate
Handler code, routes, and models: """ [PASTE THE ROUTE DEFINITIONS, HANDLERS, REQUEST AND RESPONSE TYPES, VALIDATION SCHEMAS, AND MIDDLEWARE] """ Generate an OpenAPI 3.1 specification from the code above. API name, version, and base URL: [DETAILS] Auth scheme: [BEARER JWT / API KEY / OAUTH / SESSION COOKIE, and where it is enforced] Con
OpenAPI Spec From Code
Generate an accurate OpenAPI 3.1 spec from handler code, including error responses and auth, with gaps flagged instead of invented.
Codingintermediate