- ℹ️ You probably want to use the JavaScript module gifski-wasm which uses this library
Highest-quality GIF encoder for the Web based on pngquant and the original gifski.
This fork simplifies the Original gifski library in order to make it more easily compatible with the Web and as a WebAssembly module.
gifski-lite is intended to target the Web only (potentially Node.js and Deno too).
The recommended way is to add this library as a dependency to a rust project that compiles to WebAssembly.
Currently used in gifski-wasm package. It is quite slow due to lack of now fast because it supports web-workers.
See the WASM Web App in action at gifski-wasm.netlify.app and other example usage at jamsinclair/gifski-wasm/examples.
- Install Rust via rustup or run
rustup update
. This project only supports up-to-date versions of Rust. You may get compile errors, warnings about "unstable edition", etc. if you don't runrustup update
regularly. - Clone the repository:
git clone https://github.com/jamsinclair/gifski-lite
- In the cloned directory, run:
cargo build --release
AGPL 3 or later.
This is a fork of the original gifski project. This fork makes some significant changes:
- Refactors to optionally use rayon for parallel processing
- Remove features for ffmpeg and gifsicle
- Removes CLI tool and other compiled binaries
- Removes support for adding PNG frame files
- Removes C API