When you have a startup one of the first things you hear is:
"You need a mobile app."
But then you think, "How do I get an iOS & Android app?" Outsourcing? Hire two devs? One for iOS and one for Android?
Whatever you do I recommend you do it with React Native.
React Native is a coding framework that your devs can write apps in with huge benefits for you as a founder.
First, let's show how CouponHippo made both our apps in 2 weeks with 1 dev:
And oh yeah, we had NEVER used React Native before.
We did it with one of our EXISTING web developers.
And it's awesome.
Let's break down the benefits from a Founders point of view:
1. Get iOS & Android from one code base.
One huge benefit of React Native is you can write code that compiles to both iOS & Android. Writing code in the standard React way will help you have only one codebase and you will get two Native Apps out of it.
2. It will be cheaper. Especially if you are outsourcing.
Many startup founders begin by outsourcing their app development. React Native can help in that your agency will need less developers and less time to make both iOS & Android apps.
Pro Tip: Because React Native is new a lot of agencies want to try it out. You should try and pitch them on giving you a discount and having them use this new technology with you.
Don't let being new scare you. React Native is very developed and awesome. Many mobile devs have not had the chance to try it yet and you can give them that opportunity.
3. You can use your existing web developers.
Many web developers already use plain React. React is the original coding Framework for websites. React Native came later targeting iOS and Android. Using one of these developers can get you a Native App even faster using React Native.
Pro Tip: I recommend finding a web developer who has dabbled in Native Apps before. They usually do a better job getting up to speed and getting your app into the Apple App & Google Play Stores.
4. Officially supported by Facebook.
When choosing a newer coding framework one thing to think about is how will it be supported in the future.
React Native is a great choice because it is supported directly by Facebook Engineering. It's like having some of the best software engineers making sure your tools are cutting edge.
It is also open-sourced by Facebook so tons of people contribute to the health of the code.
5. Truly Native Code.
6. Tons of people are using it.
React Native has a thriving community and ecosystem. Your developers will be able to find answers to problems other devs has found int he past.
They will also get access to libraries and plugins you can use in your apps to speed up development.
It's used at some great companies:
- and many more...
7. It's Fast.
React Native is fast in 2 ways:
Hot Reload: Devs get fast code reload. It's as fast as refreshing a web page to see a code change. With pure native development they have to recompile after code changes. The non-React way takes up a lot of time when added up over the year.
8. You can bridge Native features easily.
Many times you may have something novel or need to use something new that just came out in iOS or Android. It's straight forward in React Native to just add some Swift (iOS) or Java (Android) to your project.
Some things developers often find themselves doing in the Native OS languages:
- Push Notifications
- Deep Linking
- Native UI components that need to be exposed to React.
Instagram posted how they mix React Native with their native apps in case you need to retrofit an older app.
9. You can get hype about being on the edge of tech.
Every startup or company likes hype and publicity. React Native can get you coverage on blogs and news for a forward thinking engineering culture.
10. It'll be easier to hire good devs.
If you've ever had to hire iOS or Android devs you will know it's not easy. Good ones are hard to find. Goods ones are also very expensive.
You can also get away with hiring one rockstar developer who can make a single React Native codebase into both iOS & Android apps.
Pro Tip: Write that the job opening is for a React Native app. It's really hot right now and a lot of devs want to learn it.
11. Easy to make re-usable components across the app.
One benefit of React is reusability within the app code. It's easy to share a component from one part of the app with another part. It's yet another reason that makes React Native development fast.
12. It's Growing.
React Native is getting more popular every day. Just have a look at this Github graph:
13. UI is REALLY easy to lay out.
Laying out User Interfaces in mobile apps has never been easier than with React Native.
Developers use CSS & Flexbox to style and layout the views. This is the same as they would any website in a responsive way.
The responsiveness of React Native helps your app deal with different screen sizes. There are a lot of phones and your app will work for all screen sizes.
14. It's only getting better.
Because it's supported by the Facebook team and a whole ecosytem of excited devs it only gets better. Your team will get these benefits like every great modern framework.
15. Hybrid apps are fully supported (part of app is native, other parts are web views)
If you need to have part of your app just be a web view then React Native has you covered to (maybe your "Forgot Password" flow).
16. Your devs will be excited to code.
Developers love using new technology. Especially technology that makes their lives easier and has a lot of hype. It will not be hard to find a good developer in your existing team to jump headfirst into React Native.
17. It's also fast to Fix Bugs & Iterate
This is hammering it home a bit but it's worth noting.
When you are startup moving fast and breaking things you need technology to match. What is faster than using a code base where one code change updates 2 apps?
Now it's your turn!
I hope these points help out another Founder out there. I have been part of building almost 10 Native Apps in my career and will be using React Native from now on.
If you like the article please share it. If you have any questions or comments feel free to leave them in the comments below.