Skip to main content
Rive runtimes can render through the Rive Renderer or, in some runtimes, a platform-specific renderer such as Canvas2D, Skia, or Impeller. The Rive Renderer is designed to provide better performance and visual fidelity across all platforms. It leverages modern graphics APIs and techniques to deliver high-quality rendering for Rive graphics.
Some Rive features, including Vector Feathering, require the Rive Renderer.See Feature Support for more information.

Renderer Defaults

RuntimeDefault RendererOptions
Web (JS)Depends on packageRive / Canvas2D
Web (React)Depends on packageRive / Canvas2D
Apple (New Runtime)RiveRive
Apple (Legacy Runtime)RiveRive / CoreGraphics / Skia (deprecated in v6.0.0)
AndroidRiveRive / Canvas / Skia (removed as of v10.0.0)
React NativeRiveSee Apple and Android
FlutterNo defaultRive / Flutter Skia / Flutter Impeller

Runtime Setup

Only some runtimes require you to choose or configure a renderer. The sections below cover runtimes that expose renderer setup through packages, initialization options, or factory settings. If a runtime is not listed here, there is no renderer setup to configure. It uses the renderer supported by that runtime automatically.
The Web runtime provides multiple packages with the same core API. Choose the package based on the renderer you want to use.
PackageRendererUse when
@rive-app/webgl2RiveYou want the best support for Rive Renderer features and rendering fidelity.
@rive-app/canvasCanvas2DYou have several Rive instances on screen, want a slightly smaller package, or do not need Rive Renderer-only features.
@rive-app/canvas-liteCanvas2DYou want the smallest Canvas2D package and do not need the full Canvas2D runtime feature set.