Awesome
rive-rs
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.
Table of contents
- ⭐️ Rive Overview
- 🚀 Getting Started
- 👨💻 Contributing
- ❓ Issues
Rive overview
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
Getting started
You will need a Rust toolchain and a C compiler to build. You can can install the Rust toolchain using rustup.
Get submodules
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
Running the viewer
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.
Awesome Rive
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.
Contributing
We love contributions! Check out our contributing docs to get more details into how to run this project, the examples, and more all locally.
Issues
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.
Known issues
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.