App & settings
Stations
View Read-only JSON
Store listing
Rights Letter PDF
PDFs and other files. Paste the Download URL where you need it.
Drag PDFs and documents here to upload.
Saves only the app store listing fields to Supabase (not Remote Config or the rest of the config).
Saves the store listing, then marks this draft as ready for admin review. Only available on Draft.
Engineering runbook
Copy-paste commands for radio-configs and template repos. Nothing runs from the browser — use your local terminal with .env.local credentials.
Firebase: firebase:setup-apps registers up to 3 apps (Android, iOS, Draft as package.debug) with display names Name - Android|iOS|Draft. The fleet project comes from scripts/firebase-project-map.json (hub radioapps-b3f54 or Surfer Batch 1/2/3). Surfer batches: max 9 stations × A/i/D, leave 3 free slots. Storage and api_base_url always use hub. See fleet projects and setup outline §3.
Gradle flavor folder name — used to resolve fleet project from the map.
Firebase Storage prefix on radioapps-b3f54 (slug/logo.png). Never upload branding to a Surfer batch project.
Manual steps (Console / Xcode / stores)
- Enable Crashlytics once per Firebase app in the fleet project Console (not Storage hub unless they match).
- Xcode: signing, capabilities, archive / TestFlight.
- APNs key → each Firebase project that has iOS apps (hub + each Surfer batch).
- Play Console / App Store Connect metadata and store URLs in JSON when listings exist.
- Hub SA needs Editor/Firebase Admin on Surfer batches for
setup-appsand RC mirror.