| Crates.io | montana-brotli |
| lib.rs | montana-brotli |
| version | 0.0.1 |
| created_at | 2025-12-16 16:54:18.980174+00 |
| updated_at | 2025-12-16 16:54:18.980174+00 |
| description | Brotli compression implementation for Montana |
| homepage | https://github.com/base/montana |
| repository | https://github.com/base/montana |
| max_upload_size | |
| id | 1988267 |
| size | 22,795 |
Brotli compression implementation for the Montana batch submission pipeline.
This crate provides a BrotliCompressor that implements the Compressor trait from montana-pipeline. Brotli provides excellent compression ratios, especially for text-like data such as RLP-encoded transactions.
use montana_brotli::BrotliCompressor;
use montana_pipeline::Compressor;
// Create a compressor with default settings
let compressor = BrotliCompressor::default();
// Or use presets
let fast = BrotliCompressor::fast(); // Level 1 - fastest
let balanced = BrotliCompressor::balanced(); // Level 6 - good balance
let max = BrotliCompressor::max_compression(); // Level 11 - maximum compression
// Compress data
let data = b"Hello, World!";
let compressed = compressor.compress(data).unwrap();
// Decompress data
let decompressed = compressor.decompress(&compressed).unwrap();
assert_eq!(decompressed, data);
Brotli supports compression levels 0-11: