Note that certain Rive features may not be supported yet for a particular runtime, or may require using the Rive Renderer.For more details, refer to the feature support and choosing a renderer pages.
How to use this guide
In this section you’ll find runtime subpages that provide all the needed information and resources to get started on your platform of choice. See Installation and getting started below. You’ll also find pages dedicated to controlling your Rive graphics at runtime. For example, updating data bound properties and loading in assets out-of-band. See Graphic control and interaction below.Installation and getting started
Make sure to check out the additional documentation provided under each runtime section. These documents provide platform-specific considerations, migration guides, and advanced usage information.
Web (JS)
This guide documents how to get started using the Web runtime library.
React
This guide documents how to get started using the React runtime library.
React Native
This guide documents how to get started using the React Native runtime library.
Apple
This guide documents how to get started using the Apple runtime library.
Android
This guide documents how to get started using the Android runtime library.
Flutter
This guide documents how to get started using the Flutter runtime library.
Unity
This guide documents how to get started using the Unity runtime library.
Unreal
This guide documents how to get started using the Unreal runtime library.
Graphic control and interaction
These sections provide details on how to interact with your Rive graphics at runtime. Here, you’ll find documentation and code samples for all of Rive’s official runtimes.Artboards
Control which artboard is displayed at runtime.
Layout
Control the artboard’s layout (fit and alignment) at runtime.
State Machine Playback
Control state machine playback at runtime and interact with state machine inputs.
Data Binding
Dynamically update content at runtime using two-way data binding for text, colors, images, lists, and more.
Loading Assets
Load referenced assets (images, fonts, audio) at runtime. Also known as out-of-band assets.
Caching a Rive File
Cache and reuse a Rive file object across multiple Rive instances to improve performance.
Playing Audio
Runtime audio properties and controls.
Rive Events
Subscribe to Rive events at runtime.
Other sections
Choose a Renderer
Specify the desired renderer to use at runtime. Each runtime provides different options. We recommend using the Rive Renderer.
Format
The Rive File format.
Feature Support
Runtime support for Rive features.
Versioning
As we publish updates to our Rive editor, we will occasionally push updated runtimes to support the new features. See Feature Support for the required minimum runtime version needed for specific features. In most cases, the newest runtimes will also support previous versions of your Rive assets, so you will not need to re-export assets to update to the latest runtimes. There are a number of ways to export your Rive files in cases where re-exporting is necessary to take advantage of the latest features. Check out our documentation on Exporting for more information.Official runtimes
Check out the runtime subpages for steps on how to get started!Web
Web
All web runtimes are distributed via npm:See Canvas vs WebGL for more on the differences between these dependencies.
React
React
All React runtimes are distributed via npm:
Apple
Apple
C++ (Mac/Linux/Windows)
C++ (Mac/Linux/Windows)
C#
C#
- UWP (Recommended)
- WinUI
- (High-level API) RivePlayer Github
- (Low-level API) RiveSharp Github
Community runtimes
Runtime | Author | Link |
---|---|---|
QtQuick | basysKom | Github |
UWP (C#) | Windows Community Toolkit | Github |
Handling .riv files
When checking in.riv
files with Git, consider adding a .gitattributes
file and marking .riv
files as binary
files to prevent Git from changing line endings when these files are checked in. Otherwise, some platforms may accidentally corrupt the .riv
file where there are line returns (i.e. Windows CRLF line endings vs LF line endings) and cause issues at runtime when the file is read.