Skip to main content

RootNative UI

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

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) on MD3 window size classes

Get started

  • New projectQuick Start — scaffold a ready-to-run Expo app with npx rootnative create.
  • Existing projectInstallation — 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
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
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