Open source, MIT licensed, installers for macOS, Windows and Linux

The Rive editor
you can run yourself

OpenRive is a local-first, login-free editor for Rive .riv animations. Draw vector art, key timelines, build state machines and bind data, then export files that play in every official Rive runtime.

or run it locally
$ git clone https://github.com/UpstandPlatform/OpenRive.git
$ cd OpenRive && bun install && bun run dev
OpenRive — Off-road Car
The OpenRive editor in Animate mode: a vector jeep on the canvas with a keyframed timeline below it
437
Rive runtime test files that round-trip byte for byte
60+
rebindable keyboard shortcuts
30
MCP tools for AI assistants
0
accounts, trackers or cloud uploads

Why OpenRive

Built to be trusted with your files

An editor is only useful if the files it writes are the real thing. OpenRive treats the format, the renderer and your privacy as features, not afterthoughts.

Real .riv files

The reader and writer are generated from the Rive runtime type definitions. Unmodified files round-trip byte for byte, checked against the runtime 437 test files.

Official rendering

The canvas is drawn by the official Rive WASM runtime, served locally, so the stage matches what your app shows. The SDKs are vendored, so you can patch and build them yourself.

Local and login-free

Projects live in PostgreSQL, embedded on your machine or a server when you self-host. Local users with roles replace accounts, and an access token protects a shared instance.

One editing core

The UI, the CLI, the MCP server and the in-app Code panel all call the same editing API, so anything you can click you can also script.

Take the tour

Everything you need, in one window

Design, animation, state machines, theming, embed code and preview live side by side. Every screenshot below is the editor itself, running locally.

OpenRive — Animate
The OpenRive editor in Animate mode: a vector jeep on the canvas with a keyframed timeline below it

Timelines that key themselves

Turn on Animate mode and every change you make becomes a keyframe. Hold, linear and cubic easing with a curve editor, ping-pong and loops, work areas, and as many timelines as your file needs.

Features

A full editor, not a viewer

From the first vertex to the exported bundle, the whole workflow lives on your machine.

Design

Artboards, rectangles, ellipses, triangles, polygons and stars, pen paths with vertex editing, groups, bones, fills and strokes with solid, linear and radial gradients, trim paths, blend modes and clipping.

Animate

Timelines with auto-keying, keyframe editing, hold, linear and cubic easing with a curve editor, ping-pong and loops, work areas and layered playback.

Interactivity

State machines with layers, transitions, conditions and pointer listeners, including follow-the-cursor, previewed live on the stage.

Data binding

Number, boolean, trigger, string and color properties that drive transitions and your app, plus one-click conversion of Rive deprecated state machine inputs.

Theme colors

Define colors once, link fills, strokes and keyframes to them, then switch themes to recolor the entire file.

Assets

Import PNG, JPG and WebP images embedded straight into the .riv, SVGs converted to editable vector shapes, and fonts. Drag them onto the canvas.

Code

Automation scripts written in JavaScript against the OpenRive API, and ready-to-paste embed code for Web, React, Flutter, iOS and Android.

Templates

Interactive logos, a bouncing ball, a button, a toggle, a spinner, a star, text and themes, plus two full example files to pull apart.

Preview and bundles

Full-screen preview with inputs, view model controls and an event log. Export a standalone bundle that plays anywhere.

Productivity

More than 60 rebindable keyboard shortcuts, context menus everywhere, editing presets, undo and redo, and copy-paste between files.

Team

Local users with Admin, Editor and Viewer roles, file sharing and a user manager. Protect a shared instance with a single access token.

Nothing breaks

The reader and writer are generated from the Rive runtime type definitions, and unmodified files round-trip byte for byte against the runtime test corpus.

Get started

Three minutes from clone to first animation

Pick the way that fits: run the source, install the app, or host it for your team.

Run it locally

Needs Bun 1.4 or newer. An embedded PostgreSQL starts with the app, so there is no database to set up. Open localhost:3000 and the Welcome file is waiting for you.

$ bun install
$ bun run dev
Full guide →

Install the desktop app

Prebuilt installers ship with every release. The desktop build runs the same editor with your files on your own disk.

Host it for your team

Bring your own server and PostgreSQL. Set an access token, give people Admin, Editor or Viewer roles, and keep every file inside your network.

$ cp .env.example .env
$ docker compose up -d
Self-hosting guide →

Contributions of every size are welcome

Bug reports, templates, docs, features and file-format coverage. Start with CONTRIBUTING.md, or open an issue with one of the templates.

Open the repository

Fork it, ship it, keep your files

OpenRive is MIT licensed and moves fast. Download the latest release, or clone the repository and make it yours.

github.com/UpstandPlatform/OpenRive