Skip to content
Utilities

DevZIP

A Windows-first archiver with a native C++ engine.

WindowsWindows Free
Skip to get DevZIP

Overview

DevZIP is a Windows-first archiver built around a native C++ engine and its own readable .dvz container format. It is aimed at one goal: the smallest possible archives for mixed, real-world data, without the format becoming unreadable as the engine evolves.

The engine packs files solid by type, removes duplicates at the file and block level, and runs content-aware transforms before compressing: a lossless JPEG transcoder, a PNG and zip deflate-undo step, and executable filters. Four levels (fast, balanced, max and insane) trade time for size. The fast level uses LZMA2 alone; from balanced upward, each block is compressed by several codecs and the smallest result wins, with the winning codec stamped into the archive so it always extracts. DevZIP also has its own clean-room context-mixing codec, DZCM, available as an opt-in backend. The project's own notes are candid that this costs CPU time: in its own benchmark sweep the max level makes archives 18% smaller than 7-Zip's LZMA2 (balanced, the default, 11.7%), at roughly 20 to 45 times the compression time.

There's a command-line tool for compress, extract and verify, and a WPF desktop shell for Windows. The source is public on GitHub under the DevZIP Non-Commercial License 1.0: free for personal, academic and other non-commercial use, with a separate licence for commercial use.

Highlights

  • Native C++ engine with a readable, self-describing .dvz (v4) archive format
  • CLI with compress, extract and verify, plus --level and --backend options
  • Levels fast, balanced, max and insane; balanced picks LZMA2 or ZPAQ-5 per block
  • Content-aware transforms for JPEG (brunsli), PNG (preflate) and executables (BCJ)
  • Solid packing by file type with file- and block-level deduplication
  • DZCM, DevZIP's own clean-room context-mixing codec (opt-in backend)
  • WPF desktop shell for Windows that drives devzip_cli.exe
  • Benchmark harness included; up to 18% smaller archives than 7z-lzma2 in its own tests

DevZIP development journal

Live3 entries so farUpdated New (3 entries updated in the last 14 days)

Details

Platforms
Windows
First released
Source published Apr 13, 2026
Last commit
Jun 2026
Built with
C++ engine and CLI, C# (WPF) desktop shell
License
Non-commercial licence
Status
Available
Requirements
Build from source: CMake for the native engine and CLI, .NET (dotnet build) for the WPF app; no prebuilt binaries

Questions

Is DevZIP open source?

It's source-available under the DevZIP Non-Commercial License 1.0. Non-commercial use, study, modification and redistribution are allowed; commercial use needs a separate written licence. It is not an OSI-approved licence.

Why is it slower than 7-Zip?

DevZIP buys smaller archives with CPU time: ZPAQ-5 context mixing and the PNG preflate path dominate. Decompression is fast at every level, and --level fast runs close to 7-Zip's speed when size matters less.

How does it compare with other compressors?

In the project's own sweep (97.41 MB of text, code, executables, JPEG and PNG on a Ryzen 5900X), DevZIP max produced 44.561 MB against 54.317 MB for 7z LZMA2 and 52.503 MB for kanzi -l9, the strongest general-purpose rival tested. The lead comes from content-aware transforms for JPEG and PNG; the docs are candid that kanzi -l9 still beats DevZIP's current backend on raw code (0.151 vs 0.162 MB) and executables (6.792 vs 6.930 MB).

What is DZCM, and is it on by default?

DZCM is DevZIP's own context-mixing codec, written from scratch for the project. It isn't in any level's default codec pool: you pick it with --backend dzcm or add it to a best-of-N pool (for example best-of-n:lzma2,zpaq5,dzcm), where it can only help because the smallest block wins. In the project's tests it beats LZMA2 by about 30% on text and 7% on code, but it trails on executables and doesn't yet beat ZPAQ-5.

Arrow keys move through the results, Enter opens one, Command or Control with Enter opens it in a new tab. Tab and Shift+Tab change which kind of results are shown.