The biggest release so far: the tool count grows from 93 to 151, all new engines run fully in-browser like everything else — no uploads, no servers.
🆕 New tool families (+58 tools)
- OCR — image-to-text, searchable PDF (
/ocr-pdf), pdf-to-text, powered by self-hosted Tesseract - Subtitles — SRT ↔ VTT, ASS → SRT
- Data — CSV ↔ XLSX, JSON ↔ YAML
- Ebooks & comics — compress EPUB/CBZ, CBR → CBZ, EPUB → TXT, CBZ/CBR → PDF
- 3D models — compress GLB via Draco + meshopt (up to −71 % on real scenes)
- Vectorize — PNG/JPG → SVG tracing
- Camera RAW — CR2, NEF, ARW, DNG → JPG via LibRaw, with EXIF preserved for real
- New image formats — AVIF (compress + 6 converters), JPEG XL, PSD → JPG/PNG
- PDF ops — PDF/A, grayscale, rotate, watermark, page numbers, delete/extract pages, plus AES-256 protect & unlock via qpdf
- Archives — password-protect ZIP/7z, tar.bz2/tar.xz creation, .Z extraction
- Audio/video long tail — MP3/WAV → M4A/OGG/Opus, WebM/MOV → MP3, remove audio from video, GIF → WebP
🧹 Quality sweep — 73 confirmed findings fixed
A full audit over every family with a new real-file test matrix (10 family specs, byte-level comparators). Highlights:
- 48 MP PNG conversions dropped from 8+ minutes to seconds
- Ghostscript no longer silently drops PDF annotations — forms are flattened, links transplanted
- Zip-bomb ceiling, encrypted-archive routing, cp437 filename repair in the archive worker
- TIFF orientation, WebVTT escaping, GIF timeline truncation, concurrent RAW decode races
- Honest results everywhere: grown files say "Grew N %", never a green "Saved"
✨ UX & site
- Category hub pages (
/image-tools,/pdf-tools,/video-audio-tools,/font-tools,/archive-tools) with live before/after demos - Before/after demos on 28 tool pages — real files, real numbers
- Tab rails got chevron + wheel-scroll affordance; new OCR/subtitle/ebook rails
- Per-tool JSON-LD names, second guide section on 29 thin pages, maskable PWA icons