rive
Rive Flutter Runtime. This package provides runtime functionality for Rive graphics built with the Rive editor available at https://rive.app
0.14.11
458K downloads/mo
#543 most downloaded on pub.dev
rive-app/rive-flutter
What this package is like to depend on
Last release 10 days ago
13 Aug 2026
Ships on a steady schedule
a new release about every 2 weeks
Nearly every release is documented
notes for 118 of 121 stable releases
Nothing withdrawn
no release was ever pulled
7 years old
137 releases · first in 2019
21 releases in the last 12 months
see the full history below
Release timeline
137 releases · Dec 2019 to Aug 2026Releases
latest 60 of 137-
0.15.0-dev.113 Aug 2026 pre-releaseRelease notes
Open source →- Bumps to
rive_native: 0.2.0-dev.1. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements. - GPU Canvas support at runtime, enabled through deferred rendering.
Fixes
- Resolved an Android performance regression caused by Flutter merging the UI and platform threads, which could block Flutter’s raster thread while Rive rendered. The new deferred renderer resolves this by recording frame N+1 (UI thread) while drawing frame N (separate rendering thread). Unblocking Flutter's UI and raster thread.
- The new deferred renderer resolves OpenGL context corruption that could occur when Rive competed with other native rendering solutions, such as Mapbox.
- Corrected the minimum Flutter version to 3.32.0 (Dart 3.8.0). It was declared as 3.28.0, so older Flutter versions resolved this package and then failed to compile. See #643.
Deferred rendering
The Rive Renderer (
Factory.rive) now uses deferred rendering on native platforms, and it is the only native mode. Each frame is recorded on the UI thread as a compact command stream and replayed on a dedicated render thread, so GPU work no longer blocks the UI thread. This results in substantial performance improvements, especially on Android where this new approach resolves a latent isue (see Fixes above).Resources made with
Factory.rive(paths, paints, images, text) are lightweight recording proxies that resolve during replay. Rendering behavior and output are unchanged for typicalRiveWidget/ file-based usage; the changes below matter when migrating advanced integrations.Migrating:
- All Rive calls stay on the calling (UI) thread. The command stream has a single writer per frame, so advancing or drawing from other threads is not supported.
- Breaking: removes
Rive.batchAdvanceandRive.batchAdvanceAndRender(and the native batch worker). Their worker threads recorded into the command stream concurrently and corrupted it. Advance and draw each state machine on the calling thread instead. RenderTexturePainter.riveFactorynames the factory the painted content was made with, so the texture attaches its recording session (a sessionless texture draws nothing on native). Defaults toFactory.riveoverride with the decoded file'sFile.riveFactorywhen content records elsewhere (on web this opts single-file content into the per-file session worker path), or with null when the session is managed manually.- One artboard instance per texture: showing the same artboard instance in two widgets leaves the later one blank, with a debug message. Create an artboard instance per widget.
Factory.riveon native resolves to the render context's recording session.file.riveFactory == Factory.rivestill holds, and resources created directly onFactory.riverecord and render correctly.- Advanced session control (manual attach/detach via
RenderTexture.useDeferredSession, pacing, thread stats) is available throughpackage:rive_native/rive_deferred.dart.
- Bumps to
-
0.14.1103 Aug 2026Release notes
Open source →- Bumps to
rive_native: 0.1.11. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements. - Adds
RenderResolutionto control how aFactory.rivetexture sizes its backing store:display()(default — layout × device pixel ratio × ancestor paint scale),layout({scale})(layout × device pixel ratio, ignores ancestor transforms), andfixed(width, height)(explicit physical pixels). Available onRenderTexture.widget,RiveArtboardWidget, andRiveProceduralRenderingWidget. - Web behavior change:
RenderResolution.display()now accounts for ancestor transforms on web, matching native — an upscaled widget renders sharp instead of stretched. PassRenderResolution.layout()for the previous behavior. - Adds
RiveNative.instance.releaseRenderResources()to release cached render resources (web: pooled textures and the probe context), recreated on demand. No-op on other platforms. - Adds
RiveNative.debugRenderTextureLogging(web): logs render-texture create/reuse/release with live WebGL context counts.
Fixes
- Windows: fixed a crash or hang when disposing a render texture with a frame in flight, such as closing the app under load or the desktop going to sleep. The fence wait thread could outlive teardown and either touch a destroyed texture registrar or block shutdown indefinitely (see core runtime issue #86).
- Texture allocations under
displayandlayoutare capped at 4096 logical pixels per axis (aspect preserved), preventing runaway allocations under large ancestor scales. - Web: canvas backing stores are clamped to the GPU's maximum render-target size.
- Web: render textures release their WebGL contexts on dispose (bounded reuse pool), browser-evicted contexts are purged instead of reused, and the MSAA probe context is released at startup — fixes context-limit exhaustion and permanently blank widgets.
- Changing
RiveWidget.drawOrder/SharedTextureView.drawOrderon a mounted widget now restacks the shared-texture painters. EqualdrawOrders stack in widget-tree order.
- Bumps to
-
0.14.1022 Jul 2026Release notes
Open source →- Bumps to
rive_native: 0.1.10. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.
Fixes
- Fixed a "RenderBox was not laid out" crash that could occur when a
RiveWidget(Factory.rive) was painted during certain transitions. See https://github.com/rive-app/rive-flutter/issues/642. - Rive Renderer (
Factory.rive) rendering issues on Linux with later versions of Flutter (3.38+, see Flutter issue 182998) - Various Rive scripting fixes and updates, notably:
- Updated Luau to 0.728
- Fixed the Lua
Dataglobal not being initialized, which left view model constructors such asData.MyViewModel.new()unavailable to scripts
- Bumps to
-
0.14.922 Jun 2026Release notes
Open source →- Bumps to
rive_native: 0.1.9. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.
Fixes
- Touch and stylus pointer up (and cancel) now also dispatch a pointer exit, so listeners receive a Pointer Exit when a finger or pen lifts. This keeps enter/exit symmetric on mobile and matches other Rive runtimes. Mouse and trackpad pointers are unaffected, their exit still comes from the pointer leaving the artboard/widget.
- Fixed a crash when using
desktop_multi_windowon Windows with MicroProfile GPU init
Changes
RiveWidgetControllernow advances and applies the state machine with zero elapsed time after pointer down/up events. This ensures intermediate state, such as a view model property set on pointer down, is processed immediately, even when a pointer down and up occur within the same frame. Set it tofalseto opt out.- Dropped the experimental tag from shared texture usage.
- Bumps to
-
0.14.805 Jun 2026Release notes
Open source →- Bumps to
rive_native: 0.1.8. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.
Fixes
- Fixed Rive widgets blurring (
Factory.rive) during parent rotation/skew animations. - Fixed
RivePanelpainters never settling when multiple painters shared the same texture. Each painter previously owned its own ticker and the shared paint pass would re-calladvanceon settled siblings, accidentally reviving them.SharedRenderTexturenow owns a single ticker that stops when every painter reports settled and restarts on new painters or wake notifications. - Fixed shared-texture rendering for rotated, skewed, or mirrored
RiveWidgets. The widget→panel transform now reaches the texture as a full 2D affine instead of being flattened to its scale diagonal, so the texture content matches how theTexturewidget composites. - Fixed
RiveWidgetswallowing controller swaps on a stable element (noKey) when drawing into a shared texture. The wrapping painter was bound to the original controller on first build and never rebuilt, so the new controller's state machine wasn't driving the on-screen artboard and disposing the old controller crashed at the native boundary. - Improved
RiveWidgetandRivePanel(Factory.rive) flickering. The texture is reused and scaled during a resize and recreated at the new size once it settles. - Fixed shared-texture (
RivePanel) content not redrawing on a window resize that didn't change a child's size (e.g. a vertical resize of a fixed-width grid) — it previously only updated after an unrelated repaint.
Changes
- Deprecated
RenderTexture.onTextureChangedin favour ofaddTextureChangedListener/removeTextureChangedListener, which allow multiple painters to share a single texture. - Added
RiveNativeRenderBox.textureResizeIntervalto tune how often the texture is recreated while resizing.
- Bumps to
-
0.14.719 May 2026Release notes
Open source →- Bumps to
rive_native: 0.1.7. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.
Breaking Changes
- Expose audio events through the Dart API.
Eventis a sealed class andEventTypegains anaudiovalue, so exhaustiveswitchstatements over either now require a newAudioRuntimeEvent/EventType.audioarm. - State machine event listeners now receive
AudioRuntimeEvents alongsideGeneralEventandOpenUrlEvent. Listeners that branch on event type with non-exhaustiveif/ischecks will see the new type pass through unhandled.
Shared Texture API (Experimental)
- Add
SharedRenderTexture.create()to construct a user-owned shared texture independent of theRivePanellookup. Place it in the tree with the newRiveSurfacewidget and attach painters by passing the same instance toRiveWidget.sharedTexture. This lets a single native texture be shared acrossRiveWidgets that aren't ancestor/descendant of each other — siblings, separate subtrees, or across routes (e.g. via a Provider/Riverpod). - Add
RiveSurfacewidget that renders the native surface of aSharedRenderTextureanywhere in the tree. Wrapped inIgnorePointerby default; setignorePointer: falseto route pointer events to the texture widget. - Add
RiveWidget.sharedTextureparameter to draw into an explicitSharedRenderTexture, bypassing the ancestor-basedRivePanellookup. Takes precedence overuseSharedTexturewhen both are set. SharedRenderTexturegaineddispose()andisDisposed. Instances created viaSharedRenderTexture.create()own their underlying native texture and must be disposed by the caller; instances constructed with an externaltextureare not affected.
Fixes
- Fixed an issue where
setStateon an ancestor of aRivePanel(orRiveSharedTexture) would allocate a newSharedRenderTexturewrapper on every rebuild, dirtying every descendantRiveWidgetand detaching their painters from the previous wrapper. The wrapper instance is now stable across ancestor rebuilds, andRiveSharedTexture.updateShouldNotifycompares by identity. - Fixed an iOS "carousel flash" where a stale post-frame paint callback queued before the last painter detached could fire afterwards with an empty painter list and momentarily blank the shared texture. The paint pass now no-ops when there are no painters.
- Fixed an issue where a
RiveWidgetdrawing into aRivePanelshared texture could render at the wrong size when an ancestorTransform.scaleanimated. The shared-texture path now reads the live local-to-panel transform on every paint instead of relying on a cached scale that composited ancestors (RepaintBoundary,Opacitylayers,PageView's internal slots) could leave stale. - Fixed a Windows crash in the
rive_nativeremoveTexturemethod channel handler when the texture id arrived asint32_trather thanint64_t. Most commonly seen when dragging the app window between displays with different DPI settings, or when rapidly creating/disposing render textures.
- Bumps to
-
0.14.624 Apr 2026Release notes
Open source →- Bumps to
rive_native: 0.1.6. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.
Fixes
- Fixed 623 - Explicitly nil Metal ivars in dealloc to prevent use-after-free on teardown
- Bumps to
-
0.14.502 Apr 2026Release notes
Open source →- Bumps to
rive_native: 0.1.5. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements. - Add optional
viewModelInstanceparameter toFile.artboardToBind, allowing aViewModelInstanceto be bound to aBindableArtboard. When provided, the view model instance is set on the artboard property in the core runtime.
- Bumps to
-
0.14.402 Mar 2026Release notes
Open source →- Bumps to
rive_native: 0.1.4. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.
Fixes
- Fixed an issue where
RivePanelintercepted all pointer events. Hit testing now respects eachRiveWidget's configuredhitTestBehavior.
Build & Platform Updates
- Rive Renderer support for Linux
- Linux is now fully supported. Known issue: arm64 builds are not yet included; for now, build manually: https://rive.app/docs/runtimes/flutter/rive-native#building-rive-native
- Fixes a build issue where scripting build files were missing. We previously did not include the
scriptingfolder, which is now required by other build files. - Fixed a build issue when running ``dart run rive_native:setup --build`.
- Resolves
dart run rive_native:setupconcurrency issue rive-flutter#609. Downloads now use a unique temporary directory to support concurrent CLI runners.
- Bumps to
-
0.14.318 Feb 2026Release notes
Open source →- Bumps to
rive_native: 0.1.3. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.
Build & Platform Updates
- Adds Swift Package Manager support. Resolves issue 557
- Bumps to
-
0.14.203 Feb 2026Release notes
Open source →- Bumps to
rive_native: 0.1.2. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements. - Updated the minimum Flutter version to
3.28.0. The Android platform code requires the newonSurfaceCleanupandonSurfaceAvailablemethods, see SurfaceProducer. - Add
enumTypestring getter toViewModelInstanceEnumwhich returns the name of the enum (not the property name). - Add
valueStream<T>to data binding properties that are observable (implementations ofViewModelInstanceObservableValue), which returns aStream<T>. For example:
ViewModelInstanceNumber? numberProperty = viewModelInstance!.number('age'); Stream<double> stream = numberProperty!.valueStream;Fixes
- Fixed iOS/macOS build issues when using custom schemes and flavors. See issue 594.
- Bumps to
-
0.14.113 Jan 2026Release notes
Open source →- Adds runtime Rive Scripting support.
- Bumps to
rive_native: 0.1.1. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.
Fixes
- Fixed 585 - missing
artboardDataTypeenum.
-
0.14.008 Dec 2025Release notes
Open source →Major release, see the updated docs and migration guide:
- https://rive.app/docs/runtimes/flutter/flutter
- https://rive.app/docs/runtimes/flutter/migration-guide#version-0-14-0
Bumps to
rive_native: 0.1.0. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.Fixes
- Fixed Android build issues in certain environments. See issue 555. Build commands are now executed from Gradle instead of CMakeLists, and the setup process automatically skips
rive_native:setupif the required libraries are already downloaded. - Fixed 570 -
setStatecalled after dispose. Add cancellation checks to prevent stale state updates.
Build & Platform Updates
- Android: Added support for skipping automated setup by setting
rive.native.skipSetup=truein your app'sgradle.properties. When enabled, you must manually rundart run rive_native:setup --verbose --clean --platform androidto download the required libraries.
-
0.14.0-dev.1417 Nov 2025 pre-releaseRelease notes
Open source →- Marks methods to access text runs and state machine inputs as deprecated. While this functionality won't be removed in the near future, we encourage adoption of data binding to future-proof your Rive usage.
- Bumps to
rive_native: 0.0.17. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.
Fixes
- Improved library loading and error message. See issue 566
- Fixed layout issues that occurred on first render when using
Fit.layoutby correcting the order of artboard resizing and advancing calls. Added a newRiveArtboardLayoutMixinthat provides common layout options for painters, including fit mode, alignment, and scale factor controls. - Resolves an issue where under some conditions the graphic may not restart the animation ticker. Adds a
isTickerActivetoRivePainter. - Fixed a lifetime issue with
FileAssets when the owning RiveFileis destroyed. - Only send
textureFrameAvailableon main (platform) thread (iOS and macOS). This likely resolves crashes observed during Flutter engine teardown when usingFactory.rive.
-
0.14.0-dev.1327 Oct 2025 pre-releaseRelease notes
Open source →Bumps to
rive_native: 0.0.16. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.Fixes
- Fixes rendering issues on certain Android devices.
- Resolves an issue where under some conditions the graphic may not restart the animation ticker. Adds a
isTickerActivetoRivePainter. - Ensure a Rive graphic is in the correct starting state (matching the Rive Editor play mode not design mode)
Build & Platform Updates
- Bump minimum supported dependency for Flutter to
3.27.0and Dart to3.6.0
-
0.14.0-dev.1221 Oct 2025 pre-releaseRelease notes
Open source →Bumps to
rive_native: 0.0.15. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.Fixes
-
0.14.0-dev.1116 Oct 2025 pre-releaseRelease notes
Open source →Bumps to
rive_native: 0.0.14. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.Fixes
- Graphics memory leak on Android when using the Rive Renderer.
-
0.14.0-dev.1014 Oct 2025 pre-releaseRelease notes
Open source →Bumps to
rive_native: 0.0.13. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.- Added multi-touch support
Fixes
- Fixed 544, which resulted in settled graphics not being visible after backgrounding the app when using
Factory.rive. - Fixed 529, an assertion/crash on Windows debug builds when accessing
front()on an empty vector. - Fixed an issue where graphics would not update after layout when using the Flutter renderer.
Build & Platform Updates
- Included
pdbsymbol files forrive_nativeon Windows to assist in debugging native errors.
-
0.14.0-dev.901 Oct 2025 pre-releaseRelease notes
Open source →Bumps to
rive_native: 0.0.12. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.- Added multi-touch support
- Reduced the number of texture allocations made when resizing widgets using
Factory.rive, improving memory efficiency and performance. - Enhanced painting and texture creation behavior when resizing widgets or windows with
Factory.rive, resulting in smoother widget resizing. - Better aligned the native and web implementations to ensure consistent behavior across all platforms.
Fixes
- Fixed an issue where
RivePanelwould not render anything after resizing if all graphics are settled. - Resolved issue #498 where
Fit.scaleDownwas not working correctly withFactory.rive. - Resolved an issue where upscaling Rive widget transforms resulted in blurry textures when using
Factory.rive. - Fixed layout problems that occurred when certain
Fitmodes were used and the user switched to a different DPI screen. - Fixed 487 - automatically advances/paints a graphic when updating any view model property or any state machine input.
- Fixed instances where pointer exit was not working
-
0.14.0-dev.815 Sep 2025 pre-releaseRelease notes
Open source →Bumps to
rive_native: 0.0.11. Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.Fixes
- Fixed a crash in
preCommitCallbackfor iOS and macOS.
Build & Platform Updates
- Builds the native iOS and macOS libraries with Xcode 16.1 (bumped up from 15.4)
- Fixed a crash in
-
0.14.0-dev.712 Sep 2025 pre-releaseRelease notes
Open source →Bumps to
rive_native: 0.0.10- Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.
Features
- Added [RivePanel] - a shared texture to draw multiple
RiveWidgets to. This can have a big performance benefit when usingFactory.rive. Read more here and here . - Expose
localBoundsonComponent.
Fixes
- Fixed 496 - playback now properly resumes during pointer interactions, preventing graphics from appearing frozen when users interact with them.
- Fixes an issue where graphics might settle (pause) too soon, by forcing an advance when the
elapsedSecondsis zero. - Fixes a potential crash in Android when a native pointer is no longer valid
- Fixed a crash when shutting down on Windows
- Fixed deleting the wrong texture from the wrong WebGL context
-
0.14.0-dev.613 Aug 2025 pre-releaseRelease notes
Open source →Bumps to
rive_native: 0.0.9- Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.
Fixes
- Add missing
pointerExitevent logic. - Fixed 507 - Tests fail on Linux and Windows as native libs are not discoverable.
- Fixed incorrect key forwarding to child widgets.
-
0.14.0-dev.501 Aug 2025 pre-releaseRelease notes
Open source →Bumps to
rive_native: 0.0.8-
Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.
-
Expose
widthandheightgetters forImageAsset. See issue 501. This is only exposed to support older workflows. We now recommend using Data Binding images. You can also alternatively expose the width and height of the component through data binding and listen to changes.
Fixes
- Fixed a memory leak when listening to Rive Events that had Audio events. See issue 494
- Fixed a memory issue on WASM where large .riv files could invalidate our backing TypedArray views. This fix recreates these views if they are detached. See: https://github.com/emscripten-core/emscripten/issues/7294
-
-
0.14.0-dev.428 Jul 2025 pre-releaseRelease notes
Open source →Bumps to
rive_native: 0.0.7- Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.
Fixes
- Fixed running out of GL contexts by recycling HTML canvases
- Fixed an issue on Web (Rive Renderer) where certain graphics would settle (pause) too soon when exiting a settled state.
- Fixed an issue where the state machine would settle/pause too soon when resizing the widget (or native window) and when re entering from a backgrounded state (Android). See issue 496
- Fixed an issue where nothing is drawn on the first frame when
activeis false inRiveWidgetController. See issue 495
Build & Platform Updates
- Linux: Initial Linux support (Flutter renderer).
- Fixed testing libraries not available when using
rive_nativeas a Pub package.rive_nativenow copies the native libraries to the local appbuilddirectory.
-
0.14.0-dev.318 Jul 2025 pre-releaseRelease notes
Open source →Bumps to
rive_native: 0.0.6- Updates the Rive C++ runtime and renderer for the latest features, bug fixes, and performance improvements.
Fixes
- A dual mutex deadlock on iOS/macOS during window/texture resizing under certain conditions.
- An issue where the Rive Renderer requests a repaint on a disposed render object.
-
0.14.0-dev.216 Jul 2025 pre-release -
0.14.0-dev.115 Jul 2025 pre-releaseRelease notes
Open source →This is a significant update for Rive Flutter. We've completely removed all of the Dart code that was used for the Rive runtime and replaced it with our underlying C++ Runtime.
This has resulted in significant changes to the underlying API.
Please see the migration guide, Rive Flutter documentation, and the updated example app for more information.
The core runtime code is now in rive_native. This release uses
v0.0.4of that package.What's New in 0.14.0
This release of Rive Flutter adds:
- The Rive Renderer
- Support for Data Binding
- Support for Layouts
- Support for Scrolling
- Support for N-Slicing
- Support for Vector Feathering
- All other features added to Rive that did not make it to the previous versions of Rive Flutter
- Includes the latest fixes and improvements for the Rive C++ runtime
- Adds prebuilt libraries, with the ability to build manually. See the rive_native package for more information
- Removes the
rive_commonpackage and replaces it withrive_native
Now that Rive Flutter makes use of the core Rive C++ runtime, you can expect new Rive features to be supported sooner for Rive Flutter.
Note: All your Rive graphics will still look and function the same as they did before.
-
0.13.2002 Dec 2024Release notes
Open source →- Fix: Windows/Linux building. Undefined symbol
hb_style_get_value, see issue 437
- Fix: Windows/Linux building. Undefined symbol
-
0.13.1929 Nov 2024Release notes
Open source →- Adds the
isTouchScrollEnabledproperty toRiveAnimationandRivewidgets. Whentrueallows scrolling behavior to occur on Rive widgets when a touch/drag action is performed on touch-enabled devices. Defaults tofalse, which means Rive will "absorb" the pointer down event and a scroll cannot be triggered if the touch occurred within a Rive Listener area. Setting totruewill impact Rive's capability to handle multiple gestures simultaneously. - Bump to latest
rive_common, v0.4.14.
- Adds the
-
0.13.1825 Nov 2024Release notes
Open source →- Bump to latest
rive_common, v0.4.13. Resolves issues building rive_common downstream.
- Bump to latest
-
0.13.1715 Nov 2024 -
0.13.1613 Nov 2024 -
0.13.1518 Oct 2024Release notes
Open source →- Fix audio crashing iOS
- Add new text resizing and layout features. Resolves 422.
-
0.13.1428 Sep 2024Release notes
Open source →- Reduce audio polling and unneeded runtime calculations around audio. Resolves issue 411
-
0.13.1329 Aug 2024Release notes
Open source →- Update Android
minSdkVersionfrom 16 to 19 - Update
kotlin_versionfrom '1.6.10' to '1.7.10' - Specify the Android NDK version Rive should use by setting
rive.ndk.versioningradle.properties. For example:rive.ndk.version=26.3.11579264. See issue 398. - Expand supported
webpackage range toweb: ">=0.5.1 <2.0.0". Resolves issues 413 and 415. - Fix iOS audio issue, see 416
- Various other fixes and improvements to support new Editor features
- Update Android
-
0.13.1225 Jul 2024 -
0.13.1125 Jul 2024Release notes
Open source →- Add
applyWorkaroundToRiveOnOldAndroidVersions. Experimental workaround when loading native libraries on Android 6 (see this issue). The method should be called before using any Rive APIs.
- Add
-
0.13.1024 Jul 2024 -
0.13.928 Jun 2024Release notes
Open source →- Preparation for data binding (databinding, data binding data context, databinding add boolean).
- Layout fixes and improvements (animations for layouts, layout UX fixes).
- Android example project fix.
-
0.13.818 Jun 2024Release notes
Open source →- Add
keyproperty toRivewidget. - Nested linear animations report events up to parent artboards. Previously, only nested state machines could report events so that listeners in parent artboards could listen for them.
- Add
-
0.13.707 Jun 2024Release notes
Open source →- Add
getComponentWhereOrNullonArtboard, to find a component that matches the given predicate. This can be used instead offorEachComponentas it allows exiting early.
- Add
-
0.13.606 Jun 2024Release notes
Open source →- Add
getBoolInput(name, path),getTriggerInput(name, path), andgetNumberInput(name, path)onArtboardto set nested inputs (inputs on nested artboards), see the documentation.
- Add
-
0.13.523 May 2024Release notes
Open source →- Migrates to
dart:js_interopandpackage:webAPIs. - DEPRECATED:
RiveFile.initializeText- useRiveFile.initializeinstead. This now initializes the Rive audio, text, and layout engine. Callawait RiveFile.initialize()before doingRiveFile.import.RiveFile.asset,RiveFile.network, andRiveFile.filewill call initialize automatically if it has not been initialized. Alternatively, you can also callunawaited(RiveFile.initialize());in themainmethod on app start to make the first graphic load faster.
- Migrates to
-
0.13.407 May 2024Release notes
Open source →- Fixed an issue with TickerMode value not pausing a Rive graphic. Thanks to 'jaggernod' for the contribution.
- Bump rive_common to pick up the Privacy manifest for iOS & macOS runtimes
-
0.13.304 May 2024Nothing published for this version
-
0.13.222 Apr 2024Release notes
Open source →- DEPRECATED:
ExtensionandTypeenum onFileAsset. You can create a custom maintained version, see example: https://gist.github.com/HayesGordon/5d37d3fb26f54b2c231760c2c8685963 - BREAKING: Removal of previously deprecated methods
assetResolveronRiveFile.networkand classNetworkAssetResolver - Add Audio out-of-band, with examples.
- Support for asset audio volume.
- Fixed an issue with audio decoder in web build.
- Adds
play()/pause()andisPlayingto anArtboard. This completely stops the artboard from playing (including nested artboards) and stops/starts the animation ticker. Pausing an artboard can be used to reduce resources used for Rive graphics that aren't visible on screen. - Adds
getBoolInput,getTriggerInput,getNumberInput, andtriggerInputonStateMachineControllerto easily retrieve state machine inputs and fire triggers. This can be used instead offindInputandfindSMI, to easily retrieve anSMIBool,SMINumber, andSMITriggerto manipulate a Rive state machine.
- DEPRECATED:
-
0.13.116 Mar 2024 -
0.13.008 Mar 2024Release notes
Open source →- Adds support for Audio.
- Object Generator adds the ability to override built-in objects with custom objects.
- Fix [355] to ensure the Rive render object is attached before handling pointer events.
-
0.12.419 Dec 2023Release notes
Open source →- Adds
behaviorargument toRiveAnimationandRive. An enumRiveHitTestBehaviorspecifies how to handle hit testing on an animation. Default isRiveHitTestBehavior.opaque- consuming all hit events for the artboard bounds. - Collapsed nested artboards don't listen to pointer events anymore
- Constraints pointing to collapsed targets are not applied
- Adds
-
0.12.306 Nov 2023Release notes
Open source →- Support for Nested Inputs and Nested Events. See the docs on Nested Artboards.
-
0.12.201 Nov 2023Release notes
Open source →- Fixes an issue when importing interpolators.
- Increase HTTP dependency range.
-
0.12.125 Oct 2023 -
0.12.024 Oct 2023Release notes
Open source →- BREAKING: Changes to
assetLoaderinRiveFile. See the Rive docs on Loading Assets for updated examples.
- BREAKING: Changes to
-
0.11.1719 Sep 2023Release notes
Open source →- Timeline based events with new example showing how to play audio when an event fires.
- More events examples: open url, star rating.
-
0.11.1605 Sep 2023 -
0.11.1501 Sep 2023Release notes
Open source →- New event system! Listen to events reported by a StateMachine via StateMachineController.addEventListener.
- Fixes an issue with animations not playing back correctly when a work area is defined.
-
0.11.1410 Aug 2023Release notes
Open source →- Refactor how hit testing is performed in
RiveAnimationandRivewidgets. Pointer events (listeners) can now be enabled on theRivewidget by settingenablePointerEventstotrue(default is false). - Change in how animations advance when using
RiveAnimationandRivewidgets. Now usingTicker, which will allow Rive animations to respecttimeDilationandTickerMode. Resolves 187, 254, 307, and 328 - Support for line spacing.
- Refactor how hit testing is performed in
-
0.11.1307 Aug 2023Release notes
Open source →- Initializes Rive's text engine only when necessary when calling any of
RiveFile.asset,RiveFile.network, orRiveFile.file. - You'll need to manually call
RiveFile.initializeTextwhen callingRiveFile.importdirectly to use text features. You can optionally only call this if you know the file needs the text engine, or you can determine if it needs it by callingRiveFile.needsTextRuntime.
- Initializes Rive's text engine only when necessary when calling any of
-
0.11.1205 Aug 2023 -
0.11.1102 Aug 2023