Skip to main content

Rive iOS Runtime

Rive is a real-time interactive design and animation tool that helps teams create and run interactive animations anywhere. The Rive iOS Runtime enables you to load and render Rive animations in your Apple platform applications with support for UIKit, AppKit, and SwiftUI.

Quick Start

Get up and running with your first Rive animation in minutes

Installation

Install via Swift Package Manager or CocoaPods

Animation Playback

Control animations, artboards, and playback options

State Machines

Create interactive animations that respond to user inputs

Supported Platforms

The Rive iOS Runtime supports the following Apple platforms:
  • iOS 14.0+
  • macOS 13.1+
  • tvOS 16.0+
  • visionOS 1.0+
  • Mac Catalyst 14.0+

Key Features

SwiftUI & UIKit Support

First-class support for both modern SwiftUI and traditional UIKit/AppKit applications

State Machines

Interactive animations that respond to user input and application state

Layout Control

Flexible layout options with fit modes and alignment controls

Text Rendering

Full support for Rive Text with custom fonts and dynamic content

Audio Assets

Play audio synchronized with your animations

Events

Listen and respond to events fired from your animations

What You Can Build

The Rive iOS Runtime enables you to create rich interactive experiences:
  • Animated UI Components: Buttons, sliders, progress bars, and custom controls
  • Onboarding Flows: Engaging user onboarding with interactive tutorials
  • Games: Casual games with state machine-driven gameplay
  • Data Visualizations: Animated charts and graphs that respond to data changes
  • Loading States: Beautiful loading animations and skeleton screens
  • Character Animations: Interactive characters that respond to user interaction

Example: Simple Animation

Here’s how easy it is to get started with SwiftUI:
SwiftUI
import SwiftUI
import RiveRuntime

struct ContentView: View {
    @StateObject private var viewModel = RiveViewModel(
        fileName: "truck"
    )
    
    var body: some View {
        viewModel.view()
    }
}
UIKit
import UIKit
import RiveRuntime

class ViewController: UIViewController {
    var viewModel = RiveViewModel(fileName: "truck")
    
    override func viewWillAppear(_ animated: Bool) {
        let riveView = viewModel.createRiveView()
        view.addSubview(riveView)
        riveView.frame = view.frame
    }
}
The examples above load a Rive file named truck.riv from your app’s bundle and automatically play the default animation.

Next Steps

1

Install the Runtime

Follow the Installation Guide to add Rive to your project via Swift Package Manager or CocoaPods.
2

Create Your First Animation

Follow the Quick Start Guide to render your first Rive animation.
3

Explore Examples

Check out the example project in the GitHub repository for advanced usage patterns.

Resources

Community

Join the Rive community to get help, share your work, and connect with other developers:

Build docs developers (and LLMs) love