A Rust runtime library for Rive.
Note
This runtime uses Vello as a render back-end, which has certain limitations. Refer to Known Issues for details. Efforts are underway to incorporate the Rive Renderer as another back-end.
- ⭐️ Rive Overview
- 🚀 Getting Started
- 👨💻 Contributing
- ❓ Issues
Rive is a real-time interactive design and animation tool that helps teams create and run interactive animations anywhere. Designers and developers use our collaborative editor to create motion graphics that respond to different states and user inputs. Our lightweight open-source runtime libraries allow them to load their animations into apps, games, and websites.
🏡 Homepage
You will need a Rust toolchain and a C compiler to build. You can can install the Rust toolchain using rustup.
To be able to compile the repo, you need to also clone/update the submodules:
$ git submodule update --init
...or, when cloning:
$ git clone --recurse-submodules git://github.com/rive-app/rive-rs.git
To open the included viewer, run:
$ cargo run --release
Then, drop any .riv
file into the window to open it. Scroll to control the size of
the grid of copies.
For even more examples and resources on using Rive at runtime or in other tools, checkout the awesome-rive repo.
See the rive-bevy repository that makes use of this runtime.
We love contributions! Check out our contributing docs to get more details into how to run this project, the examples, and more all locally.
Have an issue with using the runtime, or want to suggest a feature/API to help make your development life better? Log an issue in our issues tab! You can also browse older issues and discussion threads there to see solutions that may have worked for common problems.
The existing Vello render back-end may lead to some inconsistencies in comparison to the original design:
- Image meshes: They can exhibit small inconsistencies at triangle borders, there can be gaps between triangles, transparent meshes will overdraw at triangle borders.
- Very high number of clips: Vello is currently rendering very high numbers of clips incorrectly.
- All strokes will have round joins and caps.
Efforts are being made to make the Rive Renderer available. You'll then have the choice to select your preferred renderer.