As we embarked on our mobile app journey, Callstack played an essential role in helping us release our mobile app to the market. They helped us set up and optimise our mobile ecosystem allowing us to build upon our app with speed and confidence. Their support through training and workshops made sure we could successfully grow our mobile team and know-how.
We optimized the client’s mobile app performance and introduced a custom tool to measure performance regressions. We set up performance tests and documentation to enable a seamless transition of knowledge with the in-house team of developers.
In 87.5% of the screens, the number of rerenders decreased or remained the same, which affected the acceleration of the initial performance.
Thriva is a healthcare testing provider that offers personalized home blood tests. They are on a mission to help people worldwide to easily track and improve their health, knowing what’s going on in their bodies. With a simple finger-prick blood test, users can measure their liver function, HbA1c levels, vitamin D level, cholesterol level, thyroid profile, testosterone, and many more. The results are GP-reviewed.
Thriva sought our expertise in React Native development, app redesign, and developer training. The goal was to elevate Thriva's healthcare app, streamline the development pipeline, and enhance the capabilities of their in-house development team. In short, Thriva partnered with us to help them remarkably improve their mobile health app.
Thriva's application was initially built with Expo CLI and leveraged Expo's libraries. The challenge at hand included maintaining up-to-date dependencies, ensuring the smooth operation of Expo-related features (e.g., app building and release), and incorporating new features as they emerged. The release process was primarily manual, involving command-line building and manual Expo dashboard uploads.
Callstack engineers took a proactive approach to address these challenges. We cooperated with the Thriva team as a staff augmentation partner. Our developer, Adam Trzciński worked with our client’s development team as a senior developer and React Native mentor.
We helped Thriva in the following:
- Managing dependencies, including Expo, react-native packages, and their associated dependencies, for each new release
- Implementing custom GitHub Actions to automate the release process, including the creation of a QA Staging release for internal testing and the production release for the App Store and Google Play
- Providing extensive training to Thriva's React Native team through pair-programming, code reviews, and workshops covering performance optimization and native code development.
Solutions & Results
Thriva's application is now in exceptional condition as the collaborative efforts between Thriva and Callstack led to transformative solutions.
Thriva's healthcare mobile app now boasts:
- A robust architecture with professional maintenance practices and a continuous flow of feature updates
- A high level of code coverage, featuring quality-compliant unit and integration tests
- Implementation of a comprehensive testing strategy, including the integration of end-to-end testing
- Faster time-to-market and added automation around the mobile process to further speed up development and mobile releases
- Implementation of new PoC features into the app such as biometrics and integration with a mobile health kit.
Last but not least, Thriva's development team has significantly advanced their knowledge in React and React Native as a result of our collaboration.
Latest React Native upgrade
As per the recent Android SDK API requirements, your app must run on the upgraded React Native version (at least 0.70). Otherwise, Google Play will block a release process when you publish a new app or an app update.
The Thriva team encountered challenges during the React Native version upgrade, prompting their collaboration with Callstack for expert support. The initial state of the app was based on RN 0.70.5 and Expo 48, and the plan was to move to React Native 0.72.4 and Expo 49.
The process included:
- Upgrading required dependencies
- Fixing build problems and runtime crashes
- Conducting exploratory tests
- Final verification and post-testing fixes
It was a seamless switch to the new React Native version, and we carried it out holistically. We upgraded all the dependencies, libraries, and any packages that could be incompatible with new React Native.
Also, we shared a lot of recommendations for onward development improvements. The recommendations lay out the next steps for enhancing the Thriva project, shaping its codebase and boosting overall quality.
The challenges we’ve solved so far
Faster Time-to-Market, development growth & upskilling dev team
Extending React Native Capabilities by Adding Native Extensions
Improving a User Onboarding Experience for Coinmine
Upgrading the Checkatrade Mobile Application
7 Cups App Upgrade Generates a 130% Increase in the Number of Users
get in touch
Fill in the form and tell us a little bit about your enquiry. We’ll get back to you promptly to discuss your requirements.