A QA automation platform for web applications, built to explore, understand, and test user flows automatically to enable faster regression coverage, better documentation, and more reliable QA.
demo_compressed.mp4
CoverIt helps a QA engineer move from application exploration to regression coverage with less manual work:
- Create a project and register the target web application.
- Run an automatic crawl or record a manual journey.
- Store discovered states, transitions, and actions as an application graph.
- Generate test flows that cover the discovered behavior.
- Review flows, edit steps, and add assertions.
- Generate executable regression code and open a pull request.
- Monitor regression runs, failures, reports, and generated documentation.
- Integrate with CI/CD pipelines to run regression tests automatically on every change.
- Report bugs in manual flows or regression runs, and automatically generate a bug report with a video of the failure.
| Repository | Role |
|---|---|
coverit-frontend |
React and TypeScript web application used by QA engineers. |
coverit-api |
TypeScript API for projects, crawl sessions, flows, integrations, dashboards, and regression results. |
coverit-contracts |
Shared Protocol Buffer contracts published for TypeScript and Python services. |
coverit-crawler |
Python worker that drives Playwright, explores applications, records manual sessions, and builds the state graph. |
coverit-docgen |
Python worker that labels states and transitions, generates user-facing documentation, and renders walkthrough videos. |
coverit-regression |
TypeScript generator and worker that turns flows into executable regression code. |
.github |
Public profile docs, shared Git hooks, and reusable GitHub Actions workflows. |
See the module guide for a closer look at each repository.
CoverIt is split into a web application, an API, background workers, shared contracts, and generated test code.
See architecture.md for the full data flow.
| Area | Tools |
|---|---|
| Frontend | React, TypeScript, Vite, React Query, Zustand, SCSS modules |
| API | Node.js, Express, TypeScript, Prisma, PostgreSQL |
| Workers | Python, ARQ, Redis, Playwright |
| Graph data | Neo4j |
| Regression | TypeScript, Playwright, generated BDD-style test code |
| Contracts | Protocol Buffers, npm package, Python wheel |
| Infrastructure | Docker Compose, GitHub Actions, shared Git hooks |
CoverIt was developed as a two-semester graduation project connecting several parts of the QA process: semantic crawling, dependency-aware flow generation, regression execution, self-healing support, manual recording, documentation generation, and project analytics.
The result is a working platform that treats application behavior, not DOM structure, as the source of truth for testing.

