All Projects → SOF3 → Include Flate

SOF3 / Include Flate

Licence: apache-2.0
A variant of include_bytes!/include_str! with compile-time deflation and runtime lazy inflation

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Include Flate

phoenix bakery
Better compression for your Phoenix assets
Stars: ✭ 25 (-71.26%)
Mutual labels:  compression, assets
Shapes2d
Shapes2D for Unity3D - Make simple art assets quickly in Unity
Stars: ✭ 83 (-4.6%)
Mutual labels:  assets
Bytom
Official Go implementation of the Bytom protocol
Stars: ✭ 1,163 (+1236.78%)
Mutual labels:  assets
Squeezer
Flexible general-purpose compressor with a touch of citrus
Stars: ✭ 78 (-10.34%)
Mutual labels:  compression
Opus
Modern audio compression for the internet.
Stars: ✭ 1,171 (+1245.98%)
Mutual labels:  compression
Swiftassetspickercontroller
A simple assets picker controller based on iOS 8 Photos framework. Supports iCloud photos and videos. It's written in Swift.
Stars: ✭ 81 (-6.9%)
Mutual labels:  assets
Deepzip
NN based lossless compression
Stars: ✭ 69 (-20.69%)
Mutual labels:  compression
Compress.js
A simple JavaScript based client-side image compression algorithm
Stars: ✭ 86 (-1.15%)
Mutual labels:  compression
Hugo Bootstrap Premium
Hugo appernetic bootstrap premium theme
Stars: ✭ 82 (-5.75%)
Mutual labels:  assets
Ofxio
A collection of I/O core utils including a directory watcher, file filters and ordering, compression and more.
Stars: ✭ 78 (-10.34%)
Mutual labels:  compression
Deprecated Lame Mirror
[DEPRECATED] Old, Semi-official mirror of the CVS repository of the LAME MP3 encoder.
Stars: ✭ 73 (-16.09%)
Mutual labels:  compression
Redoflacs
Parallel BASH commandline FLAC compressor, verifier, organizer, analyzer, and retagger
Stars: ✭ 71 (-18.39%)
Mutual labels:  compression
Denoflate
WebAssembly powered Deflate/Gzip/Zlib compression for Deno, written in Rust
Stars: ✭ 80 (-8.05%)
Mutual labels:  compression
Bolt
Fast approximate vector operations
Stars: ✭ 70 (-19.54%)
Mutual labels:  compression
Unity Abstract Wire
Unity Abstract Wires Effect
Stars: ✭ 83 (-4.6%)
Mutual labels:  assets
Zip
Efficient library for manipulating zip archives
Stars: ✭ 69 (-20.69%)
Mutual labels:  compression
Html Compress Twig
Twig extension for compressing HTML and inline CSS/JS using WyriHaximus/HtmlCompress
Stars: ✭ 72 (-17.24%)
Mutual labels:  compression
Compression
Learned image compression
Stars: ✭ 79 (-9.2%)
Mutual labels:  compression
Csso Rails
CSS Optimizer(csso) ruby wrapper for Rails Asset pipeline
Stars: ✭ 86 (-1.15%)
Mutual labels:  compression
Gifcompressor
An Android tool to compresses your GIFs into lightweight MP4 video using fast, hardware-accelerated encoders. Supports cropping, rotation, GIF concatenation and much more.
Stars: ✭ 85 (-2.3%)
Mutual labels:  compression

include-flate

!CI crates.io docs.rs

A variant of include_bytes!/include_str! with compile-time deflation and runtime lazy inflation.

Why?

include_bytes!/include_str! are great for embedding resources into an executable/library without involving the complex logistics of maintaining an assets manager. However, they are copied as-is into the artifact, leading to unnecessarily large binary size. This library automatically compresses the resources and lazily decompresses them at runtime, allowing smaller binary sizes.

Nevertheless, this inevitably leads to wasting RAM to store both the compressed and decompressed data, which might be undesirable if the data are too large. An actual installer is still required if the binary involves too many resources that do not need to be kept in RAM all time.

Warning

This library compresses included data independently. It is usually more effective to compress the whole output binary together (e.g. distributing .exe.gz ) than to compress independently. In addition, compression algorithms usually produce smaller artifacts by processing the raw input together than by processing already-compressed output. #[cfg_attr] might come handy for conditionally using compression or direct data inclusion.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].