Files
2026-05-29 17:10:13 +02:00

65 lines
2.4 KiB
Markdown

# iradio
A terminal internet radio player built with Rust. Streams stations from [radio-browser.info](https://www.radio-browser.info) and plays them via `mpv`.
## Requirements
- [Rust / Cargo](https://rustup.rs)
- [`mpv`](https://mpv.io) — must be installed and on `PATH`
## Build & Run
```bash
cargo build --release
cargo run
```
## Features
- Browse stations from Germany, Austria, and the US
- Live search (filters by name and tags)
- Now-playing display with song history
- Favorite stations — persisted to `~/.config/iradio/favorites.json`
## Keybindings
### Normal mode
| Key | Action |
|-----------|-------------------------------|
| `j` / `↓` | Move down |
| `k` / `↑` | Move up |
| `Ctrl-D` | Scroll down half page |
| `Ctrl-U` | Scroll up half page |
| `Enter` | Play selected station |
| `s` | Stop playback |
| `f` | Toggle favorite on selection |
| `Tab` | Toggle All / Favorites view |
| `/` | Enter search mode |
| `Esc` | Clear active search filter |
| `q` | Quit |
### Search mode
| Key | Action |
|---------|-------------------------------------|
| typing | Filter station list live |
| `Enter` | Confirm filter, return to Normal |
| `Esc` | Clear filter, return to Normal |
## Layout
```
┌─────────────────────┬──────────────────────────────┐
│ Search [/] │ Info (now playing) │
├─────────────────────┼──────────────────────────────┤
│ │ │
│ Stations [All] │ Played Songs │
│ ★ NDR 2 │ Song title... │
│ SWR3 │ ... │
│ ... │ │
└─────────────────────┴──────────────────────────────┘
```
Favorites are marked with `★` in the station list. Press `Tab` to show only favorited stations (`Stations [★ Fav]`).