30 open-source projects similar to zetbaitsu/compressor, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Compressor alternative.
Luban is a memory-safe image loading and optimization library for Android. It functions as an image optimizer and compression tool designed to reduce image file sizes and resolutions while preventing application crashes through the use of pixel limits and downsampling. The project replicates the specific compression and downsampling logic used by WeChat Moments to ensure images meet social media quality standards. It uses adaptive resolution scaling and dimension-aware strategies to balance visual quality with storage efficiency. The library covers bulk image processing, format optimization,
Coil is an image loading and caching pipeline designed for Android and Compose Multiplatform applications. It functions as a comprehensive loader, caching engine, and rendering utility that asynchronously fetches and displays images from network URLs, local storage, and multiplatform resource systems. The library distinguishes itself through a flexible fetcher-decoder pipeline and an interface-driven component registry, allowing for the integration of custom networking clients and decoders. It provides specialized support for rendering scalable vector graphics, animated formats such as GIF an
re-frame is a functional framework for building single-page applications in ClojureScript. It provides a centralized, immutable database that serves as the single source of truth for the entire application state, enforcing a strict unidirectional data flow where events trigger state transitions and subsequent view updates. The framework distinguishes itself through a reactive signal graph and an interceptor-based middleware pipeline. By treating application logic as a sequence of data-driven events and declarative side effects, it decouples business logic from the view layer. This architectur
MVVMHabit is an Android development framework and base library that implements the MVVM architecture using Android Architecture Components. It provides a pre-integrated foundation designed to decouple business logic from user interface rendering and lifecycle management. The project distinguishes itself by bundling a comprehensive set of architectural templates, including a reactive event bus for decoupled component communication, token-based data exchange between logic instances, and a single-activity fragment hosting system to reduce manifest overhead. The framework covers broad capability
uCrop is an Android library designed for cropping, rotating, and scaling images within mobile applications. It provides a reusable interface component that allows users to manipulate photos through touch gestures, enabling precise control over visual composition and aspect ratios. The library distinguishes itself by offering extensive customization of the editing interface, allowing developers to adjust colors, frame shapes, and widget visibility to align with specific application design languages. It handles image processing tasks by managing quality, compression formats, and output dimensio
ImageOptim is a macOS image optimizer and GUI image compressor designed to reduce image file sizes for web and disk storage. It functions as a lossless image optimizer that removes unnecessary metadata and optimizes encoding to reduce file sizes without losing pixel data. The application handles macOS media asset management and web image preparation by shrinking files to improve website loading speeds and reduce storage usage. It provides both lossless and lossy compression options to maintain visual quality while reducing the disk space used by images.
imagemin is a Node.js image optimizer and minification tool designed to reduce the storage size of image assets. It functions as a build pipeline asset optimizer that employs both lossy and lossless compression to remove unnecessary metadata and optimize pixel data. The project uses a plugin-based architecture to extend its functionality, loading external modules that handle specific image formats and compression algorithms. This allows the tool to serve as a flexible toolkit for automating image compression within development pipelines. The system covers broad capabilities for web performan
Guetzli is a lossy image compression tool and perceptual JPEG encoder. It converts PNG or JPEG inputs into high-density JPEG files, reducing file size by removing data that the human eye cannot easily detect. The tool utilizes human vision models to optimize the balance between file size and visual fidelity. It employs perceptual quality metrics and psychovisual similarity estimation to maintain high visual quality while maximizing compression density. The project includes a visual difference analyzer capable of generating spatial difference heatmaps and calculating scalar similarity scores.
TinyPNG4Mac is a native macOS image compression client and desktop optimizer. It serves as a wrapper for the TinyPNG API, allowing for the reduction of image file sizes and format conversion without the use of a web browser. The utility integrates directly into the macOS environment, providing workflow automation through the Finder and system right-click context menus. It also supports drag-and-drop file handling to initiate the compression process. The application manages image processing by communicating with a remote service via a REST API, utilizing asynchronous request queues to handle
Caesium is an image compression tool that reduces file sizes for JPG, PNG, WebP, and TIFF images while preserving visual quality and metadata. It operates as a cross-platform desktop application with a graphical interface, a command-line tool for scripting and automation, and a web-based interface for browser uploads, all supporting batch processing of multiple images at once. The tool distinguishes itself by offering multiple interaction modes — desktop, terminal, and web — each capable of handling the same core compression tasks. It preserves folder structure when saving compressed images,
Sidekiq is a background job processor and queue manager for Ruby that uses Redis to manage asynchronous tasks. It functions as a distributed task scheduler capable of handling periodic, delayed, and recurring jobs across a cluster of worker processes. The project features a job monitoring dashboard and administrative web interface for visualizing system state, tracking worker performance, and managing failed or dead jobs. It provides a distributed rate limiter to control execution frequency across multiple processes. The framework covers a broad range of operational capabilities, including j
BullMQ is a Redis-backed message queue library and background processor designed for distributed task queueing. It functions as a distributed queue manager and task scheduler, utilizing Redis to manage asynchronous job processing and persistence. The system distinguishes itself through its role as a job workflow orchestrator, enabling the definition of complex parent-child job dependencies and hierarchies for multi-step workflows. It provides sandboxed process execution to isolate heavy workloads and prevent event loop blocking, alongside distributed rate limiting to protect downstream servic
Ale is a Neovim LSP client and asynchronous linter wrapper designed to integrate language servers and syntax checkers into the editor. It provides infrastructure for background syntax validation and automated code fixing without blocking the editor interface. The project implements the Language Server Protocol to enable advanced semantic navigation, including symbol renaming, definition jumping, and the application of automatic refactoring changes. It functions as an automatic code fixer that applies formatting and repairs based on feedback from linting tools and language servers. The plugin
Android-Universal-Image-Loader is an image loading library for Android applications designed to download, cache, and display images. It functions as a bitmap cache manager and processing framework that handles the retrieval of assets from remote URLs or local files. The library includes specialized utilities for extracting static frames from video files to generate thumbnails. It also provides a framework for applying visual transformations to loaded images, such as circular crops and rounded corners. The system manages performance through a two-tier caching hierarchy using both memory and d
Synapse is a Matrix homeserver implementation that provides the infrastructure for decentralized, real-time communication and messaging. It functions as a federated chat server that synchronizes room data and event streams across independent server instances to enable cross-domain interoperability. The server utilizes a hybrid core that integrates performance-critical logic in Rust with a Python orchestration layer. It employs a PostgreSQL relational database for persisting user accounts and conversation history, and uses a Redis-based messaging system to distribute tasks across horizontal wo
NoteShrink is a document image optimizer and handwritten note PDF converter designed to transform scans of handwritten pages into compact, high-contrast digital documents. It functions as an image optimization pipeline that isolates foreground text from backgrounds to reduce the total storage size of the resulting files. The utility minimizes the disk footprint of digitized notes through a combination of color palette reduction and the use of external image compression tools. This process removes background noise and limits the number of colors in an image to create high-contrast visuals. Th
MBProgressHUD is an Objective-C UI component and progress HUD library for iOS. It provides a screen-blocking activity indicator overlay that informs users of ongoing background processes using customizable icons and status labels. The library manages translucent interface layers to provide background task feedback and overlay management. It visualizes the completion percentage of long-running tasks through a dynamic overlay that prevents user interaction until a process completes.
This project is a compatibility layer and abstraction library for building native C++ addons for Node.js. It provides a consistent C++ API that allows a single codebase to compile against multiple versions of the V8 JavaScript engine by hiding version-specific differences behind macros and inline functions. The toolkit differentiates itself through specialized wrappers and managers, including a monadic wrapper for handles to avoid explicit null checks, a persistent reference manager for objects that must survive handle scope disposal, and a buffer abstraction API for version-compatible memory
Celery is an asynchronous job processor and distributed task queue designed to offload time-consuming operations to background worker nodes. By utilizing a message-passing architecture, it decouples task producers from consumers, allowing applications to maintain responsiveness while scaling workloads across multiple isolated environments. The system functions as a distributed workload orchestrator that manages the lifecycle of deferred operations through persistent queues. It distinguishes itself by providing a pluggable transport abstraction, which allows the core task logic to remain indep
TakePhoto is an Android media capture framework and image processing library designed to manage photo acquisition and manipulation. It provides a toolkit for capturing new images via the device camera and selecting existing images from the system gallery or local file storage. The framework distinguishes itself through automatic activity and session state restoration, which recovers the capture process after the system recycles an activity. It also includes a unified handler for managing runtime media permissions for camera and storage access across different Android versions. The library co
This project is a comprehensive learning resource and technical reference for reactive programming with RxJS. It provides a structured curriculum, curated examples, and an indexed operator catalog to help developers shift from imperative to declarative programming using observable data streams and functional operators. The repository features a library of reactive UI patterns and implementation recipes. These cover practical applications such as type-ahead search, game loops, gesture-based interactions like swipe-to-refresh, and security overlays like lockscreens. The resource covers a broad
Spaceship Prompt is a modular, highly customizable Zsh prompt framework designed to provide rich contextual information directly within the command line interface. It functions as a shell environment monitor, allowing users to track system metrics, version control status, and development environment details through a structured, theme-based layout. The framework distinguishes itself through an asynchronous execution model that offloads resource-intensive status checks to background processes, ensuring the terminal remains responsive during prompt generation. It supports incremental rendering,
Ale is an asynchronous code analysis tool and integrated development environment plugin designed for lightweight text editors. It functions as a language server protocol client, enabling real-time code intelligence and diagnostic feedback by running analysis tasks in the background to ensure the editor interface remains responsive during intensive operations. The plugin utilizes an event-driven architecture to monitor text buffers and trigger linting or formatting routines automatically. It distinguishes itself through a modular extensibility framework that supports a wide range of language-s
Bolts-Swift is a concurrency control framework designed to manage asynchronous workflows in native mobile applications. It provides a collection of primitives that allow developers to orchestrate background operations through a promise-based model, replacing deeply nested callback structures with chainable task sequences. The library distinguishes itself by offering granular control over task lifecycles and execution environments. It enables developers to define custom executors for specific threading contexts and provides mechanisms to manually signal the completion, error, or cancellation o
This is a comprehensive library of code examples and reference implementations for building cross-platform user interfaces with Flutter. The project provides a collection of demo applications and guides designed to illustrate the implementation of design patterns, animation techniques, and testing workflows. The repository features specific demonstrations for native integration, including examples of embedding modules into existing native applications, using platform channels, and bridging native code with the framework. It also serves as an animation reference, providing implementations for
Iced is a cross-platform GUI library for Rust designed for building native desktop applications. It functions as a reactive toolkit that manages application state by mapping user interactions to messages, which then trigger automatic view refreshes. The framework utilizes a rendering system that supports both hardware-accelerated GPU graphics and software backends to ensure compatibility across multiple operating systems. It implements a reactive model inspired by the Elm architecture to coordinate state updates and view reconciliation. The toolkit includes a flexible layout engine and a mod
This project serves as a comprehensive educational roadmap and curriculum for mastering professional Android application development. It provides a structured learning path that guides developers through the essential system design principles, architectural patterns, and technical skills required to build, test, and deploy scalable mobile software. The resource distinguishes itself by organizing complex technical topics into a logical sequence, covering everything from foundational mobile development tooling to advanced software engineering practices. It emphasizes industry-standard patterns
Effector is a reactive state management library designed for building complex, event-driven applications. It functions as a data flow engine that models application logic as a directed acyclic graph, ensuring that state updates propagate automatically through interconnected nodes. By utilizing atomic state updates and declarative unit composition, the library maintains data consistency and provides a predictable execution model for managing application state. The project distinguishes itself through its framework-agnostic architecture, which decouples business logic from user interface implem
Lottie-android is a native vector animation engine and library for Android that parses JSON specification files into high-fidelity animations. It functions as a JSON animation parser and renderer, translating After Effects exported data into native draw calls to maintain design fidelity on mobile devices. The library supports dynamic user interface control by allowing the modification of animation properties, such as colors, text, and shape attributes, during runtime playback. It also integrates with system-level accessibility settings to adjust playback and visibility in accordance with redu
This repository provides a comprehensive collection of functional code samples designed to demonstrate modern development patterns and architectural practices for the Android platform using Kotlin. It serves as a practical guide for implementing standard design patterns that decouple business logic from user interface components, ensuring that applications remain maintainable and testable. The project distinguishes itself by offering isolated, hands-on implementations of complex mobile programming tasks. It covers a wide range of capabilities, including asynchronous networking, local database