RustedZip: Because Windows shouldn't take minutes to archive
Windows zipping is painfully slow. So I built a Rust tool to fix it.
If you’ve ever used a Mac or Linux, you know zipping a folder is basically instant. You hit compress, and it’s done.
Then I moved to Windows for a project and reality hit me. Zipping a few gigs of data through the built-in Explorer tool? Minutes. Sometimes it straight up hangs. It’s a complete productivity killer.
I couldn’t stand it anymore. So I vibe-coded a high-performance tool in Rust to handle it properly.
Why Windows is Slow
The default Windows zip utility seems to run on a single thread and handles I/O very conservatively. When you have thousands of small files, the overhead of the UI and the sequential processing just kills the speed.
The Solution: Rusted ZIP
I designed the architecture and let AI help me fill in the heavy Rust lifting. The goal was simple: use every CPU core I have and stop wasting time on slow I/O.
1. Parallelism with Rayon
Instead of zipping one file at a time, I used rayon. It reads multiple files into memory across all my CPU cores simultaneously. This alone makes it 3-5x faster than the default tool.
2. Buffered I/O
I used BufReader and BufWriter everywhere. Reading and writing in chunks instead of tiny individual calls saves a massive amount of system overhead.
3. Release Optimization
I tuned the Cargo.toml for maximum performance. Using lto = true (Link Time Optimization) and codegen-units = 1 makes the binary tiny and incredibly fast.
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
panic = "abort"
The “Vibe” Integration
A tool is only useful if it’s easy to use. I didn’t want to open a terminal every time I needed to zip a folder.
I wrote a PowerShell script that edits the Windows Registry to add “Rusted ZIP” directly to the right-click context menu. Now I just right-click a folder, hit “Rusted ZIP: Compress” and it’s done in seconds.
The script uses .NET calls (Microsoft.Win32.Registry) to bypass the usual PowerShell registry bugs. It’s clean and it works.
How to Set It Up
If you want to try it, here is the setup:
- Place the binary: Copy your compiled
rustedzip.exetoC:\Tools\rustedzip\. - Install the Menu: Run the
Install-RustedZip.ps1script as an Administrator.
# Run as Administrator
.\Install-RustedZip.ps1
Once installed, restart Explorer or just right-click something. You’ll see the new options.
Try it yourself
RustedZip is fully open-source. You can grab the code or the binary from the repository here: github.com/Super-Kenil/rustedzip
Still an Experiment
This is still very much an experimental project. It’s not a final “product” yet, and I’ll be improving it over time to make it a solid alternative to the existing tools.
The Result
I went from waiting 5-15 minutes for a zipping to under 2-3 seconds.
It’s not just about the seconds saved. It’s about not breaking your “flow” state because your operating system is decidely slow.
Your OS should work for you, not the other way around.