An iOS app for accessing information about the FIRST Robotics Competition. This is a native mobile version of The Blue Alliance.
Want to add features, fix bugs, or just poke around the code? No problem! Setup instructions (and lots of other documentation) can be found in the Wiki.
Swift code is formatted with Apple's swift-format, which ships with Xcode 16+. CI runs swift-format lint --strict on every PR; violations block the build.
To fix formatting locally:
- Whole tree:
bundle exec fastlane format(or./scripts/swift-format.sh --fix). - One file in Xcode: Editor → Structure → Format File with swift-format. In Xcode Settings → Key Bindings, search "swift-format" and bind it (e.g. ⌃⌥⌘F) for one-keystroke formatting.
To run the linter locally (same check CI runs):
- Strict (matches CI):
bundle exec fastlane lint(or./scripts/swift-format.sh --strict). Exits non-zero on any violation. - Non-strict (warnings only):
./scripts/swift-format.sh— reports issues without failing. - Ad-hoc:
xcrun swift-format lint --recursive the-blue-alliance-ios Packages.
Configuration lives in .swift-format at the repo root.
- Keep up to date with the mailing list.
- Chat with us on our Slack team. (Request an invite in the mailing list.)
iOS discussion happens in the #dev-ios channel in the Slack