// the find
guo-yu/douban.fm
a tiny and smart cli player of douban.fm in Node.js
A CLI player for Douban FM, a Chinese music streaming service, built in Node.js. It plays streams in the terminal with keyboard controls for skipping, favoriting, and lyrics display. Primarily aimed at Chinese developers or users who used Douban FM circa 2013–2015.
The keyboard shortcut interface is well thought out — play, skip, love, share, and lyrics toggle all on single keys. Offline fallback to locally downloaded songs is a genuinely useful feature for spotty connections. The separation of the Douban API calls into a standalone douban-sdk module shows some architectural discipline.
Abandoned since 2015 and the master branch was mid-ES6 rewrite when the author stopped — the README warns users to install from npm instead. Douban FM itself has largely shut down its public API and changed its authentication model, so this almost certainly doesn't work at all anymore. The native dependency chain (node-gyp, node-speaker, ffmpeg) was already painful on non-Mac platforms in 2015 and is significantly worse now with modern Node versions. Commits compiled dist files into the repo, which is messy and signals a project that never quite sorted out its build process.