software-mansion/react-native-screens — explained in plain English
Analysis updated 2026-07-03
Speed up tab and stack navigation in a React Navigation app by delegating screen transitions to iOS and Android native APIs.
Reduce memory use in a large React Native app by freezing off-screen tab content so it pauses instead of re-rendering in the background.
Add Windows and visionOS navigation support to a cross-platform React Native app using a single shared navigation library.
Fix jank in navigation animations on lower-end Android devices by switching from JavaScript-driven views to native screen components.
| software-mansion/react-native-screens | samdenty/gqless | pagescms/pagescms | |
|---|---|---|---|
| Stars | 3,660 | 3,662 | 3,665 |
| Language | TypeScript | TypeScript | TypeScript |
| Setup difficulty | easy | moderate | moderate |
| Complexity | 2/5 | 3/5 | 3/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Android requires one code line in MainActivity, iOS and modern Android otherwise auto-link on install. v4.25+ dropped the legacy architecture.
React Native Screens is a library that helps mobile app developers build smoother navigation in React Native apps by using the phone's own built-in screen management instead of a custom JavaScript version. When a user taps to a new page in an app, the transition and the memory handling can be managed by the operating system directly, which tends to feel more natural and perform better than a purely JavaScript-driven approach. This library is not something you use on its own to build navigation from scratch. It works as a low-level building block that popular navigation tools, most notably the React Navigation library, rely on underneath. If you are a developer using React Navigation, adding React Native Screens as a dependency is usually all you need to do, and the navigation tool will automatically start using native screen management instead of plain views. The library supports iOS, Android, tvOS, visionOS, Windows, and Web. Installation on iOS and modern versions of Android and Windows is handled automatically when you set up the project. Android requires one small code addition to a specific file to avoid crashes when the operating system restarts the app, for example after a screen rotation or a phone call. One additional feature the library includes is experimental support for freezing off-screen content. When a user navigates away from a page, that page's content can be paused rather than re-rendered in the background, which saves processing work without losing the page's current state. Developers opt into this separately since it is still experimental. The library is maintained by Software Mansion, a development studio, and it tracks closely with the React Native release cycle. Version 4.25 and later dropped support for the older rendering system, so developers still on the legacy architecture need to stay on an older version.
React Native Screens makes mobile app navigation feel smoother by handing screen transitions and memory management to the phone's native OS instead of running them in JavaScript.
Mainly TypeScript. The stack also includes TypeScript, React Native, Objective-C.
MIT license, use freely for any purpose including commercial, keep the copyright notice.
Setup difficulty is rated easy, with roughly 5min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.