Skip to main content

RootNative UI

Design-system agnostic component library for React Native. Ships with Material Design 3 out of the box.

Runs on iOS, Android, and web (through react-native-web), on the Expo SDK 57 runtime. See Installation for the platform table.

Features​

  • Design-system agnostic theme engine — use MD3, build your own, or mix both
  • Material Design 3 built-in with light and dark themes
  • Generate branded MD3 themes from a single seed color
  • Full TypeScript support with strict types
  • Accessible by default — proper roles, labels, and states, and the OS reduce-motion setting is respected out of the box
  • Tree-shakeable with subpath exports
  • Responsive layout hooks (useBreakpoint, useBreakpointValue, useWindowDimensions) on MD3 window size classes

Get started​

  • New project → Quick Start — scaffold a ready-to-run Expo app with npx rootnative create.
  • Existing project → Installation — add RootNative UI to your React Native or Expo app.

Components​

Layout​

ComponentDescription
BoxTheme-aware View with spacing shorthand props
RowHorizontal layout with wrap and invert support
ColumnVertical layout with invert support
GridEqual-width multi-column grid
LayoutSafe area wrapper with theme background

Inputs​

ComponentDescription
ButtonActions and choices with a single tap
ButtonGroupConnected buttons with single or multi selection
CheckboxSelection controls for multiple choices
ChipCompact elements for filters and selections
FABFloating action button for the screen's primary action
IconButtonIcon-only actions
RadioSelection controls for single choice options
SearchBarMD3 search bar with a clear button and trailing actions
SliderSelect a value or range from a continuous track
SwitchToggle controls for on/off settings
TextFieldText input with labels and validation

Data Display​

ComponentDescription
AvatarImage, initials, or icon representation of a person
CardContained surfaces for related content
DividerThin horizontal or vertical rule that groups content
IconAny icon source rendered through the theme resolver
ListVertically arranged items with text and icons
LoadingIndicatorMD3 Expressive shape-morphing loading indicator
ProgressLinear and circular progress indicators (determinate / indeterminate)
TypographyMD3 type scale text rendering

Surfaces​

ComponentDescription
AppBarTop navigation with title and actions
BottomSheetDraggable modal and standard sheets with snap points
DialogBasic and full-screen modal dialogs
KeyboardAvoidingWrapperKeeps inputs visible when the keyboard opens
MenuAnchored dropdown menus that flip and shift to stay on screen
PortalRender content above the rest of the tree
SnackbarQueued transient messages with an optional action
TooltipPlain and rich tooltips on hover or a long press
ComponentDescription
TabsPrimary and secondary tab rows, fixed or scrollable
NavigationBar80dp bottom destination bar with an animated indicator pill
NavigationRail80dp side rail of destinations with an optional menu and FAB header
NavigationDrawerModal or standard side panel of destinations with sections and badges