Theme management system for React Native apps - Colors, design tokens, and theme state management.
npm install @umituz/react-native-design-system-themereact>= 18.2.0react-native>= 0.74.0zustand>= 5.0.2@umituz/react-native-design-system>= 1.5.0
import { useAppDesignTokens, useDesignSystemTheme } from '@umituz/react-native-design-system-theme';
const MyComponent = () => {
const tokens = useAppDesignTokens();
const { themeMode, setThemeMode } = useDesignSystemTheme();
return (
<View style={{
backgroundColor: tokens.colors.primary,
padding: tokens.spacing.md
}}>
<Text style={tokens.typography.bodyLarge}>Hello!</Text>
</View>
);
};import { useDesignSystemTheme } from '@umituz/react-native-design-system-theme';
import { useTheme } from '@domains/theme';
// Sync app theme with design system
const { themeMode } = useTheme();
const { setThemeMode } = useDesignSystemTheme();
useEffect(() => {
setThemeMode(themeMode);
}, [themeMode]);useAppDesignTokens()- Get theme-aware design tokensuseDesignSystemTheme()- Get/set theme mode
lightColors- Light theme color palettedarkColors- Dark theme color palettegetColorPalette(mode)- Get color palette for theme modewithAlpha(hexColor, alpha)- Add alpha transparency to hex color
createDesignTokens(mode)- Create complete design tokens for theme modeSTATIC_DESIGN_TOKENS- Static design tokens (light theme only)
ThemeMode- 'light' | 'dark'ColorPalette- Color palette typeDesignTokens- Complete design tokens type
MIT