explaingit

mozilla-mobile/firefox-ios

12,948SwiftAudience · developerComplexity · 4/5LicenseSetup · hard

TLDR

This is the full source code for Mozilla's Firefox and Focus browsers for iPhone and iPad, written in Swift, useful for developers who want to contribute to or study a large production open-source iOS browser.

Mindmap

mindmap
  root((firefox-ios))
    What it does
      iOS browser
      Privacy browsing
      Open source contribution
    Tech stack
      Swift
      Xcode
      iOS
    Apps included
      Firefox for iOS
      Focus for iOS
    Setup
      Mac required
      fxios bootstrap
      iOS 15 minimum
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Contribute bug fixes or new features to Mozilla's open-source Firefox or Focus iOS browser via GitHub pull requests.

USE CASE 2

Study a large production Swift iOS codebase to learn browser architecture, tab management, or privacy features.

USE CASE 3

Build a custom iOS browser or browser-based app on top of Mozilla's open-source foundation.

Tech stack

SwiftXcodeiOS

Getting it running

Difficulty · hard Time to first run · 1day+

Requires a Mac with Xcode 26.3 and Swift 6.2, the initial repository clone is large and may take significant time to download.

You can use and modify this code, but changes to the original files must be released under the same Mozilla Public License 2.0.

In plain English

This repository contains the source code for two iOS apps made by Mozilla: Firefox for iOS, which is Mozilla's web browser for iPhones and iPads, and Focus for iOS, a privacy-focused browser that blocks trackers and ads by default. Both are free apps available on the Apple App Store. The repository holds both projects in a single shared codebase. The README is primarily technical, aimed at developers who want to build or contribute to the apps locally. Building either app requires a Mac with Xcode installed, since they are native iOS applications written in Swift. The recommended setup uses a command-line tool called fxios, which handles cloning the repository and bootstrapping both projects in one step. After setup, the Firefox project is opened through one Xcode project file and the Focus project through another. A manual setup path is also described for cases where the tool is not used. Both apps target iOS 15 and later, and the README indicates they currently build with Xcode 26.3 and Swift 6.2. Because the codebase is large, the README notes that the initial download may take some time. Mozilla welcomes outside contributions. The README links to a list of GitHub issues labeled as contributor-friendly, which are good starting points for new contributors. Questions can be directed to Mozilla's team through two chat channels on the Element platform (one for Firefox iOS and one for Focus iOS) or via GitHub issues. The source code is released under the Mozilla Public License 2.0.

Copy-paste prompts

Prompt 1
I want to contribute to firefox-ios for the first time. Show me how to bootstrap the project using the fxios tool, open it in Xcode, and run it on the iOS Simulator.
Prompt 2
I'm a Swift developer exploring firefox-ios. Walk me through the key classes and files that handle tab management and browsing history.
Prompt 3
I found a contributor-friendly GitHub issue in firefox-ios. What's the typical workflow for making a change, running the existing tests, and submitting a pull request to Mozilla?
Open on GitHub → Explain another repo

← mozilla-mobile on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.