Swift Radio - Single Station
Swift Radio Single Station is a ready-to-ship iOS radio streaming app built entirely in Swift. It's the single-station version of Swift Radio, the open-source radio app template used by 80+ apps on the App Store.
The multi-station version (free on GitHub) shows a list of stations and lets users browse between them. This single-station version the station list entirely and launches straight into the player. Your listeners open the app and hear your station. One tap to play, no distractions.
What you get:
- Full Xcode project, ready to build and submit to the App Store
- Stream live radio with background audio playback
- Track metadata and album art fetched automatically from the stream and iTunes
- Lock Screen and Control Center integration (play, pause, stop, artwork, track info)
- Apple CarPlay support with a dedicated build target
- AirPlay routing built into the player
- "Open in Apple Music" lets listeners find the current song with one tap
- Share "now playing" with album art
- About screen with email, links, credits, and app version
- Load your station from a local JSON file or a remote
- Localization-ready via Xcode String Catalog
- Dynamic blurred background that changes with the album art
- Live stream detection with a "LIVE" badge, scrubber for on-demand content
Built for customization:
Everything is configurable without touching the core code. Swap in your station name, stream URL, artwork, and colors in a couple of files.
The README.md walks you through every step: setting your station, updating bundle IDs for both targets (app and CarPlay), customizing the About screen, changing text, and adding translations.
Modern codebase:
Version 3 is a ground-up rewrite. No storyboards, no legacy dependencies. Coordinator pattern, async/await networking, Swift Package Manager, and a clean separation between configuration and logic. The project compiles and runs out of the box on the latest Xcode.
What's the difference from the free version?
Swift Radio is the multi-station version: station list, search, pull to refresh, popup player bar. This single-station version strips all of that away. The player is the landing page. No station list, no popup bar, no search. Just your station, front and center.
Reach out at contact@fethica.com