Rive uses a state machine model — you fire inputs like Hover and Clicked, the runtime handles the rest. Way more interactive than Lottie. Pick your platform below.
Rive WebGL renders on a canvas. No framework needed — just a script tag and a .riv file path.
useRive hook gives you the runtime. Fire the Hover or Clicked state machine input on mouse events.
Initialise Rive in onMounted with a canvas ref. State machine inputs work exactly the same.
RiveAnimationView in XML, then fireState() in Kotlin to trigger the Hover and Click animations.
RiveViewModel handles the runtime. Call triggerInput or setBooleanInput to drive the state machine.
StateMachineController gives you the Hover and Clicked inputs. Wrap in MouseRegion and GestureDetector.
No-Code / CMS
Framer has a built-in Rive component. Connect it to your .riv file URL and state machines work out of the box.
Add the Rive CDN script in page head, drop a canvas element in an Embed block, and init with your .riv file.
Use the Custom HTML block with a canvas element and the Rive CDN script. No plugin needed.
Paste the full Rive HTML into Wix's HTML embed element. State machines work inside the iframe context.