The Road to Learning about React-Native

Image Title

posted by Khoa Quach
on Sep 06, 2018

A few weeks ago I decided to dive into the whole React-Native trend to see what all the fuss was about. Throughout my research, I came across some helpful resources that I wanted to share with anyone looking to follow a similar path.

Considerations

Before jumping in and investing in React-Native, I wanted to see how it compared to similar stacks.Watch Native vs NativeScript vs Ionic vs React-Native here:

Getting Started

Once I decided it was worth further investigation, I began my research in earnest. There are so many great tutorials and React-Native official documents available to those interested in learning more. As a first step, check out some of the great videos released on YouTube, like the one below.

Crash Course

Environments

One of the next big questions was about the development environments and tools suggested by the community. If you have read some of my previous posts, you know that I work on both PCs and Macs interchangeably, so I was in need of some direction.

My recommendation – especially at the beginning – is to start with Snack from the Expo team. This is like your jsfiddle for the React-Native development, and it will get you started easily without having to put too much thought into it (yet).

Another great tool instead of setting up an XCode or Android Studio is Appetize.io, which will allow you to access an iPhone or Android device emulator to see the content of your app. They offer a free plan, so I highly recommend signing up when you start diving deeper into the technology; with its quick and easy access, you’ll be glad you did.

If you want to setup Android Studio, here is a good video for PC users:

Boiler Plates and App Structure

Ignite has great documentation, guidelines, and project structure that you can follow for your React-Native projects.

https://github.com/infinitered/ignite/blob/master/docs/quick-start/project-structure-andross.md

Another option is also leveraging Expo XDE in order to start and create your project (https://github.com/expo/xde/release).

Working with Authentication

Snack/Expo have their own methods and quick classes that you can learn from when it comes to Facebook authentication.

It was highly recommended to me that I use Firebase from Google, and I can attest that it is a great platform. The setup is a bit lengthy, but you will definitely gain back that time in the long run since it provides storage and analytics on top of being able to work with different auth systems.

https://github.com/invertase/react-native-firebase-starter
A quick guide that will get us up and running with Firebase’s Authentication in React Native!medium.com

While we are on the subject, working with Firebase will most likely require the installation of a certain pod for iOS development, so be sure to read the following guide:

https://guides.cocoapods.org/using/getting-started.html#getting-started

***

[Read more: (R4R) Column Formatting in SharePoint Lists (Modern Experience)]

Here at NIFTIT, from Office 365 consulting to SharePoint solutions, we can handle projects of any size and difficulty. We follow industry standards and best practices to build world-class solutions. Learn more about our office 365 support here!