Desktop studio for exporting Ultralytics YOLO .pt and Roboflow RF-DETR .pth models into deployment-ready formats.
Select your Ultralytics YOLO
.ptor Roboflow RF-DETR.pthmodel, pick an export target, and generate deployment-ready output locally - everything runs on your machine, nothing leaves your environment.
Table of Contents
- Features
- Supported Formats
- Target Caveats
- Installation
- Build From Source
- Analytics
- Privacy
- Contributing
- Security
- License
Vision Export Studio is a desktop app that exports computer-vision model weights into deployment-ready formats. It supports two model families: Ultralytics YOLO .pt weights with full target coverage (ONNX, TensorRT, CoreML, TFLite, and more), and Roboflow RF-DETR .pth checkpoints with a focused set of targets (ONNX and TensorRT). Select your model, pick a target, and generate the export locally - model files stay on your machine.
Features
- Local-first - exports run on your machine; model files do not leave your environment
- Managed runtime - app creates and uses
~/.vision-export-studio/.venvfor Python tooling by default - Optional Python override - power users can point the app at a different interpreter
- Optional output directory - choose where exported artifacts are written, or use the default next to the source model
- Automatic route installs - route-specific Python dependencies install when needed for most export paths
- Dependency status checks - each route reports missing Python packages or system binaries before you export, with install hints
- Two model families - Ultralytics YOLO (
.pt) with full target coverage, and Roboflow RF-DETR (.pth) for ONNX and TensorRT - Multiple export targets - ONNX, TensorRT, CoreML, OpenVINO, TFLite, Paddle, NCNN, RKNN, and more
- Configurable export options - tune target-specific settings such as image size, batch size, FP16 (
half), INT8, dynamic axes, ONNX opset, TensorRT workspace, and RKNN target chip - RF-DETR checkpoint inspection - after trusted-checkpoint confirmation, auto-detects model family (detection vs segmentation), size, and recommended native image size from the
.pthcheckpoint - Safer process execution - export commands run through Tauri/Rust with argv-based subprocess handling
Supported Formats
Vision Export Studio is not universal all-to-all model converter.
source format -> supported route -> target format
Current source support is intentionally narrow:
- Ultralytics-compatible
.ptweights (full target coverage) - Roboflow RF-DETR
.pthcheckpoints (ONNX and TensorRT only) - Generic PyTorch checkpoints not supported
- Reverse conversion not supported
Current source formats:
| Format | Provider | Status | Notes |
|---|---|---|---|
.pt |
Ultralytics YOLO | ✅ | Ultralytics-compatible weights only. |
.pth |
Roboflow RF-DETR | ✅ | RF-DETR checkpoints. Exports to ONNX and TensorRT only. |
Ultralytics YOLO (.pt) target formats:
| Format | Status | Notes |
|---|---|---|
.pt -> onnx |
✅ | Most portable intermediate. |
.pt -> torchscript |
✅ | Traced TorchScript module. |
.pt -> openvino |
✅ | Optimised for Intel CPUs, iGPUs, and VPUs. |
.pt -> engine |
✅ | TensorRT. NVIDIA GPU and supported stack required. |
.pt -> coreml |
✅ | macOS-only. |
.pt -> saved_model |
✅ | TensorFlow SavedModel output. |
.pt -> pb |
✅ | TensorFlow GraphDef output. |
.pt -> tflite |
✅ | One-way runtime artifact. |
.pt -> edgetpu |
✅ | Linux x86_64 and edgetpu_compiler required. |
.pt -> tfjs |
✅ | Web deployment output. |
.pt -> paddle |
✅ | PaddlePaddle export path. |
.pt -> ncnn |
✅ | Mobile-friendly runtime output. |
.pt -> mnn |
✅ | One-way runtime artifact. |
.pt -> rknn |
✅ | Linux-only. Target chip required. |
.pt -> imx |
✅ | Linux-only. Java >= 17 required. |
.pt -> axelera |
✅ | Linux-only. |
.pt -> executorch |
✅ | Edge runtime output. |
Roboflow RF-DETR (.pth) target formats:
| Format | Status | Notes |
|---|---|---|
.pth -> onnx |
✅ | Recommended RF-DETR target and primary path. |
.pth -> engine |
✅ | TensorRT. NVIDIA GPU and trtexec required. No macOS. |
Note
RF-DETR support is intentionally focused on ONNX and TensorRT. TFLite export was evaluated and dropped because the ONNX → TFLite conversion failed consistently across macOS and Linux.
Target Caveats
Some targets are one-way deployment artifacts or platform-locked:
enginerequires NVIDIA GPU and supported TensorRT stack. No macOS support.coremlexport is macOS-only.edgetpuexport requires Linuxx86_64andedgetpu_compiler.rknnexport is Linux-only and requires target chip selection.imxexport is Linux-only and requires Java>= 17.axeleraexport is Linux-only.tflite,engine,mnn,rknn,imx,axelera,edgetpu, and somecoremloutputs should be treated as one-way deployment outputs.- Roboflow RF-DETR (
.pth) exports only toonnxandengine. Itsengine(TensorRT) path is NVIDIA-only and requirestrtexec, identical to the Ultralyticsenginecaveat.
Installation
Quick Install
macOS (Homebrew):
brew install --cask amanharshx/tap/vision-export-studio
Linux (Homebrew):
brew install amanharshx/tap/vision-export-studio
Windows / macOS / Linux (GitHub Releases):
Download the latest desktop build from GitHub Releases.
Linux package note:
Current Linux release assets include Homebrew tarball, .AppImage, .deb, and .rpm packages.
In-App Updates
Released builds can check for updates from Updates inside app.
Expected flow:
- click
Updates - if no update exists, app shows
Up to date - if update exists, app offers
Update to <version> - after install, click
Restart to update
Updater metadata is served from GitHub Releases.
Troubleshooting
Note: The app is not code-signed yet, so macOS and Windows may show security warnings.
macOS - "App is damaged and can't be opened"
Run this command in Terminal after installing:
xattr -cr "/Applications/Vision Export Studio.app"Then open the app again.
Windows - "Windows protected your PC" (SmartScreen)
- Click More info
- Click Run anyway
Or: Right-click the .exe -> Properties -> Check Unblock -> Apply
First Launch Runtime Setup
Expected flow:
- install app
- let Vision Export Studio prepare runtime on first launch
- pick export route
- install route dependencies only when needed
Vision Export Studio now defaults to managed runtime in:
~/.vision-export-studio/.venv
Vision Export Studio creates this environment automatically and installs ultralytics there for the base runtime. Roboflow RF-DETR dependencies (rfdetr) install on demand the first time you pick an RF-DETR route.
Current bootstrap limitation:
- first-time runtime creation still depends on working
python/python3already available on host machine - bundled Python is not implemented yet
Build From Source
Prerequisites: Rust, Bun, Tauri v2 prerequisites
git clone https://github.com/amanharshx/vision-export-studio.git cd vision-export-studio bun install bun run tauri dev # development bun run tauri build # local production build
Analytics
Vision Export Studio uses PostHog for install-scoped pseudonymous usage analytics. The app stores a persistent install identifier locally so launches from the same install can be measured across sessions.
Current analytics covers:
- app launches
- setup completion and setup failures
- export started, completed, failed, and cancelled
- app and device metadata such as app version, OS, architecture, install channel, and route/event metadata
Collected analytics excludes:
- model files
- dataset contents
- file contents
- export logs
- local file paths
- personal identity such as email address or username
More detail lives in PRIVACY.md.
Privacy
Privacy summary: exports run locally, model files stay on your machine, and install-scoped pseudonymous analytics is limited to product usage and app/device metadata. See PRIVACY.md for details.
Contributing
Contributions are welcome. Whether it's a bug fix, new format, or documentation improvement - every bit helps. Please read the Contributing Guide before opening a pull request.
Security
If you discover a security issue, please do not open a public issue. Use GitHub private vulnerability reporting as described in SECURITY.md.
License
This project is licensed under the MIT License.
