Open. Inspect. Ship.
The standalone desktop tool for Rive animations. Load any .riv, bind ViewModels, drive state machines, and export production-ready code.
macOS 11+ · Windows 10+ · Free & open source

Hover over any region to explore the interface
Why this exists
Rive files are designed in the browser.
Testing them shouldn't require a web project.
RAV connects directly to the Rive runtime, auto-discovers every ViewModel property and state machine input, and gives you live controls without scaffolding. When the animation is ready, export the exact instantiation code your app needs — or let an AI agent drive the whole workflow through MCP.
Capabilities
What RAV does

Controls
Every property, live
RAV reads the ViewModel hierarchy and state machine inputs from your .riv file. List rows resolve exact authored labels. Each image property gets one full-width select with every embedded raster, Open file…, and Clear; the external file input stays hidden.

Export
From viewer to codebase
Choose controls, CDN or local packages, then copy a snippet or export a self-contained HTML demo. Applied editor configuration and lifecycle callbacks are preserved and executed with the selected file, canvas, layout, and control state.

MCP
AI agents as co-pilots
A bundled native sidecar exposes 36 MCP tools. Claude, Codex, or any MCP client can open files, inspect ViewModels, drive playback, edit scripts, generate snippets, control the console panel, and export demos — without touching the UI. One-click install from the app.
Artboard switching
Switch artboards and playback targets from dropdowns. VM controls repopulate per target.
Dual consoles
Event log and JavaScript REPL with timestamps, follow mode, level filters, and copy.
Script editor
CodeMirror 6 with live source indication. Apply configuration without losing artboard state; standalone exports preserve and execute it.
Renderer + runtime
Canvas or WebGL2 with safe 2.39.2 default. Latest, 2.40.0, and custom semver remain explicit choices; known authored-layout risk is labeled.
Canvas sizing
Auto or fixed pixel dimensions with aspect lock. Overflow-safe auto margins center fixed canvases until styled scrolling is needed.
State preservation
Reset and reload preserve artboard, playback, and control values across re-instantiation.
Auto updates
Tauri-authenticated updates, with Developer ID signing and notarization on macOS.
VM Explorer
Inject the helper snippet for vmExplore, vmGet, vmSet, vmTree, and vmPaths debugging.
Interface
More of the app
Download
Ready when you are
Free, open source, and shipping for macOS and Windows.
All releases on GitHubRecent updates
v2.4.3
LATEST PUBLIC- Canonical ViewModel list labels — Auto-generated list rows use a direct authored instance name when available. When the Web wrapper exposes only the ViewModel definition name, RAV uses a unique match between that definition's canonical instance-name set and a readable string property; ambiguous or missing matches fall back to `Row N`. `viewModelName` is never presented as an authored row label.
- Embedded image controls — Each ViewModel image property uses one full-width select containing every embedded raster asset followed by `Open file…` and `Clear`. `Open file…` invokes a hidden file input; there are no separate folder/Clear buttons and no `Embedded image…` placeholder. The catalog uses `uniqueFilename` identity, magic-byte MIME detection, and numbered labels for duplicate display names. The same embedded bytes and control carry into standalone exports.
- Standalone editor-config preservation — Applied editor JavaScript/config, including lifecycle callbacks, is embedded in standalone exports and executed in editor source mode after RAV binding and snapshot restoration; unsaved drafts are not exported as active config.
- `.riv` desktop declarations — macOS Launch Services declares both the official `app.rive.editor.rive-file` UTI and the pre-2.4.3 `app.rive.animation.viewer.riv` compatibility UTI as alternate Viewer types, each backed by `RiveFileIcon.icns`. A version-and-schema-gated post-update first launch refreshes the installed bundle with `lsregister -f` without restarting Finder, changing the Viewer/Alternate rank, or taking over the default handler.
- +1 more
- Release availability — `2.4.3` is the current public GitHub release and is available through the normal `latest.json` updater feed.
- Safe runtime default — Web 2.40.0 / runtime-v0.1.271 remains selectable, but live RAV MCP testing proved that it can double-offset nested, data-bound images in both WebGL2 and Canvas. RAV defaults to 2.39.2, where the authored layout is preserved. A one-time migration changes stored `latest` and `2.40.0` preferences to 2.39.2; explicitly choosing either again shows an authored-layout warning. Canary v0.1.272 remains separate.
- Fixed-canvas centering and overflow — Overflow-safe auto margins keep a fixed canvas centered while it fits, then collapse safely so oversized content scrolls from its authored top-left origin. The central scroller uses a styled 10px scrollbar track, thumb, and corner.
- Clean release build identity — Distribution builds capture Git worktree state before creating the local build counter, preventing clean CI packages from self-reporting as `-dirty` while retaining the marker for genuinely modified checkouts.
- Release gates passed — The consolidated JavaScript suite (51 files / 266 tests), Rust tests (13 app tests plus 1 `rav-mcp` test), clippy, NSIS/MSI document-icon packaging gates, and the clean/dirty build-identity regression passed on the release line.
- Live runtime evidence — RAV MCP reproduced the 2.40.0 layout regression in both renderers and confirmed the authored layout on 2.39.2. Authored list labels remained distinct and in runtime order, every embedded raster was available to image controls, non-raster embedded resources were excluded, overflow-safe canvas centering/scrolling was exercised, and an exported standalone marker confirmed the applied editor script executed.
v2.4.2
- Packaged MCP sidecar discovery — RAV now resolves `rav-mcp` from the running application's executable directory, restoring automatic MCP bridge startup for macOS installations affected by the 2.4.1 regression and refreshing an existing stable client launcher after an update.
v2.4.1
- Trusted macOS distribution — Apple Silicon and Intel builds are Developer ID signed, use hardened runtime and secure timestamps, and are notarized and stapled by Apple.
- Notarized automatic updates — The macOS updater archive is created from the already-notarized app and remains protected by RAV's separate Tauri updater signature.
- Single signed MCP sidecar — Packaged apps now ship only the signed native `rav-mcp` executable beside the main application binary, eliminating the redundant unsigned Resources copy.
- Safer releases — GitHub releases remain drafts until both macOS distributions, both Windows installers, updater signatures, and the complete cross-platform update feed pass verification.
- +1 more
- Gatekeeper first launch — Current macOS downloads open normally without the previous right-click Open workaround.
- Incomplete update feeds — Release automation refuses to publish a `latest.json` that is missing any supported architecture or installer.