Why should we add multiple targets to our apps?

For anyone that is dealing with React Native projects that has moved on from a “side project”, has encountered questions about separating development, staging, and production builds.

Here is a useful guide that describes in detail the 12 Factor methodology:

This guide will help easily integrate #3, Config on both iOS and Android mobile applications using React-Native.

Why should we care about making multiple target pipelines in our mobile applications?

Allows easy testing of features without disrupting production application.

Able to swap API urls, API keys, constants, etc without constantly changing them by hand or using logic to infer the config at run-time.

Multiple app installation of different environments on same device

Because it’s slick, and we are putting on our big kid pants

For this example, I will be creating a RN app called Simplicity with 2 target pipelines: Production and Development. This can be expanded into any number of targets, just use the references from the Development pipeline to create additional targets. Usually Staging, Beta, or QA is included, but will be omitted in this blog post for “simplicity”.