Back to Projects
Tauri v2RustReactTypeScriptFFmpegmacOS
SimurghForge
SimurghForge is a universal file converter for macOS built with Tauri v2 (Rust backend + React/TypeScript frontend). It converts files across 49 formats spanning images, documents, audio, video, and structured data using 9 specialised conversion engines — 4 native Rust engines for maximum performance and 5 CLI-bridged engines for format breadth. All processing happens locally with zero cloud dependency.
01. Problem
File conversion typically requires uploading sensitive documents to cloud services, using multiple specialised tools, or installing bloated Electron apps. Users need a single, fast, privacy-respecting tool that handles all common formats locally.
02. Solution Overview
- Built a three-tier engine architecture: native Rust (fastest), CLI tools (feature-rich), and Python (tabular data)
- Implemented MIME-type detection via magic bytes for automatic engine selection
- Designed batch orchestration with Tokio semaphore-based concurrency control
- Shipped as a single .app bundle with quality presets (Low/Medium/High/Lossless)
Build
Tech Stack
Tauri v2 (Rust 1.77+)React 18TypeScriptViteTailwind CSS v4FFmpegLibreOfficePandocPython PandasImageMagick
- • 9 conversion engines: 4 native Rust + 5 CLI-bridged (FFmpeg, LibreOffice, Pandoc, Pandas, ImageMagick)
- • 49 supported formats across images, documents, audio, video, and structured data
- • Batch conversion up to 50 files with configurable concurrency (Tokio semaphore)
- • MIME-type detection via magic bytes for automatic engine routing
Secure
- 100% local processing — zero network calls, no cloud dependency
- MIME-based magic byte detection prevents extension spoofing
- Path sanitisation for all file operations
- Single .app bundle — no background services or daemons
03. Proof & Verification
Verified Claims
- >49 formats supported across 5 categories (images, documents, audio, video, data)
- >9 conversion engines with automatic routing based on MIME detection
- >Batch processing up to 50 files with configurable threading (1-8 threads)
- >Zero network calls — fully offline local processing