zetbaitsu/Compressor

An android image compression library.

View on GitHub ↗Jump to charts ↓

Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 2 hours ago
Type:Library / SDKCategory(s):AndroidMobile & Desktop
Added to GitGenius on September 9th, 2026
Created on June 18th, 2016
Open Issues & Pull Requests: 140 (+0)
GitHub issues: Enabled
Number of forks: 964
Total Stargazers: 7,228 (+0)
Total Subscribers: 142 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 47.9 days
Mean response time: 586.5 days
90th percentile: 3000.1 days
Tracked items: 9

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 11
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,763 days
Stale 30+ days: 11
Stale 90+ days: 11

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

Compressor is a lightweight Android image compression library written in Kotlin.

The library solves the problem of reducing photo file sizes for mobile applications where bandwidth and storage are constrained. It compresses images to smaller sizes with minimal quality loss. The tool works by allowing developers to apply compression either with default settings or by defining custom constraints such as target quality, resolution, and format parameters. Compression operations run asynchronously using Kotlin coroutines, which can be called from a coroutine scope or executed on the main thread depending on application needs.

Compressor suits Android projects that need to handle user-generated photos, such as messaging apps, social platforms, or any application uploading images to a server. It is particularly valuable when you want to reduce bandwidth usage and storage requirements without requiring users to manually resize or optimize their photos. The library provides both simple one-line compression with sensible defaults and fine-grained control through custom constraint definitions for developers who need specific output parameters.

The project maintains active development with ongoing refinement of its compression pipeline and coroutine integration. The codebase includes test coverage to validate compression behavior across different scenarios. Documentation covers both basic usage patterns and advanced customization approaches, including examples of creating custom constraint implementations and extension functions.