File compressor and extractor

Compress up to 1,000 files/200 MiB locally, or preflight a ZIP up to 50 MiB and extract safe entries on demand.

Files are not uploaded. Password or encrypted ZIP is unsupported, and entries over 50 MiB, totals over 200 MiB, or ratios over 100:1 are rejected.
Mode

How to use this tool

Create or inspect ZIP files locally: compress up to 1,000 files/200 MiB, accept a ZIP up to 50 MiB, preflight it, then extract on demand.

Create and extract ZIP archives directly in your browser without installing third-party utilities. Operates 100% client-side with zero file uploads, keeping sensitive documents completely private.

💡 3 Quick Steps to Get Started

1. Choose Mode

Switch between "Create ZIP" to pack multiple files or "Extract ZIP" to inspect archives.

2. Drop Files or Archive

Drag and drop your documents, photos, or target ZIP container into the dropzone.

3. Download Extracted Files

Save newly compressed archives or download extracted individual files instantly.

When it helps

Extraction preflight limits each entry to 50 MiB, the total to 200 MiB, files to 1,000, and per-entry plus overall ratios to 100:1.

How it works

The central directory is checked before decompression; unsafe paths, duplicates, encryption, ZIP64, multi-disk, and unsupported methods are rejected, then one safe entry is extracted on demand.

Worked example

Inspect a 20 MiB ZIP, list only safe entries, and extract the selected file; a suspicious high-ratio archive stops before decompression.

Limits and data handling

Password/encrypted ZIP, ZIP64, multi-disk, unsafe paths, duplicate names, and unknown methods are unsupported. Directories may be listed but cannot be downloaded.

Files and entry names are not uploaded or stored. Local download URLs are revoked on replacement, mode change, reset, error, or page exit.

ZIP Archive Architecture, Deflate Algorithm & Client Security Guide

1. ZIP File Architecture: Central Directory at Tail

The ZIP archive format (PKWARE APPNOTE standard) positions its Central Directory record at the end of the file container. This enables partial streaming, allowing browsers to render hierarchical file manifests without decompressing payload streams.

2. DEFLATE Compression Mechanics (IETF RFC 1951)

DEFLATE combines LZ77 duplicate string substitution with dynamic Huffman variable-length bit coding, achieving robust lossless data compaction across mixed binary payloads.

3. Client-Side Web Streams & Zip Bomb Mitigation

Processing runs 100% locally via Web Streams and WebAssembly. Strict uncompressed ratio boundaries protect memory heaps against malicious Zip Bomb denial-of-service payloads.

Authoritative Sources & Reference Standards

  • PKWARE APPNOTE.TXT - .ZIP File Format Specification
  • IETF RFC 1951: DEFLATE Compressed Data Format
  • W3C Compression Streams API

FAQ

What inputs does File compressor and extractor accept?

Compression accepts up to 1,000 files and 200 MiB total. Extraction accepts a ZIP up to 50 MiB and preflights 1,000 files, 50 MiB per entry, 200 MiB total, and a 100:1 ratio.

How does File compressor and extractor produce its result?

Compression and preflight stay in the browser. After a safe manifest is produced, only the selected entry is decompressed instead of materializing every file in memory.

What limitations apply to File compressor and extractor?

Password/encrypted ZIP, ZIP64, multi-disk, unsafe paths, duplicate names, and unknown methods are unsupported. Directories may be listed but cannot be downloaded.

How does File compressor and extractor handle data?

Files and entry names are not uploaded or stored. Local download URLs are revoked on replacement, mode change, reset, error, or page exit.