Keep your toMatchScreenshot tests.
Add local TDD and team collaboration with one plugin.
await expect(page).toMatchScreenshot() import { vizzlyPlugin } from '@vizzly-testing/vitest'
plugins: [vizzlyPlugin()] | Feature | Vizzly SDK | Vitest Native |
|---|---|---|
| Code Changes | Zero (drop-in plugin) | Zero (built-in) |
| Feedback Loop | Instant (local TDD) | Wait for CI |
| Screenshot Storage | External (clean repos) | Git (bloat at scale) |
| Diffing Engine | Honeydiff (12x faster, SSIM) | Pixelmatch (basic) |
| Team Collaboration | Position-based comments | GitHub PR only |
| Pricing | Free local, $12/user teams | Free (open source) |
12x faster than odiff. 19% more accurate. Built in Rust.
20ms for 2.5M pixels. 231M pixels/sec throughput.
Catches 1,319 more real diffs than odiff. SSIM perceptual scoring.
Groups changes into regions. Distinguish real changes from noise.
No. Just add the vizzlyPlugin to vitest.config.js. Your toMatchScreenshot tests work unchanged.
Yes. vizzly tdd works without signup. Team collaboration features require a Vizzly account.
Vitest stores screenshots in git (1MB+ each). Vizzly stores externally, keeping repos fast.