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.

Pack selected files into a ZIP in your browser, or inspect a ZIP file list and prepare individual entries for download. File contents are not uploaded.

💡 3 Quick Steps to Get Started

1. Choose a Mode

Choose Compress or Extract.

2. Use the File Picker

Select multiple source files to compress, or one unencrypted ZIP to inspect its preflighted file list.

3. Download the Archive or an Entry

Download the created ZIP. For extraction, click Prepare download on an entry before downloading that file.

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 central directory lists entry names and sizes near the end of the archive. This tool reads that directory for preflight checks before extracting a selected entry; it does not need to decompress every entry to show the list.

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. Local JavaScript Processing and Extraction Limits

Files are processed locally with JavaScript without uploading their contents. Preflight limits archive size, entry count, expanded size, and compression ratio to reduce resource-exhaustion risk. These checks do not guarantee that every archive is safe; use trusted files.

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.