Skip to content

Introduction

frontend-qa is a local-first, deterministic frontend runtime inspection and QA tool for React and Next.js applications. It drives a real headless (or headed) Chromium browser via Playwright, opens your app, and records what actually happens — console errors, failed network requests, a screenshot, and navigation timing on every run, with accessibility, performance, and visual-regression checks available as opt-in flags. Everything is normalized into a single structured Report, written to disk as JSON.

It also ships an MCP server that exposes the same scan/report/issue data as tools an AI coding assistant (Claude Code, Cursor, etc.) can call directly, instead of parsing terminal output.

  • Developers who want a fast, repeatable way to check “did I just break anything obvious” before opening a PR, without wiring up a hosted QA service.
  • AI coding agents that need ground-truth about a running app — what the browser console actually printed, what a request actually returned — rather than guessing from source code alone.
  • Anyone working on a Vite or Next.js React app locally; project detection currently recognizes those two.

Frontend regressions — a console error on mount, a network call that now 404s, an image missing its alt, a bundle that quietly doubled in size — are easy to miss because nothing routinely looks. Opening dev tools by hand on every route doesn’t scale, and most “QA automation” either means a full E2E test suite (assertions you have to write and maintain) or a hosted synthetic-monitoring product (your traffic leaves your machine, and it’s built for production uptime, not a local dev loop).

frontend-qa sits in between: point it at a URL, get back what a careful developer would have found by opening the browser and checking — evidence- tagged, not inferred, and entirely local.

  • No LLM or hosted-AI dependency in the scan path. The core report is produced by deterministic collectors, not a model. AI is an optional consumer of the report (via MCP), never the thing producing it.
  • No cloud upload. Reports, screenshots, and HAR files stay under .local/frontend-qa/ in the project you scanned.
  • No authoring of E2E assertions. frontend-qa observes what happens on the routes you give it; it isn’t a Playwright-test replacement.