Repository navigation
Expand file tree
/
Copy pathabout.html
More file actions
111 lines (90 loc) · 8.47 KB
/
Copy pathabout.html
File metadata and controls
111 lines (90 loc) · 8.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>About IrisFiles - How It Works & Why Privacy Matters</title>
<meta name="description" content="Learn how IrisFiles converts images, video, audio, documents, and more entirely in your browser using WebAssembly. No servers, no uploads, no tracking. Built in response to FBI warnings about malicious online converters.">
<meta property="og:title" content="About IrisFiles - How It Works & Why Privacy Matters">
<meta property="og:description" content="Learn how IrisFiles converts images, video, audio, documents, and more entirely in your browser using WebAssembly. No servers, no uploads, no tracking. Built in response to FBI warnings about malicious online converters.">
<meta property="og:type" content="website">
<meta property="og:url" content="https://irisfiles.com/about">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="About IrisFiles - How It Works & Why Privacy Matters">
<meta name="twitter:description" content="Learn how IrisFiles converts images, video, audio, documents, and more entirely in your browser using WebAssembly. No servers, no uploads, no tracking. Built in response to FBI warnings about malicious online converters.">
<meta property="og:image" content="https://irisfiles.com/img/og-default.png">
<meta name="twitter:image" content="https://irisfiles.com/img/og-default.png">
<link rel="canonical" href="https://irisfiles.com/about">
<link rel="stylesheet" href="css/style.css?v=ce77e82d">
<link rel="icon" href="/favicon.png" type="image/png">
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
</head>
<body>
<header class="header">
<div class="container container--wide">
<a href="/" class="logo">Iris<span>Files</span></a>
<nav class="nav">
<a href="/">All Converters</a>
<a href="https://ko-fi.com/irisfiles" class="support-btn" target="_blank" rel="noopener"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"><path d="M17 8h1.5a2.5 2.5 0 010 5H17"/><path d="M3 8h14v9a4 4 0 01-4 4H7a4 4 0 01-4-4V8z" fill="currentColor" stroke="none" opacity=".15"/><path d="M3 8h14v9a4 4 0 01-4 4H7a4 4 0 01-4-4V8z"/><path d="M6 1v3M10 1v3M14 1v3" opacity=".6"/></svg> Support this project</a>
</nav>
</div>
</header>
<main class="container">
<a href="/" class="back-link"><svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 12L6 8l4-4"/></svg> Back</a>
<article class="prose">
<h1>About IrisFiles</h1>
<p>IrisFiles is a free file converter that works entirely in your browser. Your files are never uploaded to a server. Every conversion happens on your device using WebAssembly and the browser's built-in APIs.</p>
<h2>Why this exists</h2>
<p>In March 2025, the FBI issued a public warning about free online file converters being used to distribute malware. The warning highlighted a fundamental problem: most online converters require you to upload your files to a remote server. You have no way of knowing what happens to your files after they leave your device.</p>
<p>IrisFiles takes a different approach. There is no server. The entire application is static HTML, CSS, and JavaScript. When you drop a file into IrisFiles, it stays on your device. The conversion runs in your browser, and the result is downloaded directly, just like any other file.</p>
<h2>What it can do</h2>
<p>IrisFiles currently has over 120 tools across several categories:</p>
<ul>
<li><strong>Images:</strong> Convert between 10 formats (HEIC, AVIF, PNG, JPG, WebP, GIF, BMP, TIFF, ICO, SVG). Also compress, resize, strip EXIF data, view metadata, and combine images into an animated GIF.</li>
<li><strong>Video:</strong> Convert between MP4, WebM, MOV, AVI, and MKV, or extract to GIF. Compress video with quality presets and optional resolution scaling.</li>
<li><strong>Audio:</strong> Convert between MP3, WAV, OGG, FLAC, M4A, and AAC. Compress audio with standard bitrate tiers.</li>
<li><strong>PDF:</strong> Merge PDFs, split a PDF into pages, convert PDF pages to images, and assemble images into a PDF.</li>
<li><strong>Documents:</strong> Convert EPUB, RTF, DOCX, and MOBI files to plain text or PDF.</li>
<li><strong>Fonts:</strong> Convert between TTF, OTF, and WOFF.</li>
<li><strong>Archives:</strong> Create and extract ZIP files.</li>
<li><strong>Unknown files:</strong> Drop any unrecognized file to identify its type. IrisFiles checks magic bytes against a 600+ format signature database and shows you what it found.</li>
</ul>
<h2>How it works</h2>
<p><strong>Image conversion:</strong> For common formats (JPG, PNG, WebP, AVIF, etc.), IrisFiles uses the browser's built-in decoder, renders the image through Canvas, and re-encodes it with the browser's encoder. For HEIC/HEIF (iPhone photos), it lazy-loads a WebAssembly build of <a href="https://github.com/strukturag/libheif">libheif</a> (version 1.21.2) from the CDN. AVIF currently relies on native browser decoding; browsers without AVIF support cannot convert it here.</p>
<p><strong>Video and audio conversion:</strong> IrisFiles lazy-loads <a href="https://github.com/ffmpegwasm/ffmpeg.wasm">FFmpeg.wasm</a> (version 0.12, roughly 10MB) from the CDN only when you use a video or audio tool. FFmpeg runs entirely in your browser; no media ever leaves your device. MP3 encoding uses lamejs; WAV encoding uses the Web Audio API directly.</p>
<p><strong>PDF operations:</strong> Merge and split use <a href="https://github.com/Hopding/pdf-lib">pdf-lib</a>. Image-to-PDF uses jsPDF. PDF-to-image rendering uses pdfjs-dist. All lazy-loaded from the CDN.</p>
<p><strong>Format detection:</strong> IrisFiles reads the first few bytes of every file (magic bytes) and checks them against a 601-entry signature database. It never relies on file extensions.</p>
<p><strong>Batch downloads:</strong> Multiple output files are packaged into a ZIP using <a href="https://github.com/101arrowz/fflate">fflate</a>, assembled entirely in your browser.</p>
<h2>What about quality?</h2>
<p>Image quality sliders are continuous (1-100%) with snap points at common values. The default is 100%, meaning full quality with no extra compression applied. Lower the slider to trade some visual fidelity for a smaller file. Video compression uses CRF-based presets (High, Medium, Low). Audio compression uses standard bitrate tiers. Some tools (image-to-GIF, PDF, document, font, and ZIP tools) have no quality control because their output format uses fixed encoding.</p>
<h2>Technology</h2>
<ul>
<li><strong>HEIC decoding:</strong> <a href="https://github.com/nicolo-ribaudo/heic-to">heic-to</a> (WASM, libheif 1.21.2), lazy-loaded from CDN</li>
<li><strong>Image encoding:</strong> Browser Canvas API (toBlob)</li>
<li><strong>Video and audio processing:</strong> FFmpeg.wasm 0.12 (~10MB WASM), lazy-loaded from CDN</li>
<li><strong>GIF encoding:</strong> gifenc (local bundle)</li>
<li><strong>Audio encoding:</strong> lamejs for MP3, Web Audio API for WAV, FFmpeg.wasm for OGG/FLAC/M4A/AAC</li>
<li><strong>PDF operations:</strong> pdf-lib (merge/split), jsPDF (image-to-PDF), pdfjs-dist (PDF-to-image)</li>
<li><strong>EXIF metadata:</strong> ExifReader + piexifjs (lossless JPEG EXIF editing)</li>
<li><strong>Font parsing:</strong> opentype.js</li>
<li><strong>ZIP packaging:</strong> fflate (~8KB gzipped, local bundle)</li>
<li><strong>Format detection:</strong> Magic bytes, 601-entry signature database</li>
<li><strong>Hosting:</strong> Static files on Vercel (zero server-side code)</li>
<li><strong>Privacy:</strong> No analytics, no tracking, no cookies</li>
</ul>
<h2>Open source</h2>
<p>The source code is available for inspection. You can verify that no files are uploaded and see exactly how each tool works.</p>
</article>
</main>
<footer class="footer">
<div class="container">
<div class="footer-links">
<a href="/">All Converters</a>
<a href="/about">About</a>
<a href="/privacy">Privacy & Disclaimer</a>
</div>
<p>IrisFiles. All processing happens in your browser.</p>
</div>
</footer>
</body>
</html>