A powerful, browser-based file inspection tool that runs entirely client-side. Open, inspect, and analyze 500+ file formats with zero uploads and zero servers.
🔗 Live Demo:
https://boothy91.github.io/FileViewer/
Universal File Viewer is a single-page web application designed for developers, designers, analysts, and power users. All processing happens locally using browser APIs. Files never leave your device.
Images · Video · Audio · Code · PDF · CSV/XLSX · GPX/KML · GLB/STL · ZIP · Fonts · MIDI · Certificates · Binary
- Tap or drag files directly into the viewer
- Fullscreen mode
- Dark / Light theme toggle
- Recent file history (stored locally)
- Mobile-optimized UI
- Extension-based routing
- Magic byte signature detection
- Automatic viewer selection
- Images: PNG, JPG, WebP, AVIF, SVG, ICO, RAW + EXIF & color palette extraction
- Video: MP4, MKV, MOV, AVI with thumbnail strip
- Audio: MP3, WAV, FLAC + waveform + MIDI piano roll
- Documents: TXT, Markdown, PDF, DOCX
- Data: CSV, XLSX (multi-sheet), JSON (formatted)
- Code: Syntax highlighting + line numbers
- Archives: ZIP browser with file extraction
- 3D Models: GLB, GLTF, STL, OBJ (interactive viewer)
- Geospatial: GPX, KML map rendering
- Fonts: TTF, OTF, WOFF live preview
- Binary: Hex viewer with ASCII column
- Converter – Base64, text transformations, 30+ conversions
- Diff Viewer – Side-by-side comparison
- Hash Checker – MD5, SHA1, SHA256
- QR Generator – Encode text to QR
- Text Tools – Sort, dedupe, word count
- Image Editor – Resize, crop, filters
This project is a single index.html file.
No build system. No backend. No dependencies to install.
- Vanilla JavaScript
- FileReader API
- Canvas API
- WebAudio API
- LocalStorage
- Three.js – 3D rendering
- Leaflet – Map rendering
- SheetJS – XLSX parsing
- Mammoth.js – DOCX rendering
- JSZip – ZIP browsing
- QRCode.js – QR generation
- 100% client-side
- No uploads
- No analytics
- No tracking
- No server processing
git clone https://github.com/py0sc/FileViewer.git cd FileViewer open index.html
MIT License
If this project is useful, consider starring the repository ⭐