React Native Ease: Platform-Native Animations Without the Extra Work

youtube-cover
Subtitles
Show

Heading 1

Heading 2

Heading 3

Heading 4

Heading 5
Heading 6

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

Block quote

Ordered list

  1. Item 1
  2. Item 2
  3. Item 3

Unordered list

  • Item A
  • Item B
  • Item C

Text link

Bold text

Emphasis

Superscript

Subscript

Timestamps
Show

Heading 1

Heading 2

Heading 3

Heading 4

Heading 5
Heading 6

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

Block quote

Ordered list

  1. Item 1
  2. Item 2
  3. Item 3

Unordered list

  • Item A
  • Item B
  • Item C

Text link

Bold text

Emphasis

Superscript

Subscript

Listen on Spotify
Watch on YouTube
Listen on SoundCloud
Listen on Apple Podcasts
Guests
Janic Duplessis
Head of Consulting
@
App & Flow

Heading 1

Heading 2

Heading 3

Heading 4

Heading 5
Heading 6

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

Block quote

Ordered list

  1. Item 1
  2. Item 2
  3. Item 3

Unordered list

  • Item A
  • Item B
  • Item C

Text link

Bold text

Emphasis

Superscript

Subscript

Show Transcript

React Native animation has come a long way from JS-driven Animated calls and early native-driver work.

In this episode, Łukasz Chludziński talks with Janic from App & Flow about React Native Ease, a library built around a simple idea: use the native platform’s animation primitives when they are the right fit. The conversation covers why this still matters in a mature ecosystem, where Reanimated remains the workhorse, and how small API choices can make animation code feel closer to regular React.

Janic, a React Native contributor and developer at App & Flow, joins Łukasz to unpack the thinking behind React Native Ease. They trace Janic’s path from early mobile work with Cordova and WebViews, through React Native Core contributions, to building a focused animation library that uses Core Animation on iOS, Android’s Animator APIs, and CSS transitions on the web.

From early React Native bugs to a mature ecosystem

Janic started using React Native when it was still iOS-only, after working on WebView-based mobile apps with Cordova.  At the time, React Native offered a much more native-feeling alternative to Cordova, while still being young enough that plenty of bugs were small, visible, and approachable for new contributors. Today, the ecosystem is more polished, React Native Core is slimmer, and many contribution opportunities live in third-party libraries instead.

Why React Native Ease exists

React Native Ease came from a long-standing gap Janic had noticed: iOS developers usually use Core Animation for certain UI animations, but React Native animation libraries were not exposing that path directly. The library focuses on simple, fire-and-forget animations such as opacity, translation, scale, and similar cases where native platform APIs can do the work efficiently.

Core Animation and the UI thread

The key technical distinction is on iOS. Core Animation API hands animation work to a render server outside the app process, which means the animation does not have to update on the UI thread every frame. That matters when React commits, view mounting, or other UI work compete for the same frame budget. React Native Ease is built to take advantage of this where the platform supports it.

Reanimated is still the right tool for complex interactions

Janic is clear that React Native Ease is not trying to replace Reanimated. Reanimated is still the right choice for gesture-driven animations, advanced interactions, and custom per-frame calculations. The trade-off is that this flexibility has a cost. For simple transitions, React Native Ease asks whether developers need that machinery at all.

The slow-moving onboarding background

The library’s first strong use case came from a client app with an onboarding background that moved slowly across screens. Because the movement was subtle and continuous, dropped frames were easy to notice. Replacing the existing approach with a Core Animation-based implementation removed the visible stutter on iOS, which pushed Janic to turn the idea into a reusable library.

A React-like API by design

React Native Ease exposes a component that behaves like a regular React Native View. Developers can replace or wrap a view, pass animated properties, and let state changes drive transitions. There is no separate imperative start/stop handle and no shared-value model to learn. The goal is to keep the API close to React: change state, update props, let the transition run.

Resources

Need help with React Native animations?

We create smooth, performant animations tailored to your app’s needs.

Let’s chat
Link copied to clipboard!
insights

Learn more about Animations