Audible sells licensed audio: over a million titles read by professional narrators, owned by publishers who set the terms, plus an app that keeps them in one library. No agent can write that catalogue, and your Audible purchases play only in Audible's apps and compatible players, so a replacement cannot start from your library. What you can build is the honest half: a self-hosted shelf for audiobooks you own as DRM-free files, and a local narrator that reads your own EPUBs aloud. If you listen to one or two books a month, Libby through a library card or Libro.fm's DRM-free credits will beat the build.
Before you buildAudible has no free plan, but its 30-day trial gives you a title (two for Prime members). Libby with a library card costs nothing, and LibriVox covers public-domain books.
Build me a personal audiobook shelf to replace the listening side of Audible for books I already own as DRM-free files. Requirements: - Node.js 22 + TypeScript: a Fastify server with a React + Vite front end that installs as a PWA. `npm start` serves http://localhost:4830. - Library: AUDIOBOOK_DIR in .env points at a folder of M4B, M4A and MP3 books, one folder per book. Scan it at start and on change with `chokidar`; read title, author, narrator, chapters and cover with `music-metadata`, fall back to the folder name, and join a multi-file MP3 book into one chapter list. - Storage: better-sqlite3 in ./data/shelf.db for books, chapters, listening position per device, bookmarks and stats. - Player: play and pause, 15 seconds back and 30 forward, a chapter list, speed from 0.5x to 3x, a sleep timer (minutes or end of chapter), bookmarks with a note, and lock-screen controls through the Media Session API. Stream with HTTP range requests so seeking works. - Sync: the position saves every 10 seconds; opening a book on another device offers "continue from 2h13m on Phone". One password in .env (signed cookie) protects everything. - Narrate: `npm run narrate -- book.epub` reads the EPUB (`epub2`), speaks each chapter with Piper (the `piper-tts` Python package, voice file path in .env), joins the audio with ffmpeg into one chaptered M4B with the cover and writes it into AUDIOBOOK_DIR. Print the real-time factor when it finishes. - Tests (Vitest): chapter parsing for an M4B with ten chapters, range-request handling, and the position merge when two devices disagree. - Single user. No accounts beyond that password, no telemetry, local-first. Outbound calls: none (download the Piper voice once by hand). - Out of scope: buying or downloading audiobooks, removing copy protection from any file, podcasts, more than one user. - README: exposing the shelf with a tunnel or a VPS with HTTPS, and a plain note that Audible titles are copy-protected and will not load here.
Opens your agent with the prompt filled in, you press enter. Or copy it and paste it into an empty folder.
The first prompt builds the core. Run these one at a time in the same folder to grow it into your own Audible Premium Plus.
Add metadata lookup to the audiobook shelf in this folder. Requirements: - A "find metadata" button on a book searches Open Library by title and author, shows up to 5 matches with covers, and lets me pick one. - Save the chosen description, series and cover into ./data/shelf.db and ./data/covers/; never overwrite tags read from the file unless I tick a box. - Cache lookups for 30 days and make at most one request per second. - Everything works offline without the lookup. - Update the README with the one outbound call this adds.
Extend the narration command of the audiobook shelf in this folder. Requirements: - `npm run narrate -- books/` queues every EPUB in a folder; progress is stored in ./data/shelf.db so a crash or Ctrl+C resumes at the next unfinished chapter. - Skip front matter such as copyright pages and tables of contents using the EPUB's spine and a configurable list of title words. - Write each finished book to AUDIOBOOK_DIR only after ffmpeg verifies the file; keep partial audio in ./data/tmp/. - A summary at the end: books done, chapters skipped, total real-time factor. - Update the README.
Add listening stats to the audiobook shelf in this folder. Requirements: - Record listening sessions (book, start, seconds listened, speed) in the database, counting only time with the audio actually playing. - A /stats page with hours per week, per book and per author, the longest streak and the average speed. - A year-in-review page that can be saved as a PNG, built with canvas in the browser. - A button to export all sessions as CSV and one to delete them. - Update the README.
One credit a month buys any audiobook whatever its list price, so a long bestseller feels cheap, and the app is everywhere: phone, car, smart speaker. Premium adds a catalog of included titles to try without spending a credit. People also stay because their library already lives there: titles bought with a credit remain after you cancel, but they open only inside Audible's apps.
Estimate · Runs on a computer you own, or on a $5 VPS; streaming audio uses little bandwidth. Narrating long books with a local voice takes CPU time but no money. The build is token usage on your agent plan. None of this buys you any audiobooks.
Checked 2026-10-19 against Audible Premium Plus's docs: 1, 2, 3, 4, 5, 6
| Plan | Monthly | Annual, per month | What you get |
|---|---|---|---|
| Standard | $8.99 | — | One audiobook selection a month from the whole catalog and unlimited access to podcasts; the selections play only while you are a member. |
| Premium (Premium Plus) | $14.95 | $12.46 | 1 credit a month for any title in the catalog, kept after you cancel; the Plus Catalog of 150K+ included audiobooks and podcasts; member sales and discounts on extra purchases. |
| Premium, 2 credits | $22.95 | $19.13 | 2 credits a month, otherwise the same as Premium. |
No free plan: a 30-day free trial, then $14.95 a month.
Not really. One credit a month buys any audiobook whatever its list price, so a long bestseller feels cheap, and the app is everywhere: phone, car, smart speaker. Premium adds a catalog of included titles to try without spending a credit. People also stay because their library already lives there: titles bought with a credit remain after you cancel, but they open only inside Audible's apps. The prompt on this page builds the closest honest substitute.
About $14.95 a month on the Premium (sold as Premium Plus until recently) plan, $179.40 a year (checked 2026-10-19).
The catalogue: over a million titles, including bestsellers, Audible Originals and the 150K+ Plus Catalog; Professional narrators and full-cast productions; a local voice sounds synthetic; One credit that buys any title at any list price, and member-only sales; Audible's apps on phones, Alexa devices, Fire tablets, Kindles and Sonos speakers; Podcasts and Audible Originals included in the plan. If any of those matter to you, keep paying.
Yes: Audiobookshelf (open source), ebook2audiobook (open source), epub_to_audiobook (open source).