awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
Back to donaldcwl/browser-image-compression

Projects sharing features with Browser Image Compression

30 open-source projects similar to donaldcwl/browser-image-compression, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.

  • nodeca/picanodeca avatar

    nodeca/pica

    4,111View on GitHub↗

    Pica is a client-side utility for browser-based image scaling, format transformation, and file optimization. It functions as a canvas image processor that transforms data between canvas elements, bitmaps, and blobs for local manipulation within the web browser. The library distinguishes itself through high-quality downscaling using Lanczos resampling and a multi-threaded processing model. It utilizes web workers to split image processing into tiles across CPU cores to increase resizing speed. The project covers a broad range of image manipulation capabilities, including high-quality scaling

    TypeScriptimageresize
    View on GitHub↗4,111
  • fengyuanchen/compressorjsfengyuanchen avatar

    fengyuanchen/compressorjs

    5,749View on GitHub↗

    Compressorjs is a client-side image compression library that reduces file sizes in the browser before upload, using the HTML Canvas API to re-encode images into smaller File or Blob objects. It supports JPEG, PNG, and WebP formats, with configurable quality and dimension controls to balance file size and visual fidelity. The library distinguishes itself through several integrated capabilities. It reads Exif orientation metadata from JPEG images and automatically rotates or flips the canvas to ensure correct display after compression. An AbortController integration allows cancellation of an in

    JavaScriptfile-uploadimage-compressionimage-compressor
    View on GitHub↗5,749
  • jnordberg/gif.jsjnordberg avatar

    jnordberg/gif.js

    4,969View on GitHub↗

    gif.js is a JavaScript GIF encoder and client-side color quantizer that generates animated GIF files directly within the web browser. It functions as an HTML5 canvas exporter and image processor, allowing for the creation of animated images from web sources without the need for a backend server. The library utilizes web workers to offload heavy image encoding tasks to background threads, which prevents the browser user interface from freezing during the generation process. This architecture enables the tool to act as a web worker image processor for dynamic image generation. The system cover

    JavaScript
    View on GitHub↗4,969

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Find more with AI search
  • wojtekmaj/react-pdfwojtekmaj avatar

    wojtekmaj/react-pdf

    10,920View on GitHub↗

    React-pdf is a library of components designed to integrate document viewing and interaction into web applications. It provides a standardized interface for parsing and displaying portable document format files directly within a browser environment, supporting input from local files, remote web addresses, and encoded data strings. The library renders document content onto HTML5 canvas elements to ensure consistent visual display across browsers. To maintain interface responsiveness during document processing, it offloads parsing tasks to background threads. It also implements a layered approac

    TypeScriptpdfpdf-viewerreact
    View on GitHub↗10,920
  • azat-co/practicalnodeazat-co avatar

    azat-co/practicalnode

    3,787View on GitHub↗

    Practicalnode is a comprehensive educational resource and backend development framework for mastering server-side programming with Node.js. It provides a structured approach to building scalable network services, REST APIs, and real-time applications using asynchronous JavaScript. The project serves as a detailed implementation guide for several core backend patterns, including MongoDB data modeling and the construction of REST API development kits. It emphasizes a specific workflow for Docker containerization and offers a variety of strategies for managing user identity through stateless tok

    JavaScriptapressawsaws-ec2
    View on GitHub↗3,787
  • kyleduo/tinypng4mackyleduo avatar

    kyleduo/TinyPNG4Mac

    3,999View on GitHub↗

    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

    Swift
    View on GitHub↗3,999
  • oxipng/oxipngoxipng avatar

    oxipng/oxipng

    4,032View on GitHub↗

    Oxipng is a high-performance command-line utility written in Rust designed for lossless PNG image optimization and data minimization. It functions as a lossless compressor that reduces file sizes without altering visual quality. The tool distinguishes itself through the use of multi-threaded task parallelism to accelerate the processing of large image batches. It employs iterative recompression strategies and symmetric-pass optimization to find the smallest possible file size for each image. The software's capability surface covers the removal of non-essential metadata chunks and the normali

    Rustimage-compressionimage-optimizationpng
    View on GitHub↗4,032
  • meowtec/imaginemeowtec avatar

    meowtec/Imagine

    4,373View on GitHub↗

    Imagine is a cross-platform desktop application for image optimization, compression, and format conversion. It functions as a batch image compressor and converter designed to reduce file sizes for PNG and JPEG assets. The tool supports both lossy and lossless compression methods to shrink the footprint of image files. It provides utilities for changing image formats to ensure compatibility across different operating systems and platforms. The application focuses on web asset optimization and batch processing, allowing multiple images to be processed simultaneously to reduce bandwidth usage a

    TypeScript
    View on GitHub↗4,373
  • nodeca/pakonodeca avatar

    nodeca/pako

    6,081View on GitHub↗

    Pako is a pure JavaScript compression library that ports the C zlib library to JavaScript, providing deflate and gzip compression and decompression capabilities. It runs in both browser and Node.js environments by using typed arrays and universal JavaScript, avoiding platform-specific APIs for cross-platform compatibility. The library handles data through bitwise operations for Huffman coding and LZ77 matching, and automatically encodes string inputs to UTF-8 before compression while decoding them back on decompression. It supports streaming chunk-based processing, allowing incremental data h

    JavaScript
    View on GitHub↗6,081
  • pieroxy/lz-stringpieroxy avatar

    pieroxy/lz-string

    4,416View on GitHub↗

    lz-string is a JavaScript library and command-line tool for compressing and decompressing string data using Lempel-Ziv algorithms. It provides utilities to reduce the size of strings and files to optimize storage and network bandwidth. The project includes specialized encoders to ensure compressed data is compatible with different transport layers. These include options for Base64 encoding, UTF-16 string mapping for increased storage density, and URI-safe translation for use in web addresses. The library supports client-side data compression for local storage optimization and provides a comm

    TypeScript
    View on GitHub↗4,416
  • feross/bufferfeross avatar

    feross/buffer

    1,883View on GitHub↗

    Buffer is a library for binary data manipulation that provides a browser-compatible implementation of the Node.js binary data application programming interface. It enables developers to create, modify, and process raw binary data structures within web environments using a consistent interface that mirrors server-side standards. The library distinguishes itself by providing a unified approach to cross-platform JavaScript development, allowing for shared code between server and browser environments. It achieves this by polyfilling standard binary methods and extending the native byte array prot

    JavaScriptbrowserbrowserifybuffer
    View on GitHub↗1,883
  • qwikdev/partytownQwikDev avatar

    QwikDev/partytown

    13,706View on GitHub↗

    Partytown is a library designed to offload resource-intensive third-party scripts to background web workers. By executing these scripts outside of the main thread, it prevents them from blocking the critical rendering path, thereby maintaining a responsive user interface and improving overall page load performance. The project functions as a web worker proxy library that synchronizes browser interfaces between the main thread and background environments. It uses proxy-based access and synchronous messaging to replicate global objects like the window and document, allowing scripts to interact

    TypeScript3rd-party3rdpartyanalytics
    View on GitHub↗13,706
  • rq/rqrq avatar

    rq/rq

    10,653View on GitHub↗

    rq is a distributed task queue and background worker system for Python that uses a Redis backend to decouple task submission from execution. It functions as a reliable message queue and task scheduler, allowing Python functions or asyncio coroutines to be processed asynchronously across multiple worker processes. The project distinguishes itself through reliable queuing mechanisms that prevent job loss during worker crashes using atomic operations. It provides specialized orchestration capabilities, including the prevention of duplicate jobs, job execution prioritization, and the ability to m

    Pythonasyncbackground-jobsdelayed-jobs
    View on GitHub↗10,653
  • picturepan2/instagram.csspicturepan2 avatar

    picturepan2/instagram.css

    4,014View on GitHub↗

    instagram.css is a CSS image filter library and a pure CSS UI component. It provides a collection of predefined stylesheets designed to apply photographic filters and color grading to web images. The library achieves these visual effects without the use of JavaScript or external image processing libraries. It uses a system of CSS filter functions to orchestrate brightness, contrast, and saturation, mapping specific aesthetic names to hardcoded property sets. The project covers client-side image processing and frontend UI customization. It allows for the application of photo filters to create

    CSS
    View on GitHub↗4,014
  • rsmbl/resemble.jsrsmbl avatar

    rsmbl/Resemble.js

    4,608View on GitHub↗

    Resemble.js is a JavaScript image comparison library and pixel-based visual regression tool. It functions as an image analysis engine that calculates the percentage of visual difference between two images and generates a diff image to highlight mismatched areas. The library utilizes a canvas-based approach to identify differences, providing capabilities for automated image comparison and UI component validation. It includes specialized filtering to reduce false positives by ignoring visual noise such as antialiasing and specific colors. The toolset covers image dimension normalization, analy

    JavaScript
    View on GitHub↗4,608
  • xyxiao001/vue-cropperxyxiao001 avatar

    xyxiao001/vue-cropper

    4,565View on GitHub↗

    vue-cropper is a visual interface component for Vue applications designed for cropping, rotating, and resizing images. It serves as a client-side image editor that allows for the extraction of specific image regions and the enforcement of fixed ratio constraints to ensure consistent output. The component provides tools for manipulating image orientation and scaling through rotation and positioning to align target areas. It utilizes a canvas-based processor to generate final cropped results, which can be exported as Base64 strings or Blobs in various common file formats. The library covers a

    Vuecropcropperjavascript
    View on GitHub↗4,565
  • wendux/flyW

    wendux/fly

    3,927View on GitHub↗

    Fly is an HTTP client library and cross-platform network wrapper that provides a unified Promise-based interface for managing network requests across diverse JavaScript runtimes and operating systems. It functions as a multi-runtime request manager, abstracting underlying HTTP engines to ensure consistent behavior between browsers and native environments. The library features a middleware system for capturing and modifying outgoing requests and incoming responses through a request interceptor pipeline. It employs adapter-based engine switching to maintain a consistent API across different pla

    JavaScript
    View on GitHub↗3,927
  • zetbaitsu/compressorzetbaitsu avatar

    zetbaitsu/Compressor

    7,222View on GitHub↗

    Compressor is an Android image compression library designed to reduce the file size and dimensions of images within mobile applications. It functions as a bitmap optimizer that adjusts image quality and formats to minimize storage footprints and improve network upload speeds. The library operates as an asynchronous image processor, utilizing background threads and reactive streams to compress high-resolution photos. This execution model prevents user interface freezes and maintains application responsiveness during heavy image manipulation tasks. The project covers a broad range of image opt

    Kotlin
    View on GitHub↗7,222
  • futureverse/futurefutureverse avatar

    futureverse/future

    1,013View on GitHub↗

    Future is a unified framework for parallel and distributed computing in R that abstracts infrastructure complexity to enable asynchronous task execution. It provides a consistent interface for dispatching intensive computations to local multicore processors or remote clusters, allowing developers to manage background jobs without blocking the main session. The framework distinguishes itself through a strategy-based execution abstraction that decouples task definitions from the underlying compute backend. This allows for the seamless swapping of execution environments while maintaining global

    Rasynchronouscrandistributed-computing
    View on GitHub↗1,013
  • blueimp/javascript-load-imageblueimp avatar

    blueimp/JavaScript-Load-Image

    4,463View on GitHub↗

    This is a JavaScript image loading library and a suite of utilities for binary metadata parsing and canvas-based transformations. It provides a unified interface for loading images from URLs, Blobs, or Files into HTML elements. The library includes a canvas-based image transformer for producing scaled, cropped, or rotated images and an image orientation handler that rotates or flips images based on embedded metadata. It also features an Exif metadata parser to extract IPTC and Exif tags and embedded thumbnails from binary image data. The toolset covers browser-based image processing, includi

    JavaScript
    View on GitHub↗4,463
  • esimov/pigoesimov avatar

    esimov/pigo

    4,710View on GitHub↗

    Pigo is a computer vision library written in Go for locating human faces in images and video streams. It provides tools for face detection, facial landmark identification, and pupil and eye localization. The project is implemented in pure Go to ensure portable execution without external dependencies. It supports compilation to WebAssembly, enabling face detection and image processing to run directly in web browsers without a backend. The library's capabilities include real-time face detection using classifier cascades and gaze tracking localization. It maps anatomical points on the face to a

    Gocomputer-visioneye-detectionface-detection
    View on GitHub↗4,710
  • dockersamples/example-voting-appdockersamples avatar

    dockersamples/example-voting-app

    5,622View on GitHub↗

    This is a distributed voting application designed to demonstrate a multi-service architecture. It uses stateless web frontends for submitting votes and viewing live results, with a Redis-backed queue to buffer incoming votes and a PostgreSQL database for persistent tallying. The application is built around asynchronous message queue processing, decoupling the vote submission from the tallying workflow. The project showcases how to deploy a multi-service application using container orchestration tools. It provides YAML-driven declarative deployment manifests for Docker Compose, Docker Swarm, a

    C#demodockerdocker-compose
    View on GitHub↗5,622
  • behaviortree/behaviortree.cppBehaviorTree avatar

    BehaviorTree/BehaviorTree.CPP

    4,070View on GitHub↗

    BehaviorTree.CPP is a C++ library for designing task-switching logic and reactive behaviors using a hierarchical tree structure. It provides a framework for creating reactive logic systems that manage complex behaviors through an execution engine and a centralized data store for sharing state between nodes. The library decouples high-level behavioral logic from source code by using an XML parser to define tree morphology. It further extends its functionality through a dedicated visualizer for monitoring real-time execution states and a specialized bridge for integrating ROS2 actions and servi

    C++
    View on GitHub↗4,070
  • mholt/papaparsemholt avatar

    mholt/PapaParse

    13,492View on GitHub↗

    PapaParse is a delimited text processing library that converts CSV files into JSON objects or arrays. It provides a suite of tools for parsing delimited text and transforming structured data objects back into CSV formats through bidirectional serialization. The library is characterized by its ability to process massive datasets using incremental streaming and chunk-based processing to prevent memory overload. It includes an automatic delimiter detector to identify separator characters without manual configuration and utilizes web workers to offload parsing logic to background threads, keeping

    JavaScript
    View on GitHub↗13,492
  • openpanel-dev/openpanelOpenpanel-dev avatar

    Openpanel-dev/openpanel

    5,349View on GitHub↗

    OpenPanel is a self-hosted product analytics platform designed for tracking user behavior and visualizing product metrics on private infrastructure. It provides a comprehensive system for collecting events across web, mobile, and server environments while ensuring complete ownership of data. The platform distinguishes itself through a privacy-first approach, utilizing cookieless event tracking and regional data residency to simplify regulatory compliance. It integrates large language models via the Model Context Protocol, enabling users to query behavioral data and analyze trends using natura

    TypeScriptalternativeanalyticsopen-source
    View on GitHub↗5,349
  • bbc/imager.jsbbc avatar

    bbc/Imager.js

    3,820View on GitHub↗

    Imager.js is a responsive image loader library and asset delivery optimizer. It serves as a browser-based image manager that delivers optimized image variants based on device screen dimensions and pixel density. The library maps abstract image identifiers to concrete network requests for third-party hosting services. It dynamically updates image source attributes during window resize events and translates numeric widths into custom strings to match specific asset naming conventions. The system provides capabilities for responsive image delivery, including lazy loading to defer downloads unti

    JavaScript
    View on GitHub↗3,820
  • developit/workerizedevelopit avatar

    developit/workerize

    4,378View on GitHub↗

    Workerize is a web worker module loader and main thread offloader. It functions as an asynchronous proxy wrapper that allows JavaScript modules to run in background workers, preventing browser UI freezes by delegating computationally expensive tasks to separate threads. The project utilizes a proxy-based interface to call functions inside a background worker as if they were local asynchronous calls. This mechanism enables the execution of modules in parallel workers to maintain main thread responsiveness. The system covers asynchronous module execution and web worker integration, focusing on

    JavaScript
    View on GitHub↗4,378
  • jdg/mbprogresshudjdg avatar

    jdg/MBProgressHUD

    15,949View on GitHub↗

    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.

    Objective-C
    View on GitHub↗15,949
  • googlechromelabs/squooshGoogleChromeLabs avatar

    GoogleChromeLabs/squoosh

    24,771View on GitHub↗

    Squoosh is a browser-based image optimizer that compresses and converts image files directly within the local environment. By performing all operations on the user device, it eliminates the need for server-side processing, ensuring that sensitive data remains private and reducing network latency. The tool utilizes a collection of high-performance image codecs compiled via WebAssembly to provide professional-grade file optimization and format conversion. To maintain interface responsiveness during resource-intensive tasks, the application offloads image manipulation to background threads and u

    TypeScript
    View on GitHub↗24,771
  • ffmpegwasm/ffmpeg.wasmffmpegwasm avatar

    ffmpegwasm/ffmpeg.wasm

    17,184View on GitHub↗

    ffmpeg.wasm is a browser-based multimedia processing engine that brings the capabilities of the FFmpeg library directly to the client environment. By utilizing WebAssembly, it enables audio and video transcoding, format conversion, and stream recording to occur entirely within the browser without requiring server-side infrastructure. The library distinguishes itself by executing resource-intensive media tasks in background threads, ensuring that the main user interface remains responsive during complex operations. It manages data through an isolated, in-memory virtual file system, allowing fo

    Caudioexperimental-featuresffmpeg
    View on GitHub↗17,184