ReelShell
Terminal-native streaming service.
- Services
- Engineering
- Industries
- Dev Tools
- Tools
- GoTUImpv
- Highlight
- A terminal can be a streaming client.
- Live
- Archived
A terminal can be a streaming client
Browsing something to watch is a browser activity by convention rather than by necessity. The catalogue is an API, the choice is a list, and the playback is a process — none of which needs a page.
ReelShell is a terminal-native tool to browse movies, series and anime, built in Go, where selection happens in a TUI and playback is handed to a real player rather than pretended at in text.
The line between a client and a player
The temptation with a project like this is to render video in the terminal — half-block characters, colour quantisation, a frame rate that makes it a stunt. It looks impressive in a screen recording and it is unwatchable.
So playback delegates to mpv, which decodes properly, and the terminal does the part it is genuinely better at: a fast, keyboard-driven catalogue with no page loads. Knowing which half of a problem your interface is good at is most of the design.
Playback currently goes through a dummy provider that always returns a public-domain test clip.
- Language
- GoSingle binarygo.mod / go.sum
- Interface
- Terminal UIKeyboard-drivenNo page loads
- Playback
- Delegated to mpvDummy provider todayPublic-domain test clip
- Not built
- Nyaa / torrent providerReal source resolutionDeliberately absent
What it cost
The provider interface is the whole architecture. Everything above it — the catalogue, the TUI, the playback hand-off — is written against a seam that returns a stream URL. That is what lets the shipped version run against a dummy provider and still be a real program rather than a mock.
Go was chosen for the boring reason that it is right: a single static binary with no runtime to install is what a terminal tool should be, and it is the difference between something people try and something people keep.
Where it does not work yet
This is the one on the list that most needs its own paragraph, because the headline claim and the shipped behaviour are not the same thing.
Playback always returns a public-domain test clip. The dummy provider is what is wired up. The real source-resolution providers live in a private companion repository and are never published here — and the README says outright that the Nyaa/torrent provider from v2 is "deliberately not built."
So what this repository demonstrates is the client: the catalogue, the interface, the seam and the hand-off. What it does not do, out of the box, is get you a film.