Box is under active development. Do not expect compatibility between versions until v1.0. |
box
command line applicationbox-format
Rust crate and open specificationfusebox
demonstration FUSE driver
The .box
file format and related tooling is designed to be a modern successor to formats such as
.zip
and .7z
, removing several painpoints and introducing modern features and expectations:
🌉 | Cross-platform path support, with relative paths only and platform-agnostic separators |
🌐 | UTF-8 only, Unicode normalised path names and string data |
🔍 | FST-based indexing for extremely fast path lookups |
👩🚀 | Extensible with space-efficient attributes in key-value pairs for records and whole archives |
Configurable optional byte-alignment of files to enable easy memory mapping | |
💽 | Inode-based metadata for tree-based structuring, mapping closely to how filesystems work |
📁 | Support for directories, files and links |
🗜️ | Multiple compression methods within a single archive |
🖥️ | A truly cross-platform command line tool |
📜 | Well-defined, open specification of file format (due before v1.0) |
Currently supported compression methods:
- Stored (no compression)
- Brotli
- DEFLATE
- Snappy
- xz
- Zstandard
- Windows
- macOS
- Linux
Licensed under
- European Union Public License, version 1.2, (LICENSE or https://joinup.ec.europa.eu/collection/eupl/eupl-text-11-12)
The EUPL is a copyleft, GPL-compatible license managed by the European Union, translated into multiple languages. See this introduction for information about the purpose, objectives and translations of the license. See also the license compatibility matrix.