Essential cross-platform UI components for React Native
NativeBase
Essential cross-platform UI components for React Native.
1. What is NativeBase?
NativeBase is a sleek, ingenious and dynamic front-end framework created by passionate React Loving team at Geekyants.com to build cross platform Android & iOS mobile apps using ready to use generic components of React Native.
2. Why NativeBase?
What is really great with NativeBase is that you can use shared UI cross-platform components, which will drastically increase your productivity. When using NativeBase, you can use any native third-party libraries out of the box.
Recommended by Microsoft
If you're looking to get started with React Native + CodePush, and are looking for an awesome starter kit, you should check out Native Starter Pro - Microsoft's react-native-code-push repo
Recommended by Awesome React Native
NativeBase added into the list of Frameworks of Awesome React Native and are also used by many other React lovers across the world.
4. Getting Started
a. Setup with pure React Native app
Install NativeBase
npm install native-base --save
Install Peer Dependencies
The peer dependencies included from any npm packages does not automatically get installed. Your application will not depend on it explicitly.
react-native link
You've successfully setup NativeBase with your React Native app. Your React Native app is now all set to run on iOS and Android simulator.
b. Setup with CRNA
Create React Native project using the CRNA cli.
CRNA helps you make React Native apps with no build configuration. Create React App works on macOS, Windows, and Linux.
Refer this link for additional information CRNA
Install NativeBase
npm install native-base --save
Install @expo/vector-icons
npm install @expo/vector-icons --save
Note
NativeBase uses some custom fonts that can be loaded using loadAsync function. Check out this expo link.
Syntax
async componentWillMount() {
await Expo.Font.loadAsync({
'Roboto': require('native-base/Fonts/Roboto.ttf'),
'Roboto_medium': require('native-base/Fonts/Roboto_medium.ttf'),
'Ionicons': require('@expo/vector-icons/fonts/Ionicons.ttf'),
});
Check out the KitchenSink with CRNA for an example of the implementation.
Find the KitchenSink repo here
c. Setup with ignite-native-base-boilerplate
You can run the following command to create the boilerplate, provided you have Ignite CLI installed.
ignite new appname --boilerplate native-base-boilerplate
Go to app location
cd appname
For iOS run
react-native run-ios
For Android run
react-native run-android
Refer ignite-native-base-boilerplate page for additional information
5. Components
NativeBase is made from effective building blocks referred to as components. The Components are constructed in pure React Native platform along with some JavaScript functionality with rich set of customisable properties. These components allow you to quickly build the perfect interface.
6. NativeBase for Web
NativeBase is now available for React web lovers. Check the demo
Find the repo here
7. Compatibility Versions
NativeBase | React Native |
---|---|
v0.1.1 | v0.22 to v0.23 |
v0.2.0 to v0.3.1 | v0.24 to v0.25 |
v0.4.6 to v0.4.9 | v0.26.0 - v0.27.1 |
v0.5.0 to v0.5.15 | v0.26.0 - v0.37.0 |
v0.5.16 to v0.5.20 | v0.38.0 - v0.39.0 |
v2.0.0-alpha1 to v2.1.3 | v0.38.0 to v0.43.0 |
v2.1.4 to v2.1.5 | v0.44.0 to v0.45.0 |
v2.2.0 | v0.44.0 to v0.45.0 |
v2.2.1 | v0.46.0 and above |
v2.3.0 to 2.4.1 | v0.46.0 and above (does not support React 16.0.0-alpha.13) |
8. React Native Seed
React Native Seed provides you React Native starter kits for your base app with the technologies that you love.
Based on the feedback we received from our users, people had trouble sorting out the right boilerplate for them with the desired technologies and contacted us to enquire. We realized that many people were particular about the technologies they want in the app and that a minimal, neat solution was required to solve this, and hence, React Native Seed.
React Native Seed is for learners and professionals alike, those who want to experiment, learn all aspects and those who already know enough, just want a starter kit to quickly start working on their project.
9. NativeBase Market
Having tried with the free version, Native Starter Kit and appreciate our product?
Get on the mobile fast track with the featured apps of NativeBase, to build high-quality iOS and Android mobile apps.
A marketplace for premium React Native app themes to build high-quality iOS and Android mobile apps.
10. Documentation
Go through NativeBase Docs to play with NativeBase.