Cloud Player
A desktop and mobile audiobook player backed by cloud storage
A personal project, and the one I actually use. Cloud Player is an audiobook player that runs on the desktop — Next.js wrapped in Electron — and on the phone, as a React Native app. Both talk to the same Firebase backend, which holds the library and playback state.
It exists because audiobooks are how I get through most of my reading, and the players I tried treated a twelve-hour book like a long song — losing position between devices, or scattering a series across a library designed for three-minute tracks. The interesting problems in an audiobook client are all about resumption: remembering exactly where you were, keeping that in sync when you move between machines, and making a large library navigable when every item is hours long.
Having both a desktop and a mobile client is the whole point rather than a bonus. Listening moves between a laptop in the evening and a phone on the way to work, so position has to survive the handover — which makes playback state something the backend owns, not something either client keeps to itself.
Building the desktop side as an application rather than a web page was also deliberate: local playback, offline access to downloaded files, and a window that behaves like an app rather than a tab. It is small, it is mine, and it is where I try things that would be reckless to try on a client's system.