Codec selection
Dependencies are selected for browser compatibility, static bundling, commercial redistribution suitability, maintenance status, and a license that can be documented. Runtime codec CDNs and external conversion APIs are excluded.
The current dependency review covers Astro and its sitemap and type-check tools, TypeScript, Vitest, Playwright, exifr, fflate, UTIF, heic-decode, and the JSquash AVIF encoder. Package and bundled-code licenses are recorded in THIRD_PARTY_LICENSES.md.
Format verification
A centralized support matrix separates detection, decoding, encoding, compression, conversion, metadata reading, metadata removal, transparency, animation, and multi-frame behavior. Magic-byte tests cover renamed or mismatched files. Browser flows verify advertised conversions with generated, non-private fixtures.
Support claims are reduced when a browser or codec cannot reliably meet the expected behavior. Import-only formats must not be described as same-format compression, and animation or multiple pages must not be silently discarded.
Algorithms and target sizes
Resize calculations preserve aspect ratio by default and cap dimensions before allocating large pixel buffers. Lossy target-size compression uses a bounded binary quality search, a maximum iteration count, a best-candidate record, and a five percent success tolerance where achievable.
Savings percentages are calculated from original and output byte lengths. An output larger than the source is labeled as larger rather than reported as a negative saving.
Metadata assessment
Synthetic fixtures may contain known orientation, camera, date, and GPS fields. A metadata-cleaning test confirms that those tested fields are absent after decode-and-re-encode. SVG tests confirm removal of scripts, event handlers, foreign objects, external references, comments, and editor metadata.
Because proprietary metadata evolves, the public explanation remains qualified and encourages verification for sensitive files.
Content and issue reports
Technical articles are reviewed against the implemented behavior and use a visible published or updated date. Fake research, ratings, download counts, or quality guarantees are not used.
A reproducible issue can be reported to contact@imagescompressor.com. Reports are evaluated for format signature, browser support, dimensions, animation or page count, codec behavior, and whether the public support matrix should change.
Last reviewed: July 30, 2026.