ZPAQ
Generated by scripts/gen-format-pages.py from docs/data/format-metadata/, FILE_FORMATS.csv and docs/formats-master.csv. Do not edit by hand: change the source, then run the script.
ZPAQ Archive Preview.
At a glance
| Purpose | A ZPAQ archive: Matt Mahoney's journaling archiver, whose blocks carry their own decompression programs. |
| Extensions | .zpaq |
| Poka parser | poka-zpaq |
| Viewer | poka-metadata-card-viewer |
| Depth tier | Metadata card (see Depth tiers) |
| Breadth tier | B5 Identification (see Breadth tiers) |
How much Poka reads
B5 Identification. The format is recognised and a few properties are shown (name, size, version string). Nothing of the content is decoded.
Confidence: medium (the reviewer read the code). Basis: Reviewed 2026-10-26: read parsers/poka-zpaq/src/main.rs (118 lines) and plugin.json. No unit tests or tests/samples.rs; the corpus has no .zpaq sample. Covers .zpaq. The card checks the 7kSt magic and counts occurrences of the byte patterns 7kSt, zPQ and jDC anywhere in the file, including inside compressed data. Judgement: B5: the format is recognised; the counts are byte-pattern matches, not a walk of the blocks.
What Poka does not read
- No block, segment or file is decoded: names, versions (journal dates) and sizes are not shown
- The block, frame and index counts are byte-pattern matches over the whole file and can include false hits inside compressed data (judgement from the code)
- Nothing is decompressed
Libraries
Libraries Poka uses or has assessed for this format, with the status, licence and language the registry records.
- zpaq_rs (candidate; CC0-1.0; Rust; https://docs.rs/zpaq_rs) — Safe Rust bindings to libzpaq via a C++ shim built with cc, so wasm32 builds need a C++ toolchain. Stream-level API; archive listing not confirmed. v1.0.4.
- zpaq / libzpaq (candidate; Unlicense; C++; https://github.com/zpaq/zpaq) — Reference archiver and library; repo says remaining code is public domain, with an MIT-licensed divsufsort part. Whether libzpaq extracts archives is not stated on the page.
- omnizip-zpaq (candidate; MIT OR Apache-2.0; Rust; https://github.com/omnizip/omnizip-rs) — Pure-Rust ZPAQ context-mixing archival codec; v0.21.117, updated 2026-09-24; matched on lib.rs, not tested
Sources
- parsers/poka-zpaq/src/main.rs
- parsers/poka-zpaq/plugin.json