A simple, fast terminal-based radio player built with TypeScript. Stream thousands of radio stations directly in your terminal!
- 🎧 Popular Stations: Pre-loaded with popular stations (BBC, Jazz24, Lofi Hip Hop, etc.)
- 🔍 Search: Find stations by name, genre, or country using Radio Browser API
- 📻 Custom URLs: Play any stream URL directly
- 🎮 Simple Controls: Easy-to-use terminal interface
- 🌍 Worldwide: Access thousands of stations globally
You need either mpv or vlc installed for audio playback:
macOS:
brew install mpv
# or
brew install vlcLinux:
sudo apt install mpv
# or
sudo apt install vlcOption 1: Install from npm or run using npx (Recommended)
npm install -g terminal-radio
terminal-radionpx terminal-radioOption 2: Development/Local Installation
-
Install dependencies:
npm install # or yarn install -
Run the radio player:
npm run dev # or for production build: npm run radio -
Use the interface:
- Choose from popular stations
- Search for stations online
- Enter custom stream URLs
- Stop/start playback
- Exit when done
- Navigation: Use arrow keys to navigate menus
- Select: Press Enter to select options
- Stop: Choose "Stop Current Station" from menu or Ctrl+C to exit
- Volume: Controlled by your system volume
- BBC Radio 1 (Pop/Rock)
- Jazz24 (Jazz)
- Lofi Hip Hop Radio (Lofi)
- Classic FM (Classical)
- Radio Paradise (Eclectic)
- SomaFM - Groove Salad (Ambient)
- NPR News (News)
- Built with TypeScript and Node.js
- Uses Radio Browser API for station discovery
- Audio playback via mpv or VLC
- Terminal UI with inquirer and chalk
- No complex audio processing - just simple streaming
"mpv/vlc not found" error:
- Install mpv:
brew install mpv(macOS) orsudo apt install mpv(Linux) - Or install VLC as alternative
Stream won't play:
- Some stations may be geo-restricted
- Try a different station or search for alternatives
- Check your internet connection
Search not working:
- The Radio Browser API might be temporarily unavailable
- Use popular stations or custom URLs as alternatives
MIT License - feel free to modify and distribute!