ReadMe.md

May 9, 2026 · View on GitHub

ImgCompress logo

ImgCompress

Every image format. Zero cloud.

Convert 70+ formats, compress in bulk, and remove backgrounds with local AI.
Everything runs inside your container, so your files never leave your server.

Features and Capabilities Setup Guide

Docker Pulls GitHub Stars

Website · Docs · Installation Guide · Docker Hub · Issues


ImgCompress Web UI, upload and configure dashboard

What is ImgCompress?

ImgCompress is a self-hosted image processing server that runs entirely inside a single Docker container. It handles compression, format conversion, and AI-powered background removal, all locally on your own hardware. No cloud APIs, no third-party uploads, no tracking.

Built for people, homelab enthusiasts, and anyone who values privacy and owns their data.


Features

FeatureDetails
70+ Image FormatsHEIC, HEIF, PSD, AVIF, EPS, PDF, WebP, TIFF, BMP, GIF, and 60+ more
Local AI Background RemovalBundled model runs on your CPU. No API key, no subscription, no upload
Bulk CompressionMulti-core parallel processing across entire photo libraries
Format ConversionHEIC to WebP, PSD to JPG, image batches to paginated PDF, and more
Web UI + CLIBrowser dashboard for day-to-day use; CLI for scripting pipelines
Single ContainerEvery codec and library pre-bundled, zero host dependencies
Air-Gap ReadyOnce pulled, runs fully offline. No internet required, ever

AI Background Removal: Local & Private

Stop uploading personal or client photos to cloud-based removers. ImgCompress ships a bundled AI model that runs background removal on your own hardware. No API call, no subscription, no file ever leaves your server.

OriginalBackground Removed
Original sunset landscape photoSame photo with background removed by local AI

Quick Start

Pull the image, open localhost:3001, start converting. About 60 seconds total.

docker run -d \
  --name imgcompress \
  -p 3001:5000 \
  karimz1/imgcompress:latest

For Docker Compose, environment variables, and deploying without the mascot, see the full installation guide.


Why I Built ImgCompress

I was tired of the "software loop." Every time I needed something simple, I had to install another app:

  • PSD files: Needed specialized software just to convert them to an image file.
  • HEIC files: Needed another converter for regular photo files.
  • Image to PDF: Needed another app just to share a screenshot for work, since a PDF is often better for emails and easy for others to print.
  • AI Backgrounds: I realized I needed one more app for that too.

I thought to myself: "Why can't one tool just do it all?" Plus, uploading personal photos to random online converters never felt right to me.

One Toolbox for Everything

So I built a single toolbox that can take over 70 different formats and fix them all in one place. Whether you need to convert PSD or HEIC files to an image, turn a screenshot into a PDF for a work email, or shrink a massive 4K photo, this tool does it automatically.

The community has now pulled the image tens of thousands of times, which shows the pain is real.

Why Docker?

I chose Docker because it keeps your computer clean. Instead of you having to install 70 different messy libraries on your system, I packed everything into one Ready-to-go Box that you can run anywhere called imgcompress. It just works.


Privacy by Design

No cloud processingConversions, compression, and AI inference all run locally. Images never leave your machine.
No telemetryNo analytics, no crash reporting, no feature flags phoning home. Completely silent on the network after startup.
Offline after pullOnce the image is pulled, no internet connection is ever needed again. No license checks, no expiry.
Open sourceGPL-3.0. Audit the code, fork it, self-host it forever.

Documentation


Contributing

Contributions are welcome: bug reports, format requests, or pull requests.

Tip

New contributor? The project ships a VS Code Dev Container with all 70+ image libraries and the AI environment pre-configured. Working local setup in under a minute. See the Developer Guide.

  • Read the Contributing Guide before opening a PR
  • Browse good-first-issue labels for a starting point
  • Every change is verified by a Playwright E2E suite that covers all supported formats

Note

Meet imgcompress-chan, the repo's custom helper bot. She auto-merges Dependabot PRs once CI passes, and if a frontend dependency update leaves a broken pnpm-lock.yaml you can also ask her to fix it on the spot:

Hey chan, can you /chan-fix it please? 💛

She'll refresh the branch from main, regenerate the lockfile, and push the repair commit so CI re-runs. More tricks coming as she learns.


License & Author

Author: Karim Zouine
License: GPL-3.0
Docker Image: hub.docker.com/r/karimz1/imgcompress

If ImgCompress saves you time, a GitHub star helps others discover it.