---
canonical_url: "https://visual-regression.dev"
---
<u-page-hero>
<template v-slot:headline="">
<brand-mark className="mx-auto,size-16">



</brand-mark>
</template>

<template v-slot:title="">

Visual regression testing, explained

</template>

<template v-slot:description="">

Screenshots catch what assertions miss. This site explains how visual regression testing works, compares the tools honestly, and documents one run manifest any tool can write and any review tool can read.

</template>

<template v-slot:links="">
<u-button color="neutral" size="xl" to="https://visual-regression.dev/learn/what-is-visual-regression-testing" trailing-icon="i-lucide-arrow-right">

Start learning

</u-button>

<u-button color="neutral" size="xl" to="https://visual-regression.dev/manifest" variant="outline">

The manifest

</u-button>
</template>
</u-page-hero>

<u-page-section>
<template v-slot:title="">

Three doors

</template>

<template v-slot:features="">
<u-page-feature icon="i-lucide-book-open" to="https://visual-regression.dev/learn/what-is-visual-regression-testing">
<template v-slot:title="">

Learn

</template>

<template v-slot:description="">

Six short chapters: what it is, how diffing works, why screenshots flake, baselines and approval, CI, and how to choose a tool.

</template>
</u-page-feature>

<u-page-feature icon="i-lucide-scale" to="https://visual-regression.dev/compare">
<template v-slot:title="">

Compare the tools

</template>

<template v-slot:description="">

Runner integrations, hosted review services, diff engines and mobile tools in one table, every claim sourced from the vendor's own docs.

</template>
</u-page-feature>

<u-page-feature icon="i-lucide-file-json" to="https://visual-regression.dev/manifest">
<template v-slot:title="">

The manifest

</template>

<template v-slot:description="">

One JSON file per run that lists every comparison. Built upon CTRF, written by several tools, read by PR bots and review apps.

</template>
</u-page-feature>
</template>
</u-page-section>

## Resources for Agents

- [API catalog: every service document this site publishes](https://visual-regression.dev/.well-known/api-catalog)
- [Sitemap (XML)](https://visual-regression.dev/sitemap.xml)
- [Sitemap (Markdown): every page on the site](https://visual-regression.dev/sitemap.md)
- [MCP server card: MCP endpoint at https://visual-regression.dev/mcp](https://visual-regression.dev/.well-known/mcp/server-card.json)
- [MCP endpoint (streamable HTTP)](https://visual-regression.dev/mcp)
- [llms.txt: index of the documentation for LLMs](https://visual-regression.dev/llms.txt)
- [llms-full.txt: the full documentation as a single file](https://visual-regression.dev/llms-full.txt)
- [OpenAPI document: every route this site serves to agents](https://visual-regression.dev/openapi.json)


## Sitemap

See the full [sitemap](https://visual-regression.dev/sitemap.md) for all pages.
