There’s much going on in the React Native’s world lately, libraries are getting more mature, new ones are evolving but the things we do as a developers mostly consist a bunch of similar patterns, which are pretty much repeated across every mobile product we build. These include navigation, buttons, modal dialogs, forms and so on.

With this in mind – and React’s component-based architecture – there’s a few component libraries and UI toolkits that could be included in the project to save our time and provide ready to use solutions to the most common problems and tasks.

Here’s a list of 5 UI libraries for React Native that I recommend considering as a base for your next project:

NativeBase

The most mature and probably the most popular cross platform components set.

https://github.com/GeekyAnts/NativeBase

Shoutem

Nice and fresh looking set of 3 libraries: components library @shoutem/ui, CSS-alike theme support @shoutem/theme and @shoutem/animation which gives you the ability to create animations and transitions in a declarative way.

https://shoutem.github.io/docs/extensions/tutorials/getting-started

React Native UI Kitten

New player on the market. A set of nice and consistent looking components with a cool ability to change themes on the fly.

https://github.com/akveo/react-native-ui-kitten

Paper

Clean and lightweight looking library following Material Design guidelines. Delivered by Callstack team – well known guys in the React Native community – and a good piece of work. Definitely worth considering. Has some nice theming ability.

React Native Elements

Well known and mature, quite long time on the market gaining 14,5k stars on Github.

https://github.com/react-native-training/react-native-elements

In sum, choosing a UI library is pretty much a matter of preference. All of the mentioned libraries are stable, nice looking and well written. Knowing that, you can base your pick on whether or not you need theming support and general look and feel of the kit.

My personal choice is Paper. What’s yours?