Compression

12 projects

flate2 is the standard crate for DEFLATE, gzip and zlib streams. By default it uses miniz_oxide, a pure-Rust backend, and it can switch to zlib-ng or system zlib for speed. zstd-rs binds the reference Zstandard library and is a good default for new formats because it offers a wide range of speed and ratio trade-offs. rust-brotli, originally from Dropbox, is a pure-Rust Brotli implementation, and bzip2-rs and lzma-rust2 cover those formats.

For archives, tar-rs reads and writes tar files, zip2 continues development of the zip crate, and sevenz-rust2 handles 7z archives. These usually combine with a compressor: a .tar.gz is tar-rs writing into a flate2 encoder. Most of these crates expose the standard Read and Write traits, so you can stream data through an encoder without loading whole files into memory.

For specialised needs, gzp compresses gzip and other formats in parallel across cores, and zopfli produces smaller DEFLATE output at a large cost in time, which suits static assets compressed once. Pick zstd when you control both ends, gzip or Brotli for HTTP, and zip when users need to open the files themselves.

sevenz-rust2by hasenbanck7z

A 7z decompressor/compressor written in pure Rust

sevenz-rust20.24.11.1m/90d updated 2d ago

120

rust-brotliby dropboxBrotli

Brotli decompressor that optionally avoids the stdlib

brotli9.0.074.5m/90d updated 1mo ago

946

brotli-rsby ende76Brotli

Implementation of Brotli compression

updated 6y ago

65

bzip2-rsby trifectatechfoundationbzip2

Libbz2 bindings

bzip20.6.138.8m/90d Cupdated 8mo ago

174

zopfliby zopfli-rsgzip

Implementation of the Zopfli compression algorithm for higher quality deflate or zlib compression

zopfli0.8.449.5m/90d updated 9d ago

56

gzpby sstadickgzp

Multi-threaded encoding and decoding of deflate formats and snappy

gzp2.0.4611.7k/90d updated 1mo ago

180

lzma-rust2by hasenbanckLZMA

LZMA / LZMA2 / LZIP / XZ compression ported from tukaani xz for java

lzma-rust20.23.012.8m/90d updated 2d ago

50

flate2-rsby rust-langminiz

Miniz bindings

flate21.1.10190.7m/90d updated 2d ago

1.1k

paxitby roquess

Flexible library for compressing and decompressing files using various algorithms (zip, tar, gzip, xz, zst, etc.) with modular design for easy extension

paxit0.1.42/90d updated 1y ago

1

tar-rsby alexcrichtontar

Tar archive reading/writing

0.4.46updated 29d ago

742

zip2by zip-rszip

Read and write ZIP archives

zip9.0.587.6m/90d updated today

372

zstd-rsby gyscoszstd

Rust binding for the zstd compression library

zstd0.14.398.7m/90d updated 1d ago

661

Built on the open rust-unofficial/awesome-rust list by its contributors, licensed CC0 1.0. Crate Atlas is an independent project, not affiliated with the list's maintainers.

About Synced Oct 21, 2026

© 2026 Crate Atlas

Esc

Type to search every entry. ↑↓ to move, Enter to open.