An open API service indexing awesome lists of open source software.

https://github.com/bbqsrc/box

Box - Open Standard Archive Format, a zip killer.
https://github.com/bbqsrc/box

archive box brotli compression compression-methods deflate mmap snappy xz zip zstandard

Last synced: 11 days ago
JSON representation

Box - Open Standard Archive Format, a zip killer.

Awesome Lists containing this project

README

        

⚠️Box is under active development. Do not expect compatibility between versions until v1.0.

# Box - Open Standard Archive Format

[![Actions Status](https://github.com/bbqsrc/box/workflows/Continuous%20Integration/badge.svg)](https://github.com/bbqsrc/box/actions)

* [`box` command line application](box)
* [`box-format` Rust crate and open specification](box-format)
* [`fusebox` demonstration FUSE driver](fusebox)

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:

## Features

🌉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)

### Compression methods

Currently supported compression methods:


  • Stored (no compression)

  • Brotli

  • DEFLATE

  • Snappy

  • xz

  • Zstandard

## Screenshots

### Unix

### Windows

## Supported platforms

* Windows
* macOS
* Linux
* iOS
* Android

## License

### box-format

The `box-format` crate is licensed under either of

* Apache License, Version 2.0, ([box-format/LICENSE-APACHE](box-format/LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)
* MIT license ([box-format/LICENSE-MIT](box-format/LICENSE-MIT) or http://opensource.org/licenses/MIT)

at your option.

### box

The `box` crate is licensed under

* European Union Public License, version 1.2, ([box/LICENSE](box/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](https://joinup.ec.europa.eu/collection/eupl/introduction-eupl-licence) for information about the purpose, objectives and translations of the license. See also the [license compatibility matrix](https://joinup.ec.europa.eu/collection/eupl/matrix-eupl-compatible-open-source-licences).