Your whole library, on a machine you control.
Hamlet is a server you run yourself for your books, audiobooks and podcasts. Point it at your folders and it reads the files. Leaflet and Wavelet sign in to it, pull from it, and keep your place in step. No cloud in the middle, no one else's terms.
It's in development. The server works, and Leaflet and Wavelet already talk to it. The rough edges are mostly in the gap between "runs on our machine" and "runs on yours".
compose.yml · an example, not the shipped fileservices: hamlet: build: . # FFmpeg inside volumes: - ~/Books:/media/books - ~/Audiobooks:/media/audiobooks - ~/Podcasts:/media/podcasts - ./data:/data # one SQLite file ports: - "PORT:PORT" # HTTPS in front
- 1 process
- 1 SQLite file
- FFmpeg probing
- Live updates over SSE