Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon

A Professional Environment for React Native, Part 2

Save for later
  • 4 min read
  • 12 Jan 2017

article-image

In Part 1 of this series, I covered the full environment and everything you need to start creating your own React Native applications. Now here in Part 2, we are going to dig in and go over the tools that you can take advantage of for maintaining those React Native apps.

Maintaining the application

Maintaining a React Native application, just like any software, is very complex and requires a lot of organization.

In addition to having strict code (a good syntax with eslint or a good understanding of the code with flow), you must have intelligent code, and you must organize your files, filenames, and variables. It is necessary to have solutions for the maintenance of the application in the long term as well as have tools that provide feedback.

Here are some tools that we use, which should be in place early in the cycle of your React Native development.

GitHub

GitHub is a fantastic tool, but you need to know how to control it.

In my company, we have our own Git flow with a Dev branch, a master branch, release branches, bugs and other useful branches. It's up to you to make your own flow for Git!

One of the most important things is the Pull Request, or the PR! And if there are many people on your project, it is important for your group to agree on the organization of the code.

BugTracker & Tooling

We use many tools in my team, but here is our Must-Have list to maintain the application:

Unlock access to the largest independent learning library in Tech for FREE!
Get unlimited access to 7500+ expert-authored eBooks and video courses covering every tech area you can think of.
Renews at $19.99/month. Cancel anytime
  • circleCI: This is a continuous integration tool that we integrate with GitHub. It allows us to pass recurrent tests with each new commit.
  • BugSnag: This is a bug tracking tool that can be used in a React Native integration, which makes it possible to raise user bugs by the webs without the user noticing it.
  • codePush: This is useful for deploying code on versions already in production. And yes, you can change business code while the application is already in production.

I do not pay much attention to it, yet the states of applications (Debug, Beta, and Production) are a big part that has to be treated because it is a workset to have for quality work and a long application life.

We also have quality assurance in our company, which allows us to validate a product before it is set up, which provides a regular process of putting a React Native app into production.

As you can see, there are many tools that will help you maintain a React Native mobile application. Despite the youthfulness of the product, the community grows quickly and developers are excited about creating apps. There are more and more large companies using React Native, such as AirBnB , Wix, Microsoft, and many others. And with the technology growing and improving, there are more and more new tools and integrations coming to React Native.

I hope this series has helped you create and maintain your own React Native applications.

Here is a summary of the tools covered:

  • Atom is a text editor that's modern, approachable, yet hackable to the core—a tool that you can customize to do anything, but you also need to use it productively without ever touching a config file.
  • GitHub is a web-based Git repository hosting service.
  • CircleCI is a modern continuous integration and delivery platform that software teams love to use.
  • BugSnag monitors application errors to improve customer experiences and code quality.
  • react-native-code-push is a plugin that provides client-side integration, allowing you to easily add a dynamic update experience to your React Native app.

About the author

Pierre Monge (liroo.pierre@gmail.com) is a 21-year-old student. He is a developer in C, JavaScript, and all things web development, and he has recently been creating mobile applications. He is currently working as an intern at a company named Azendoo, where he is developing a 100% React Native application.