Mobile Fastlane

Introduction

Last updated 2026-10-07

The Mobile Fastlane Framework is a reusable, configuration-driven fastlane setup. It builds, distributes and AI-tests React Native apps, as well as fully native Android and iOS apps. You drop the same Fastfile and lib/ folder into every project. All project-specific details live in YAML and environment variables, so onboarding a new app never means editing Ruby.

  • Android → Gradle build (APK or AAB) → Firebase App Distribution, plus the optional Firebase App Testing agent for AI-driven tests on real devices.
  • iOS → Xcode archive (IPA) → TestFlight via App Store Connect.
  • Interactive CLI: fastlane init_project generates the configuration for a new project, and fastlane setup lets you pick the environment, flavor, APK/AAB and target for each run, then saves those choices as reusable profiles.
  • Reporting: Microsoft Teams Adaptive Cards, Slack and HTML e-mail reports for every run.

Who this documentation is for

These pages are written for mobile and DevOps engineers who need a repeatable release pipeline. You don't need to know Ruby. If you have used Gradle or Xcode from the command line, you have enough background. Every page links to the official documentation of the tool it relies on (fastlane, Firebase, Apple, Android, GitHub), so you can check each step against the source.

Status

PlatformStatus
AndroidVerified end-to-end (build → upload → manual testers → AI tests → report)
Interactive setupVerified on Windows: init_project, setup, run_profile and the CI guard
iOSImplemented and reviewed, not yet run on a Mac. Follow the First run on a Mac checklist.

The 60-second tour

my-app — zsh
# 1. One-time: generate fastlane/config/environments.yml for this project
~/my-app $ bundle exec fastlane init_project
# 2. Every run: choose (or reuse) a setup and build/distribute
~/my-app $ bundle exec fastlane setup
? What do you want to do?
❯ Use last setup (staging-aab: android · staging · AAB · distribute)
Android development configuration is valid.
Firebase App Distribution — STAGING: release 1.4.0 (57) distributed to "qa-team"
# 3. In CI: replay the same profile without prompts
~/my-app $ bundle exec fastlane run_profile name:staging-aab
The three commands you use day to day.
Design rule: the Fastfile and lib/ are generic. To onboard a new app you change only fastlane/config/*.yml and .env (or CI secrets). Never fork the Fastfile per project.

Next steps

Official documentation

Was this helpful?