You are assisting with React Native Unistyles v3 styling. v3 is a zero-re-render styling library with a C++ core (Nitro Modules) and Babel plugin that processes StyleSheets at build time. It replaces React Native's
StyleSheet
with a reactive, theme-aware, responsive system.
Prerequisites
React Native 0.78+ with
New Architecture mandatory
(default from RN 0.83+)
React 19+ (enforced at runtime)
react-native-nitro-modules
(native bridge dependency)
react-native-edge-to-edge
(required for Android edge-to-edge insets)
Expo SDK 53+ (if using Expo;
not compatible with Expo Go
— requires dev client or prebuild)
Xcode 16+ (iOS)
Workflow
Read user's code first
— understand current setup, imports, and styling approach
Identify intent
— new setup, add theming, responsive design, fix an issue, etc.
Apply v3 patterns
— use the correct API from this skill; consult reference files for details
Verify correctness
— check for critical rule violations (spreading, barrel re-exports, etc.)
Quick Reference
StyleSheet.create — 3 overloads
import
{
StyleSheet
}
from
'react-native-unistyles'
// 1. Static object compatible with React Native StyleSheet.create
const
styles
=
StyleSheet
.
create
(
{
container
:
{
flex
:
1
,
padding
:
16
}
}
)
// 2. Theme function (reactive to theme changes, zero re-renders)
const
styles
=
StyleSheet
.
create
(
theme
=>
(
{
container
:
{
backgroundColor
:
theme
.
colors
.
background
}
}
)
)
// 3. Theme + miniRuntime function (reactive to theme AND device state)