v0.3.0
What's new
Package extraction (Phase 1)
SnapDrift's monolithic lib/ modules are now backed by four standalone npm packages:
@snapdrift/manifest— Schema validation, route selection, viewport presets, drift status classification (zero deps)@snapdrift/compare-core— Pure pixel comparison engine with ignore-region masking (deps: pngjs)@snapdrift/adapter-report-md— Markdown and HTML report generators (zero runtime deps)@snapdrift/adapter-fs— Filesystem I/O: capture, compare, config, staging, drift report generation (deps: manifest, compare-core, pngjs, playwright)
All lib/*.mjs modules are now thin re-export shims with identical export surfaces — backward compatible.
Other changes
generateDiffImageignore regions — ignored pixels are overlaid with semi-transparent gray instead of being skipped- Publish workflow — now publishes all four
@snapdrift/*packages in dependency order before the root package - Performance: concurrent route capture,
SNAPDRIFT_CAPTURE_CONCURRENCYenv var,animations: 'disabled'
npm packages
| Package | Version |
|---|---|
snapdrift |
0.3.0 |
@snapdrift/manifest |
1.0.0 |
@snapdrift/compare-core |
1.0.0 |
@snapdrift/adapter-report-md |
1.0.0 |
@snapdrift/adapter-fs |
1.0.0 |
Full Changelog: v0.2.1...v0.3.0