1020 B
1020 B
Audiobook Player
A web player for an OpenAudible library, with user accounts, per-user listening progress synced across devices, and an iPhone-friendly layout. Python 3 standard library only.
Setup
python3 server.py setup # OpenAudible login the server uses (shared by all accounts)
python3 server.py adduser NAME # create a player account
python3 server.py serve # --upstream http://HOST:8000 --port 8080
Then open http://<server-ip>:8080 and sign in. Other commands: users, passwd NAME, deluser NAME.
Only MP3/M4B files can be played in a browser; convert Audible .aax/.aaxc books in OpenAudible first.
Notes
- Credentials and user data live in
config.json,users.json,sessions.json,progress_users.json(git-ignored). - Only read-only OpenAudible endpoints are proxied; admin commands and import are blocked.
- Traffic is plain HTTP. Use a VPN (e.g. Tailscale) or a TLS reverse proxy for access outside your home network.