A styling library that brings Tailwind CSS utility classes to React Native apps, compiled at build time.
jpudysz/react-native-unistyles
A React Native styling library that extends StyleSheet with themes, responsive styles and variants, built on Nitro Modules and JSI.
- Stars
- 2,974
- Forks
- 139
- Open issues
- 4
- Last commit
- 4 days ago
What is it?
Unistyles is a styling library for React Native that replaces the usual StyleSheet workflow with a C++ core exposed through JSI and Nitro Modules. Styles are defined once and can be switched between registered themes with a single function call, and they adapt to screen size and other runtime conditions.
The library works with the New Architecture and Fabric, updating native views through the Shadow Tree rather than re-rendering React components. It does not add wrapper components, so the view hierarchy stays the same. It supports Expo development builds, web via a custom CSS-like parser with classes and pseudo classes, and server-side rendering with Next.js.
The project requires React Native 0.85+, React 19+, and Expo SDK 56+ when used with Expo. Older React Native versions and the Old Architecture are covered by Unistyles 2.0.
Key features
- 01Themes can be registered and switched with a single function call.
- 02Styles respond to screen size and other runtime conditions.
- 03Built on a C++ core with JSI bindings and Nitro Modules.
- 04Does not add wrapper components, keeping the view hierarchy clean.
- 05Supports web with classes and pseudo classes, plus SSR with Next.js.
- 06Styles can be shared across platforms in a monorepo.
Use cases
- Building a React Native app that needs light and dark themes.
- Sharing one set of styles between native mobile and React Native Web projects.
- Adding responsive layouts to an Expo app using development builds.
- Migrating a React Native codebase toward a theme-driven styling system.
Quick start
- 1
Install the library and its Nitro Modules dependency
yarn add react-native-unistyles react-native-nitro-modules - 2
Follow the installation guide for your platform
Things to know
- Requires React Native 0.85+ with the New Architecture and React 19+.
- Expo projects need development builds; Expo Go is not supported.
Topics
FAQ
- What is react-native-unistyles?
- A React Native styling library that extends StyleSheet with themes, responsive styles and variants, built on Nitro Modules and JSI. Unistyles is a styling library for React Native that replaces the usual StyleSheet workflow with a C++ core exposed through JSI and Nitro Modules. Styles are defined once and can be switched between registered themes with a single function call, and they adapt to screen size and other runtime conditions.
- Is react-native-unistyles free to use? What license does it have?
- react-native-unistyles has no declared license. Its code is public, but without a license you have no explicit permission to reuse it; ask the author before relying on it.
- Is react-native-unistyles still maintained?
- Actively maintained. The last commit to react-native-unistyles was on Nov 3, 2026.
- What can I use react-native-unistyles for?
- Building a React Native app that needs light and dark themes. Sharing one set of styles between native mobile and React Native Web projects. Adding responsive layouts to an Expo app using development builds. Migrating a React Native codebase toward a theme-driven styling system.
- How do I install react-native-unistyles?
- Install the library and its Nitro Modules dependency: yarn add react-native-unistyles react-native-nitro-modules Follow the installation guide for your platform
- Where can I get react-native-unistyles?
- The source code and installation instructions are on GitHub: https://github.com/jpudysz/react-native-unistyles
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A collection of copy-paste UI components for React Native, ported from shadcn/ui and styled with Nativewind or Uniwind.
React Native for Web: a library that lets React Native components and APIs render in web browsers through React DOM.
An open-source framework for building universal native apps with React that run on Android, iOS, and the web.
A React and React Native style library, optional UI kit, and optimizing compiler for sharing UI code across web and native apps.
A cross-platform React Native action sheet (bottom sheet) component for Android, iOS and Web with a flexible API for custom content.