Convert .riv to .rev: the short version

If you just want the short version, here it is.

In the browser

  1. Open RIV2REV.
  2. Tick the authorisation box — you confirm you own the file or have permission to modify it.
  3. Drop in a .riv (one at a time). The file is decoded locally; nothing is uploaded.
  4. Watch the animation play. Switch artboards, timelines and state machines, and drive the inputs, to confirm the file is the one you meant.
  5. Read the recovered inventory: artboards, vector paths, fills and strokes, keyframes and easing, states and transitions, embedded assets, constraints and data bindings — counted from that file's object stream, not from a template.
  6. Download the .rev (this is what an activation code unlocks) and drag it into rive.app.

From the command line

npm install -g riv2rev
riv2rev animation.riv                  # writes animation.rev next to the input
riv2rev animation.riv -o out.rev        # explicit output path
riv2rev animation.riv --json           # inventory as JSON, for scripts
riv2rev animation.riv --stdout > a.rev # pipe it elsewhere

No account, no key, no network call: github.com/bobolinlinlin/riv2rev, MIT licensed.

What to check after converting

If something looks wrong

SymptomUsual cause
Layers in the wrong orderThe file used runtime indices; sibling order is re-derived from the tree
An animation is missingKeyframes that reference a keyed property the runtime dropped cannot be re-linked
State machine nodes overlapNode coordinates were never in the runtime file and are laid out from the graph
The editor warns about the fileUsually an unresolved reference — check the warnings list in the inventory

The format background for all of this is in inside the Rive file format, and the honest limits are in what gets lost when converting.

Turn a .riv into an editable .rev

The converter runs entirely in your browser — your file is never uploaded. Preview the animation first, then download the editable project.

Open the converter or use the CLI