An image conversion API written in Rust! Supports png, jpeg, webp, gif, bmp, tiff, ico, avif, heic & resizing
  • Rust 96.8%
  • Shell 3.2%
Find a file
2026-10-18 16:33:29 +02:00
.cargo Fix build 2026-10-03 21:52:44 +02:00
.github/workflows v1.2.0 2026-10-18 16:33:29 +02:00
libs Fix build 2026-10-03 21:52:26 +02:00
scripts Fix build 2026-10-03 21:52:44 +02:00
src v1.2.0 2026-10-18 16:33:29 +02:00
.env.example Initial commit 2026-10-03 17:27:30 +02:00
.gitignore Fix build 2026-10-03 21:52:44 +02:00
.gitmodules Fix build 2026-10-03 21:52:44 +02:00
Cargo.toml v1.2.0 2026-10-18 16:33:29 +02:00
LICENSE Initial commit 2026-10-03 17:27:30 +02:00
README.md v1.2.0 2026-10-18 16:33:29 +02:00

image_converter

An image conversion API written in Rust! Supports png, jpeg, webp, gif, bmp, tiff, ico, avif, heic, hdr, psd, pdf, qoi, jxl & resizing

Running

  1. Download a binary from the releases tab or clone the repository (if you have Rust installed). Make sure you've also got ImageMagick installed (with libjpeg-dev, libpng-dev, libwebp-dev, libtiff-dev, libheif-dev and libjxl-dev).
  2. Take a look at .env.example and create a .env file if you need to configure your server.
  3. Execute the binary you downloaded or use cargo run --release if you cloned the repository.

You may additionally need to forward the port you chose and/or allow incoming requests to that port on your firewall.

Usage

Once you've got your instance running, you may use the POST / endpoint by supplying a file and a format or dimensions to it via multipart form data.

All formats support both input and output, except psd and pdf, which are supported for output only.

That's it, it's this simple!

Contributing

Pull requests are more than welcome to the project! Feel free to open one if you feel like something needs modification or if there is any problem with the codebase.

Credits

This project is licensed under the Mozilla Public License Version 2.0.