Updated November 16, 2020
Checklist to Deploy React Native to Production
Originally publish on medium.com.
Many React Native developers came to mobile development from a background of web development (like me). That’s one of the reasons React Native is appealing — it’s so much like the web.
But because of this we often have a gap of knowledge, namely around bringing the app to production. The web has its challenges but mobile development has a different set of challenges — challenges we may not necessarily be familiar with.
I know this is something I struggled with so I wanted to put together a quick checklist of tasks you can use to successfully bring your React Native app to production.
Required Accounts
Before you get started you need a few accounts...
- Apple Developer Account ($99/year)
- Google Play Developer Account ($25 once)
App Icons
- Create iOS App Icon
- Create Android APp App
I like to use this Figma template to create the icons. I walk through my full workflow for creating the icons and adding them to the app in React Native School.
Splash Screen
- iOS Splash Screen
- Android Splash Screen
There are two ways to go about this avoid the splash screen or implement one.
Configure App
- iOS
- Android
Uploading the App
- iOS: Create and upload the app to App Store Connect
- Android: Create and upload the app to Google Play Console
More detailed instructions available in React Native School (iOS, Android).
Test the App!
- iOS: Test using TestFlight
- Android: Test via Release Tracks
Publishing
- iOS: Submit for Review via App Store Connect (more details)
- Android: Publish via Google Play Console (more details)
Other Considerations
- Throughly test your app! Uploading a new version of your app isn’t quite as fast as it is on the web so you really want to make sure your app isn’t going to crash 😅
- Add basic offline support. A network connection isn’t guaranteed (especially if you’re targeting emerging markets) so test things on a disconnected device or at least one with a slow connection
- Spend time on your release management. I don’t automate much but I do try to make it as easy and error free as possible. Tools like Fastlane and CodePush help a ton.
I hope that brief checklist gives you something to follow along with as you bring your React Native app to production! If you’re looking for more information in regards to bringing an app to production I’ve put together an in-depth, step-by-step course that walks you through this entire process via video (part of the React Native School membership!)