Skip to content
Real File Viewer

How Real File Viewer works

No server ever receives your file. Each format is decoded by a small, purpose-built engine that runs entirely inside your browser tab.

How it works

Three steps. No account, no upload, no waiting.

1. Choose or drop a file

Drag a file onto the page or click to browse — nothing is sent anywhere yet.

2. View instantly

The right engine renders it in your browser immediately — no server round-trip, no wait.

3. Download when done

Save the original file, or a converted version, back to your device at any time.

The engine behind each format

FormatEngineHow it runs
PDFpdf.js (Mozilla)Runs in a Web Worker; renders each page to a canvas locally.
Word (DOCX)Mammoth.jsConverts the DOCX XML into semantic HTML locally, in-memory.
Excel (XLSX)SheetJSParses the spreadsheet binary/XML locally and renders each sheet as a table.
PowerPoint (PPTX)Custom renderer (JSZip + slide XML)Unzips the .pptx and lays out each slide's shapes and text runs on a canvas-sized panel, locally.
Images & HEICCanvas 2D + libheif (WASM) for HEICHEIC/HEIF is decoded to a bitmap locally via a WebAssembly decoder before display.
CSVCustom parserA local, quote-aware CSV/TSV parser builds the table entirely in-browser.
JSONCustom tree rendererParsed with the browser's native JSON parser; rendered as a virtualized collapsible tree.
CodeShikiThe same highlighter that powers VS Code, running entirely in-browser via WASM.
Archive (ZIP)JSZipReads the ZIP central directory and inflates individual entries on demand, locally.
AudioWeb Audio API + native <audio>Decoded with the browser's built-in audio engine; nothing is streamed to a server.
VideoNative HTML5 <video>Decoded and played by your browser's built-in video engine, entirely on-device.
EPUBCustom renderer (JSZip + sandboxed iframe)Unzips the EPUB package locally and renders each chapter's XHTML in a sandboxed frame for safety.
STLThree.js (STLLoader)Parses both binary and ASCII STL encodings and renders the triangle mesh with WebGL, locally.
STEPOpenCascade (occt-import-js, WebAssembly)A WebAssembly build of the OpenCascade geometry kernel reads the STEP file's real B-rep geometry and tessellates it into a mesh for WebGL display — the same kernel many desktop CAD tools use internally.
DXFCustom DXF parser + Three.js rendererParses the DXF entity and layer tables directly (DXF is a documented, text-based format) and draws each entity locally — no upload needed since there's no binary format to reverse-engineer.
DWGPending — see noteDWG is AutoCAD's proprietary binary format. The only realistic client-side decoders (WebAssembly ports of LibreDWG) are GPL-3.0 licensed, and bundling GPL code into this site's shipped JavaScript is a licensing decision we haven't made yet — so DWG parsing isn't live. Our DXF viewer shares this same entity/layer renderer and works fully today; most CAD tools can export or convert DWG to DXF.

How this is actually private

Not just a badge — here's exactly how, so the claim is verifiable.

100% Private

Files never leave your device. There is no server that ever receives your file's contents.

No Uploads

Every format is decoded and rendered locally via WebAssembly or JavaScript. Open your browser's Network tab and confirm nothing is sent.

No Storage

Nothing is written to a server or database. Memory clears the moment you close or reload the tab.

GDPR-friendly by design

There's no file data collection to comply with in the first place — no account, no tracking of file contents, no analytics on what you view.

Verify it yourself: open DevTools → Network tab before opening a file. No request fires with your file's contents — ever.