June 20, 2016
React Native has made mobile application development process bliss for developers, there’s no doubt in that. I’ve been working on it full time since last 5 months and I couldn’t be more happier then how I’m right now.
After working on bunch of React Native projects, I was retrospecting the libraries I was using and turns out there are quite few of them which are essentially shaping up my projects very well. Hence, I thought I could compile a list and share it with the community.
Here we go:
Most of the users who download our application are usually not aware with the complete offering of it. Icon of an application doesn’t give any idea about the offering either. That is the reason, ramping up users or educating them about an application with few pointers could help in long run.
App intro library provides an easy way to quickly wire up some basic or even high end introduction screens in to an application, which can then result in informative onboarding.
Icons adds a significant user experience improvement in any application. They have a soothing effect on users eye and mind if used effectively. Using appropriate icons can directly impact how the user perceives an application.
This library supports multiple well crafted icons by popular publishers with an elegantly designed API to integrate them smoothly in a React Native applications.
Getting users to enter some sort of data in a multiple form fields could be a complex user experience to build; Whole form experience has to play nicely with the users’ keyboard, fields has to respond to action buttons, date/time picker etc. there are too many variables to take care of.
To be honest, there’s no one-size-fit-all library available to solve this problem. Having said that, Gifted Form comes bundled with most of the common solutions in form filling. It could be useful if you don’t want to roll your own solution and tackle all those problem by yourself.
p.s: react-native-gifted-form could be difficult to customize incase you are looking for something other than what it offers.
I believe, I don’t need to write do any explaining about the important of “Push Notification” in mobile application ecosystem. So I’ll just get to the point, You should use this library for any push notification related functionality even if your application is currently focused on iOS (your future self will thank you).
React Native comes with its own push notification for iOS module but, this library makes the job easier when you want to support both the platform.
Sharing any type of data should be a blissful experience for your users. It is the most important channel of growth for your application.
I recommend this library because of its cross platform native support for sharing content. It uses iOS share sheet and Android share intent. (Also, it supports Windows platform as well :D)
An image speaks thousand words; what if it takes time to load? Your application might look funny while the image is loading and it may give a wrong impression to the end user.
Using an image progress bar always keep users glued to the screen and gives them predictability. WIN-WIN.
Okay, this library is in the list not to tell you why to use Google Analytics but to tell you which library to use and why.
There are multiple libraries available to integrate GA in your application but, most of them simply utilizes GA’s API and not it’s official SDK resulting in incomplete tracking. This library however, adds a React Native wrapper around GA’s official SDK giving you full grip on your analytics dashboard.
Fabric.io by Twitter has evolved recently with a lot of great tools for mobile application developers to help them with pre-launch / post-launch related problems.
Nonetheless, I’m particularly interested in Crashlytics. It helps gain enough insights about crashes in my applications by pin-pointing the cause of the issue. Highly recommended.
Concluding the list with one of my personal favorite and could be labeled as a life saver for developers library.
Using CodePush one can ship changes to an existing production mobile application without going through the review process of App Store (Apple approves of this) or waiting for the users to update their apps. It enables you to fix bugs on the fly or release features with a lot of flexibility.
It of course has some limitation to what extend you can make changes in a codebase despite that, it succeeds. It’s a must have.
you can watch my screencast on *how to use code-push with react-native.*
A drop in sleek loading indicator library for your application to show more then just a spinner.
Disclaimer: I’m the author of this library.
Huge thanks to all the maintainers of above libraries for their enormous efforts behind them.