Kindle Storyteller banner
ryanbbrown ryanbbrown

Kindle Storyteller

AI community

Description

iOS app for generating on-demand, live-syncing audiobook snippets using AI

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

Kindle Storyteller

An iOS app that uses AI to generate on-demand audiobook snippets for Kindle.

*Read the [blog post](https://blog.ryanbbrown.com/p/i-reverse-engineered-kindle-to-build) for a detailed writeup on the technical challenges and how it works.*

https://github.com/user-attachments/assets/de0f5640-5bfc-4f0e-bfa0-ee382e467fc2

0.0 Overview

0.1 Features

  • On-demand audiobook generation – Generate audio for any Kindle book from your current reading position
  • Multiple TTS providers – Choose between ElevenLabs and Cartesia voices
  • Configurable duration – Specify how many minutes of audio to generate (1-8 at a time)
  • Auto-seek playback – When resuming, audio automatically seeks to match your current Kindle position
  • Bidirectional progress sync – Listening progress syncs back to Kindle in real-time
  • LLM text preprocessing – Optional GPT-based cleanup of OCR text before synthesis, including custom pauses for Cartesia
  • Audiobook library – Browse and replay previously generated audiobooks
  • Background playback – Lock screen controls and background audio support

0.2 Context

I usually read on a Kindle Paperwhite, but when I don't have it with me I use the Kindle app on my phone. Sometimes I want to continue reading after I have to stop using my phone (e.g. I get off the subway and walk to my destination); an audiobook would be perfect for this.

However, I don't normally listen to audiobooks, so I wouldn't want to purchase the audiobook version of my book just for a few minutes of listening when I can't use my phone. Audiobooks on Kindle also only sync with the printed book when Whispersync-for-Voice is enabled. These two factors led me to build this app.

1.0 Components

  • ios-app: SwiftUI client that captures Kindle session info, and drives audiobook genertion, listening, and management. See ios-app-architecture.md.
  • server: Fastify backend orchestrating Kindle fetches and tex