Open source · Author

Root Native UI — React Native components

TypeScriptui

A design-system agnostic component library for React Native and Expo, built under my Root Native organisation. It ships Material Design 3 out of the box, then gets out of the way — override at the theme, the prop or the style level, whichever fits.

Why it mattered

Born out of repetition — after building the same buttons, inputs and sheets across client projects, I started factoring them into one place. The design-system agnostic part is the lesson those projects taught: every library is opinionated until the brand guidelines land, so the theme layer had to bend rather than be fought.

Code contributions

  • 28 components shipping Material Design 3 by default, on Expo and bare React Native
  • A theme engine that adapts to your design language instead of imposing one — use MD3, bring your own, or mix both
  • Per-component subpath exports, so the bundle only carries what you import
  • npx rootnative create to scaffold a project, and rootnative add to copy components in, source and all
  • Accessibility roles, labels and states baked in, with strict types on every prop and theme token

Tech

Material Design 3Design systemCLI

How I use these tools

Links

Writing about this project

Other projects

  • react-navigationRouting and navigation for React Native and web apps.
  • react-native-paperMaterial Design components for React Native (Android & iOS).
  • react-multi-carouselA lightweight, production-ready carousel with multi-item and SSR support — no dependencies, 2kb.
  • inertiaDeclarative animation primitives for React Native — animations are props, not boilerplate.
  • resistor-color-calculatorWork out a resistor's value from its colour bands, without the effort.

Want something like this built?

Get in touch →