Convert anything. Locally.
Simple, fast, open-source file conversion for Linux, Windows and macOS. No internet, no account, no telemetry.
Verto is a desktop application that converts files (images, documents, audio and video) entirely on your machine. No upload, no cloud, no subscription. Just drag, drop, convert.
It was born out of a simple frustration: never remembering the right ffmpeg or pandoc command for a one-off file conversion.
| Category | Input formats | Output formats | Engine |
|---|---|---|---|
| Images | JPEG, PNG, WebP, GIF, BMP, TIFF, AVIF, HEIC/HEIF, ICO, PSD, DDS, EXR, QOI | JPEG, PNG, WebP, GIF, BMP, TIFF, AVIF, ICO | image crate + FFmpeg sidecar |
| Documents | MD, DOCX, HTML, RST, ODT, EPUB, TEX, ORG, TXT, CSV, WIKI, ADOC and more | HTML, PDF, DOCX, MD, RST, ODT, EPUB, TXT, TEX, ADOC, ORG, RTF, PPTX, IPYNB, DOCBOOK, JSON, XML, WIKI, FB2, REVEALJS and more | Pandoc sidecar |
| Audio | MP3, FLAC, OGG, WAV, AAC, M4A, OPUS, WMA, AMR, APE, WV, MKA, AIFF, CAF and more | MP3, AAC, M4A, OPUS, OGG, FLAC, WAV, AIFF, WV, APE, TTA, CAF, AU, AC3, EAC3, DTS, MKA, WMA, MP2 and more | FFmpeg sidecar |
| Video | MP4, MKV, WebM, MOV, AVI, FLV, WMV, TS, MTS, VOB, 3GP, OGV, RM, DIVX, F4V and more | MP4, MKV, MOV, WebM, AVI, M4V, OGV, GIF, TS, FLV, 3GP, MPG, WMV, MXF, APNG and more | FFmpeg sidecar |
- Drag & drop files or folders (batch conversion)
- File picker for individual files, folder browser for output directory
- Cancel in-progress queue / retry failed items
- Real-time progress bar for audio and video conversions
- Images, Documents, Audio and Video categories with separate queues and format selectors
- Quality slider (images), bitrate selector (audio), codec selector (video)
- Image resize (width x height, keep aspect ratio) and quality presets (Web / Print / Lossless)
- Thumbnail preview for images and videos in the queue
- Settings page with persistence (output format, directory, quality, bitrate, codec)
- System notification when a batch conversion completes
- i18n: English and French (toggle in the UI)
- Auto-updater (checks for new releases on launch)
- 100% local. Files never leave your machine.
- Cross-platform: Linux, Windows, macOS
curl -sSL https://raw.githubusercontent.com/Mvth1s/Verto/main/scripts/install.sh | bashLinux installs the AppImage to ~/.local/bin/verto. macOS copies Verto.app to /Applications.
Or download the package directly from github.com/Mvth1s/Verto/releases:
sudo dpkg -i Verto_*_amd64.debThe recommended format is AppImage. It has no system dependencies.
chmod +x Verto_*.AppImage
./Verto_*.AppImageIf you get a FUSE error on first launch, you have two options:
Option A: install the FUSE 2 library:
# Arch / Manjaro
sudo pacman -S fuse2
# Then re-run
./Verto_*.AppImageOption B: run without FUSE (no install required):
./Verto_*.AppImage --appimage-extract-and-runAn AUR package (verto-bin) is planned for a future release.
sudo rpm -i Verto-*.x86_64.rpmchmod +x Verto_*.AppImage && ./Verto_*.AppImageRun Verto_*_x64-setup.exe (NSIS installer) or Verto_*_x64_en-US.msi.
Open Verto_*_aarch64.dmg and drag Verto to your Applications folder.
Advanced: download sidecars manually via curl
If you prefer to download FFmpeg and Pandoc yourself rather than using the bundled binaries (useful for development without running the full CI setup):
pnpm --filter desktop download-sidecarsThis requires curl and bash. The script auto-detects your platform and places the binaries in apps/desktop/src-tauri/binaries/ with the correct Tauri sidecar filenames. Re-running it is safe (existing binaries are skipped). The bundled sidecar approach used by CI and releases is unaffected.
- Rust (stable toolchain)
- Node.js >= 20
- pnpm >= 9
- Tauri prerequisites for your platform
git clone https://github.com/Mvth1s/Verto.git
cd Verto
pnpm install
# Download sidecars required for conversion (FFmpeg + Pandoc)
bash apps/desktop/scripts/download-ffmpeg.sh
bash apps/desktop/scripts/download-pandoc.sh
# Run the desktop app in dev mode
pnpm --filter desktop tauri devpnpm --filter desktop tauri dev # Desktop app (hot-reload)
pnpm --filter web dev # Landing page
pnpm --filter desktop test # Vitest unit tests
pnpm lint # ESLint + Clippy
pnpm format # Prettier + rustfmt
cd apps/desktop/src-tauri && cargo test --lib # Rust unit testsverto/
├── apps/
│ ├── desktop/ # Tauri v2 app
│ │ ├── src-tauri/ # Rust backend (commands, converters, sidecars)
│ │ └── ui/ # Vue 3 frontend
│ └── web/ # Landing page (Vue 3 + Vite -> Vercel)
├── assets/ # Source assets (logo, etc.)
├── agents/ # Claude Code sub-agent definitions
├── docs/ # Architecture, roadmap, specs
└── .github/ # CI/CD: lint, build matrix, Semantic Release
See docs/architecture.md for the full technical overview.
Contributions are welcome. Please read CONTRIBUTING.md before opening a PR.
Commit messages must follow Conventional Commits, enforced by Commitlint + Husky.
MIT - Mathis Aguado, 2026