.riv file you can load with the Rive Runtimes.
1
Install the CLI
The CLI runs on macOS with Apple Silicon, on Linux x86_64, and on Windows.Add the CLI to your Run
- Installer
- Windows
- Homebrew
PATH so the rive command is available in every new
shell, then reload your current shell to pick it up:rive doctor to check your install.2
Create a project
rive.yaml, an AGENTS.md and CLAUDE.md for coding agents, a
.gitignore, and
a scene.rml holding the same frame the Editor gives a new file: an artboard, a
timeline, and a state machine that plays it on load. A shape you add and key
starts animating without any further setup.Everything else you drop in the folder is picked up by extension: .luau
scripts, .wgsl shaders, images and fonts. The generated rive.yaml sets name
and turns the build logs on; everything else in
rive.yaml is optional.3
Open the preview window
myproject/build/myproject.riv, the file
you can load with a runtime.A new project has nothing drawn in it yet, so you get a dark rectangle. Keep this
running in one terminal while you edit in another.rive myproject --publish, which creates a signed .riv. To check that the
project compiles without writing anything, use the --verify flag instead.
Starting from a file in your Rive account
If the work already exists in your Rive account, download it into a project:rive ls prints the same ids
non-interactively when you need them for a script. rive.yaml
records the link, so rive push
sends your edits back and rive pull brings down changes made in the Editor. This
requires a logged in session with rive login.
Starting from an exported .rev
You can also convert a.rev exported from the Editor, which doesn’t require a logged in session:
scene.rml, and every script, shader and asset is written as
its own file, laid out the way the Editor’s Assets panel had them. You also get
the usual rive.yaml, AGENTS.md and .gitignore, so it is an ordinary project
from that point on.
The project name has to be empty or new. Omit it and the .rev’s own name is used, so
myfile.rev becomes myfile/.
Signing in
You don’t need to sign in to create, preview, or build projects locally. Sign in when you need to publish a file or export a.rev to open in the Rive Editor:
--publish, which signs the file through Rive’s API, and --rev, which exports a .rev. Everything else runs locally and works signed out and offline.
--publish may add a watermark to the graphic. A clean .riv needs two things: the
project bound to a file in your Rive account, and that file in a workspace on the
Cadet plan or higher. Bind the project with
rive push.
Exporting your project
Once you’re ready to share or export your CLI project, there are a few ways you can proceed:Pushing to the Rive editor
To open the project in the Editor, push it to a file in your Rive account:rive.yaml records
the link so later pushes update the same file. Bring changes made in the Editor back into
the project with rive pull. See
Pushing to a Rive file for how
pushes, revisions and conflicts work.
If you’d rather export a .rev:
rive push and exporting a --rev require a logged in session from the CLI.
Build a .riv for the runtimes
To load the project in your app, build a.riv and add it to your project like any
other Rive file:
myproject/build/myproject.riv, or to the directory set by
output.dir in rive.yaml. From there, follow
the runtime guide for your platform to load it.