My Second Internship Project!
CI/CD with Fastlane
Today, I’ll talk to you about my second project at FirstRoot. You can see my first here: https://grokwithrahul.medium.com/my-first-internship-project-faff848d7899
FirstRoot is a Silicon Valley startup that aims to improve financial literacy in children and teenagers through participatory budgeting. Students learn by investing real money in schools, schools benefit by seeing a real lasting impact, and the community wins when these money-smart children become adults. Every Participatory Budgeting Cycle (PB Cycle) has a series of phases that the students go through, from planning to refinement to voting to implementation.
The FirstRoot app is present on the app (iOS) and play (Android) store. As developers constantly make changes throughout the Sprint cycle, we need real-time feedback for testing and staging the app on our phones. However, making and pushing a release to the app and play stores takes many hours. This is not viable when we want real-time feedback on features that we have added or changed.
App store snapshots are laborious to update every time there is a UI change — the process is very lengthy and involves complicated steps. This is further hurt by the need to take screenshots in many languages e.g. English, French, Spanish, German…). Furthermore, simply pushing an app to testers, or even to the App Store itself, is a painful chore. It takes many hours to deal with the entire process, from manually changing the version number to building the app with a provisioning profile to deploying it to the app store. Wouldn’t it be amazing if we can deploy
Hence I was tasked with building a solution that would automate this entire process.
Fastlane automates the development and releases workflow in Android and iOS app development. It handles app store screenshot capturing, Beta build distribution, app publishing/release, and automatic code signing.
Fastlane saves many hours and can be integrated into the CI/CD pipeline. This one-click deployment enables developers to quickly get started on testing, or work on new releases.
Fastlane can be integrated with Github actions or any existing CI/CD pipeline.