asset_shrink 0.1.0
asset_shrink: ^0.1.0 copied to clipboard
A zero-history, quality-gated Flutter and Dart dev-time asset compressor (PNG/JPEG) with native CLI and pure-Dart fallback.
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.1.0 - 2026-08-22 #
Added #
- Initial release of
asset_shrink. - PNG compression pipeline with native
pngquant+oxipngand pure-Dart fallback tier. - JPEG compression pipeline with native
jpegoptimand pure-Dart lossless metadata stripping. - PNG color-type header parser with $\ge 33$-byte corruption guard.
- Core invariant size gate: files are strictly overwritten only when candidate bytes are smaller than original bytes.
- Zero-history stateless execution: decisions are made purely from current image bytes.
- Automatic native tool detection with platform-specific installation hints.
- Per-file exception isolation ensuring corrupted files never abort the batch.
- CLI runner supporting
--quality,--jpg-quality,--dry-run,--verbose, and custom path overrides. pubspec.yamlconfiguration support underasset_shrink:key.