In the spirit of being a solo-founder and developer, my goal was to get a product out to the users as quickly as possibly. With Harvy for the web built in React and the rumblings about React Native being so positive, my first application for Harvy was built with React Native.
I was able to quickly create a "version 1" with React Native and was proud and surprised about how easy of a transition it was. I was able to reuse much of my backend helpers, and pretty seamlessly copy over components. During the early stages I was even compiling for Android and iOS simultaneously with hopes of launching on both platforms.
Unfortunately those dreams came to a crashing halt when integrating with Spotify. Within the past two years, Spotify updated their SDKs with more functionality and better support for iOS and Android. Unfortunately, the companion, open-source NPM package was on the previous version of the SDK. That meant that only Spotify Premium users could use Spotify in my app because that is what the SDK supported...not free users.
I was swiftly rejected by Apple because the first version of my application didn't allow free/non-premium Spotify users to use the app (due to the SDK not allowing it). I ended up passing Apple review by having a basic version of the app that did none of the music features. It ended up being a simple running tracker.
This was not good enough for me. Harvy's selling point was the integration of music and having users download the app and then find out they couldn't use the music seemed like a lie. Thus, a rewrite.
Building with React Native