{"id":35128202,"url":"https://github.com/hellobertrand/zxc","last_synced_at":"2026-02-14T12:04:36.796Z","repository":{"id":328712456,"uuid":"1110878035","full_name":"hellobertrand/zxc","owner":"hellobertrand","description":"High-performance asymmetric lossless compression library optimized for Content Delivery. Decodes 40% faster than LZ4 on ARM64.","archived":false,"fork":false,"pushed_at":"2026-02-11T21:30:54.000Z","size":4095,"stargazers_count":128,"open_issues_count":2,"forks_count":3,"subscribers_count":3,"default_branch":"main","last_synced_at":"2026-02-12T01:45:31.509Z","etag":null,"topics":["apple-silicon","arm64","c","compression","compression-library","data-compression","embedded","high-performance","lossless","lossless-compression","lz4"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hellobertrand.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":".github/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"hellobertrand"}},"created_at":"2025-12-05T21:35:11.000Z","updated_at":"2026-02-11T20:07:42.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/hellobertrand/zxc","commit_stats":null,"previous_names":["hellobertrand/zxc"],"tags_count":15,"template":false,"template_full_name":null,"purl":"pkg:github/hellobertrand/zxc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hellobertrand%2Fzxc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hellobertrand%2Fzxc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hellobertrand%2Fzxc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hellobertrand%2Fzxc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hellobertrand","download_url":"https://codeload.github.com/hellobertrand/zxc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hellobertrand%2Fzxc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29411139,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-13T06:24:03.484Z","status":"ssl_error","status_checked_at":"2026-02-13T06:23:12.830Z","response_time":78,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apple-silicon","arm64","c","compression","compression-library","data-compression","embedded","high-performance","lossless","lossless-compression","lz4"],"created_at":"2025-12-28T04:01:38.699Z","updated_at":"2026-02-14T12:04:36.791Z","avatar_url":"https://github.com/hellobertrand.png","language":"C","readme":"# ZXC: High-Performance Asymmetric Lossless Compression\n\n[![Build \u0026 Release](https://github.com/hellobertrand/zxc/actions/workflows/build.yml/badge.svg)](https://github.com/hellobertrand/zxc/actions/workflows/build.yml)\n[![Code Quality](https://github.com/hellobertrand/zxc/actions/workflows/quality.yml/badge.svg)](https://github.com/hellobertrand/zxc/actions/workflows/quality.yml)\n[![Fuzzing](https://github.com/hellobertrand/zxc/actions/workflows/fuzzing.yml/badge.svg)](https://github.com/hellobertrand/zxc/actions/workflows/fuzzing.yml)\n[![Benchmark](https://github.com/hellobertrand/zxc/actions/workflows/benchmark.yml/badge.svg)](https://github.com/hellobertrand/zxc/actions/workflows/benchmark.yml)\n[![Code Coverage](https://codecov.io/github/hellobertrand/zxc/branch/main/graph/badge.svg?token=LHA03HOA1X)](https://codecov.io/github/hellobertrand/zxc)\n\n[![License](https://img.shields.io/badge/license-BSD--3--Clause-blue)](LICENSE)\n\n\n**ZXC** is a high-performance, lossless, asymmetric compression library optimized for **Content Delivery** and **Embedded Systems** (Game Assets, Firmware, App Bundles).\nIt is designed to be *\"Write Once, Read Many.\"*. Unlike codecs like LZ4, ZXC trades compression speed (build-time) for **maximum decompression throughput** (run-time).\n\n\u003e **Key Result:** ZXC outperforms LZ4 decompression by **\u003e+40% on Apple Silicon**, **\u003e+20% on Cloud ARM (Google Axion)**, and **\u003e+7% on x86_64** with **better compression ratios**, accepting **slower compression speed** as the strategic trade-off.\n\n\u003e **Verified:** ZXC has been officially merged into the **[lzbench master branch](https://github.com/inikep/lzbench)**. You can now verify these results independently using the industry-standard benchmark suite.\n\n\n## ZXC Design Philosophy\n\nTraditional codecs often force a trade-off between **symmetric speed** (LZ4) and **archival density** (Zstd).\n\n**ZXC focuses on Asymmetric Efficiency.**\n\nDesigned for the \"Write-Once, Read-Many\" reality of software distribution, ZXC utilizes a computationally intensive encoder to generate a bitstream specifically structured to **maximize decompression throughput**.\nBy performing heavy analysis upfront, the encoder produces a layout optimized for the instruction pipelining and branch prediction capabilities of modern CPUs, particularly ARMv8, effectively offloading complexity from the decoder to the encoder.\n\n*   **Build Time:** You generally compress only once (on CI/CD).\n*   **Run Time:** You decompress millions of times (on every user's device). **ZXC respects this asymmetry.**\n\n[👉 **Read the Technical Whitepaper**](docs/WHITEPAPER.md)\n\n\n## Benchmarks\n\nTo ensure consistent performance, benchmarks are automatically executed on every commit via GitHub Actions.\nWe monitor metrics on both **x86_64** (Linux) and **ARM64** (Apple Silicon M1/M2) runners to track compression speed, decompression speed, and ratios.\n\n*(See the [latest benchmark logs](https://github.com/hellobertrand/zxc/actions/workflows/benchmark.yml))*\n\n\n### 1. Mobile \u0026 Client: Apple Silicon (M2)\n*Scenario: Game Assets loading, App startup.*\n\n| Target | ZXC vs Competitor | Decompression Speed | Ratio | Verdict |\n| :--- | :--- | :--- | :--- | :--- |\n| **1. Max Speed** | **ZXC -1** vs *LZ4 --fast* | **11,045 MB/s** vs 5,651 MB/s **1.95x Faster** | **61.2** vs 62.2 **Smaller** (-1.5%) | **ZXC** leads in raw throughput. |\n| **2. Standard** | **ZXC -3** vs *LZ4 Default* | **6,948 MB/s** vs 4,802 MB/s **1.45x Faster** | **46.5** vs 47.6 **Smaller** (-2.4%) | **ZXC** outperforms LZ4 in read speed and ratio. |\n| **3. High Density** | **ZXC -5** vs *Zstd --fast 1* | **6,072 MB/s** vs 2,159 MB/s **2.81x Faster** | **40.7** vs 41.0 **Equivalent** (-0.9%) | **ZXC** outperforms Zstd in decoding speed. |\n\n### 2. Cloud Server: Google Axion (ARM Neoverse V2)\n*Scenario: High-throughput Microservices, ARM Cloud Instances.*\n\n| Target | ZXC vs Competitor | Decompression Speed | Ratio | Verdict |\n| :--- | :--- | :--- | :--- | :--- |\n| **1. Max Speed** | **ZXC -1** vs *LZ4 --fast* | **8,437 MB/s** vs 4,847 MB/s **1.74x Faster** | **61.2** vs 62.2 **Smaller** (-1.5%) | **ZXC** leads in raw throughput. |\n| **2. Standard** | **ZXC -3** vs *LZ4 Default* | **5,215 MB/s** vs 4,151 MB/s **1.26x Faster** | **46.5** vs 47.6 **Smaller** (-2.4%) | **ZXC** outperforms LZ4 in read speed and ratio. |\n| **3. High Density** | **ZXC -5** vs *Zstd --fast 1* | **4,509 MB/s** vs 1,748 MB/s **2.58x Faster** | **40.7** vs 41.0 **Equivalent** (-0.9%) | **ZXC** outperforms Zstd in decoding speed. |\n\n### 3. Build Server: x86_64 (AMD EPYC 7763)\n*Scenario: CI/CD Pipelines compatibility.*\n\n| Target | ZXC vs Competitor | Decompression Speed | Ratio | Verdict |\n| :--- | :--- | :--- | :--- | :--- |\n| **1. Max Speed** | **ZXC -1** vs *LZ4 --fast* | **6,233 MB/s** vs 4,109 MB/s **1.52x Faster** | **61.2** vs 62.2 **Smaller** (-1.5%) | **ZXC** achieves higher throughput. |\n| **2. Standard** | **ZXC -3** vs *LZ4 Default* | **3,814 MB/s** vs 3,555 MB/s **1.07x Faster** | **46.5** vs 47.6 **Smaller** (-2.4%) | ZXC offers improved speed and ratio. |\n| **3. High Density** | **ZXC -5** vs *Zstd --fast 1* | **3,448 MB/s** vs 1,572 MB/s **2.19x Faster** | **40.7** vs 41.0 **Equivalent** (-0.9%) | **ZXC** provides faster decoding. |\n\n\n*(Benchmark Graph ARM64 : Decompression Throughput \u0026 Storage Ratio (Normalized to LZ4))*\n![Benchmark Graph ARM64](docs/images/benchmark_arm64_0.7.1.png)\n\n\n### Benchmark ARM64 (Apple Silicon)\n\nBenchmarks were conducted using lzbench 2.2.1 (from @inikep), compiled with Clang 17.0.0 using *MOREFLAGS=\"-march=native\"* on macOS Sequoia 15.7.2 (Build 24G325). The reference hardware is an Apple M2 processor (ARM64). All performance metrics reflect single-threaded execution on the standard Silesia Corpus.\n\n| Compressor name         | Compression| Decompress.| Compr. size | Ratio | Filename |\n| ---------------         | -----------| -----------| ----------- | ----- | -------- |\n| memcpy                  | 52833 MB/s | 52754 MB/s |   211938580 |100.00 | 12 files|\n| **zxc 0.7.1 -1**            |   913 MB/s | **11045 MB/s** |   129770958 | **61.23** | 12 files|\n| **zxc 0.7.1 -2**            |   608 MB/s |  **8974 MB/s** |   115921778 | **54.70** | 12 files|\n| **zxc 0.7.1 -3**            |   180 MB/s |  **6948 MB/s** |    98472307 | **46.46** | 12 files|\n| **zxc 0.7.1 -4**            |   123 MB/s |  **6599 MB/s** |    92027546 | **43.42** | 12 files|\n| **zxc 0.7.1 -5**            |  65.2 MB/s |  **6072 MB/s** |    86177811 | **40.66** | 12 files|\n| lz4 1.10.0              |   814 MB/s |  4802 MB/s |   100880147 | 47.60 | 12 files|\n| lz4 1.10.0 --fast -17   |  1342 MB/s |  5651 MB/s |   131723524 | 62.15 | 12 files|\n| lz4hc 1.10.0 -12        |  13.9 MB/s |  4543 MB/s |    77262399 | 36.46 | 12 files|\n| zstd 1.5.7 -1           |   644 MB/s |  1620 MB/s |    73229468 | 34.55 | 12 files|\n| zstd 1.5.7 --fast --1   |   724 MB/s |  2159 MB/s |    86932028 | 41.02 | 12 files|\n| brotli 1.2.0 -0         |   539 MB/s |   418 MB/s |    78306095 | 36.95 | 12 files|\n| snappy 1.2.2            |   880 MB/s |  3262 MB/s |   101352257 | 47.82 | 12 files|\n\n### Benchmark ARM64 (Google Axion)\n\nBenchmarks were conducted using lzbench 2.2.1 (from @inikep), compiled with GCC 12.2.0 using *MOREFLAGS=\"-march=native\"* on Linux 64-bits Debian GNU/Linux 12 (bookworm). The reference hardware is a Google Neoverse-V2 processor (ARM64). All performance metrics reflect single-threaded execution on the standard Silesia Corpus.\n\n| Compressor name         | Compression| Decompress.| Compr. size | Ratio | Filename |\n| ---------------         | -----------| -----------| ----------- | ----- | -------- |\n| memcpy                  | 23949 MB/s | 23969 MB/s |   211938580 |100.00 | 12 files|\n| **zxc 0.7.1 -1**            |   808 MB/s |  **8437 MB/s** |   129770958 | **61.23** | 12 files|\n| **zxc 0.7.1 -2**            |   539 MB/s |  **7003 MB/s** |   115921778 | **54.70** | 12 files|\n| **zxc 0.7.1 -3**            |   163 MB/s |  **5215 MB/s** |    98472307 | **46.46** | 12 files|\n| **zxc 0.7.1 -4**            |   111 MB/s |  **4968 MB/s** |    92027546 | **43.42** | 12 files|\n| **zxc 0.7.1 -5**            |  58.2 MB/s |  **4509 MB/s** |    86177811 | **40.66** | 12 files|\n| lz4 1.10.0              |   740 MB/s |  4151 MB/s |   100880147 | 47.60 | 12 files|\n| lz4 1.10.0 --fast -17   |  1282 MB/s |  4847 MB/s |   131723524 | 62.15 | 12 files|\n| lz4hc 1.10.0 -12        |  12.4 MB/s |  3776 MB/s |    77262399 | 36.46 | 12 files|\n| zstd 1.5.7 -1           |   519 MB/s |  1345 MB/s |    73229468 | 34.55 | 12 files|\n| zstd 1.5.7 --fast --1   |   605 MB/s |  1748 MB/s |    86932028 | 41.02 | 12 files|\n| brotli 1.2.0 -0         |   422 MB/s |   385 MB/s |    78306095 | 36.95 | 12 files|\n| snappy 1.2.2            |   747 MB/s |  1832 MB/s |   101352257 | 47.82 | 12 files|\n\n\n### Benchmark x86_64\n\nBenchmarks were conducted using lzbench 2.2.1 (from @inikep), compiled with GCC 13.3.0 using *MOREFLAGS=\"-march=native\"* on Linux 64-bits Ubuntu 24.04. The reference hardware is an AMD EPYC 7763 processor (x86_64). All performance metrics reflect single-threaded execution on the standard Silesia Corpus.\n\n| Compressor name         | Compression| Decompress.| Compr. size | Ratio | Filename |\n| ---------------         | -----------| -----------| ----------- | ----- | -------- |\n| memcpy                  | 20222 MB/s | 20186 MB/s |   211938580 |100.00 | 12 files|\n| **zxc 0.7.1 -1**            |   601 MB/s |  **6233 MB/s** |   129770958 | **61.23** | 12 files|\n| **zxc 0.7.1 -2**            |   397 MB/s |  **5081 MB/s** |   115921778 | **54.70** | 12 files|\n| **zxc 0.7.1 -3**            |   128 MB/s |  **3814 MB/s** |    98472307 | **46.46** | 12 files|\n| **zxc 0.7.1 -4**            |  89.7 MB/s |  **3665 MB/s** |    92027546 | **43.42** | 12 files|\n| **zxc 0.7.1 -5**            |  48.2 MB/s |  **3448 MB/s** |    86177811 | **40.66** | 12 files|\n| lz4 1.10.0              |   594 MB/s |  3555 MB/s |   100880147 | 47.60 | 12 files|\n| lz4 1.10.0 --fast -17   |  1034 MB/s |  4109 MB/s |   131723524 | 62.15 | 12 files|\n| lz4hc 1.10.0 -12        |  11.3 MB/s |  3479 MB/s |    77262399 | 36.46 | 12 files|\n| zstd 1.5.7 -1           |   414 MB/s |  1197 MB/s |    73229468 | 34.55 | 12 files|\n| zstd 1.5.7 --fast --1   |   453 MB/s |  1572 MB/s |    86932028 | 41.02 | 12 files|\n| brotli 1.2.0 -0         |   358 MB/s |   287 MB/s |    78306095 | 36.95 | 12 files|\n| snappy 1.2.2            |   612 MB/s |  1587 MB/s |   101464727 | 47.87 | 12 files|\n\n\n---\n\n## Installation\n\n### Option 1: Download Release (GitHub)\n\n1.  Go to the [Releases page](https://github.com/hellobertrand/zxc/releases).\n2.  Download the archive matching your architecture:\n    \n    **macOS:**\n    *   `zxc-macos-arm64.tar.gz` (NEON optimizations included).\n    \n    **Linux:**\n    *   `zxc-linux-aarch64.tar.gz` (NEON optimizations included).\n    *   `zxc-linux-x86_64.tar.gz` (Runtime dispatch for AVX2/AVX512).\n    \n    **Windows:**\n    *   `zxc-windows-x64.zip` (Runtime dispatch for AVX2/AVX512).\n\n3.  Extract and install:\n    ```bash\n    tar -xzf zxc-linux-x86_64.tar.gz -C /usr/local\n    ```\n\n    Each archive contains:\n    ```\n    bin/zxc                          # CLI binary\n    include/                         # C headers (zxc.h, zxc_buffer.h, ...)\n    lib/libzxc.a                     # Static library\n    lib/pkgconfig/zxc.pc             # pkg-config support\n    lib/cmake/zxc/zxcConfig.cmake    # CMake find_package(zxc) support\n    ```\n\n4.  Use in your project:\n\n    **CMake:**\n    ```cmake\n    find_package(zxc REQUIRED)\n    target_link_libraries(myapp PRIVATE zxc::zxc_lib)\n    ```\n\n    **pkg-config:**\n    ```bash\n    cc myapp.c $(pkg-config --cflags --libs zxc) -o myapp\n    ```\n\n### Option 2: Building from Source\n\n**Requirements:** CMake (3.14+), C17 Compiler (Clang/GCC/MSVC).\n\n```bash\ngit clone https://github.com/hellobertrand/zxc.git\ncd zxc\ncmake -B build -DCMAKE_BUILD_TYPE=Release\ncmake --build build --parallel\n\n# Run tests\nctest --test-dir build -C Release --output-on-failure\n\n# CLI usage\n./build/zxc --help\n\n# Install library, headers, and CMake/pkg-config files\nsudo cmake --install build\n```\n\n#### CMake Options\n\n| Option | Default | Description |\n|--------|---------|-------------|\n| `BUILD_SHARED_LIBS` | OFF | Build shared libraries instead of static (`libzxc.so`, `libzxc.dylib`, `zxc.dll`) |\n| `ZXC_NATIVE_ARCH` | ON | Enable `-march=native` for maximum performance |\n| `ZXC_ENABLE_LTO` | ON | Enable Link-Time Optimization (LTO) |\n| `ZXC_PGO_MODE` | OFF | Profile-Guided Optimization mode (`OFF`, `GENERATE`, `USE`) |\n| `ZXC_BUILD_CLI` | ON | Build command-line interface |\n| `ZXC_BUILD_TESTS` | ON | Build unit tests |\n| `ZXC_ENABLE_COVERAGE` | OFF | Enable code coverage generation (disables LTO/PGO) |\n\n```bash\n# Build shared library\ncmake -B build -DBUILD_SHARED_LIBS=ON\n\n# Portable build (without -march=native)\ncmake -B build -DZXC_NATIVE_ARCH=OFF\n\n# Library only (no CLI, no tests)\ncmake -B build -DZXC_BUILD_CLI=OFF -DZXC_BUILD_TESTS=OFF\n\n# Code coverage build\ncmake -B build -DZXC_ENABLE_COVERAGE=ON\n```\n\n---\n\n## Compression Levels\n\n*   **Level 1, 2 (Fast):** Optimized for real-time assets (Gaming, UI).\n*   **Level 3, 4 (Balanced):** A strong middle-ground offering efficient compression speed and a ratio superior to LZ4.\n*   **Level 5 (Compact):** The best choice for Embedded, Firmware, or Archival. Better compression than LZ4 and significantly faster decoding than Zstd.\n\n---\n\n## Usage\n\n### 1. CLI\n\nThe CLI is perfect for benchmarking or manually compressing assets.\n\n```bash\n# Basic Compression (Level 3 is default)\nzxc -z input_file output_file\n\n# High Compression (Level 5)\nzxc -z -5 input_file output_file\n\n# -z for compression can be omitted\nzxc input_file output_file\n\n# as well as output file; it will be automatically assigned to input_file.xc\nzxc input_file\n\n# Decompression\nzxc -d compressed_file output_file\n\n# Benchmark Mode (Testing speed on your machine)\nzxc -b input_file\n```\n### 2. API\n\nZXC provides a **thread-safe, stateless API** with two usage patterns:\n\n#### Buffer API (In-Memory)\n```c\n#include \"zxc.h\"\n\n// Compression\nuint64_t bound = zxc_compress_bound(src_size);\nsize_t compressed_size = zxc_compress(src, src_size, dst, bound, level, checksum);\n\n// Decompression\nsize_t decompressed_size = zxc_decompress(src, src_size, dst, dst_capacity, checksum);\n```\n\n#### Stream API (Files, Multi-Threaded)\n```c\n#include \"zxc.h\"\n\n// Compression\nint64_t result = zxc_stream_compress(f_in, f_out, threads, level, checksum);\n\n// Decompression\nint64_t result = zxc_stream_decompress(f_in, f_out, threads, checksum);\n```\n\n**Features:**\n- Caller-allocated buffers with explicit bounds\n- Thread-safe (stateless)\n- Multi-threaded streaming (auto-detects CPU cores)\n- Optional checksum validation\n\n**[See complete examples and advanced usage →](docs/EXAMPLES.md)**\n\n## Language Bindings\n\nOfficial wrappers maintained in this repository:\n\n| Language | Package Manager | Install Command | Documentation | Author |\n|----------|-----------------|-----------------|---------------|--------|\n| **Rust** | [`crates.io`](https://crates.io/crates/zxc-compress) | `cargo add zxc-compress` | [README](wrappers/rust/zxc/README.md) | [@hellobertrand](https://github.com/hellobertrand) |\n| **Python**| [`PyPI`](https://pypi.org/project/zxc-compress) | `pip install zxc-compress` | [README](wrappers/python/README.md) | [@nuberchardzer1](https://github.com/nuberchardzer1) |\n\nCommunity-maintained bindings:\n\n| Language | Package Manager | Install Command | Repository | Author |\n| -------- | --------------- | --------------- | ---------- | ------ |\n| **Go** | pkg.go.dev | `go get github.com/meysam81/go-zxc` | \u003chttps://github.com/meysam81/go-zxc\u003e | [@meysam81](https://github.com/meysam81) |\n\n## Safety \u0026 Quality\n* **Unit Tests**: Comprehensive test suite with CTest integration.\n* **Continuous Fuzzing**: Integrated with ClusterFuzzLite suites.\n* **Static Analysis**: Checked with Cppcheck \u0026 Clang Static Analyzer.\n* **CodeQL Analysis**: GitHub Advanced Security scanning for vulnerabilities.\n* **Code Coverage**: Automated tracking with Codecov integration.\n* **Dynamic Analysis**: Validated with Valgrind and ASan/UBSan in CI pipelines.\n* **Safe API**: Explicit buffer capacity is required for all operations.\n\n\n## License \u0026 Credits\n\n**ZXC** Copyright © 2025-2026, Bertrand Lebonnois and contributors.\nLicensed under the **BSD 3-Clause License**. See LICENSE for details.\n\n**Third-Party Components:**\n- **rapidhash** by Nicolas De Carli (MIT) - Used for high-speed, platform-independent checksums.\n","funding_links":["https://github.com/sponsors/hellobertrand"],"categories":["Compression"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhellobertrand%2Fzxc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhellobertrand%2Fzxc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhellobertrand%2Fzxc/lists"}