I Built My Own Kindle
In February 2025, Amazon removed the option to download and back up your Kindle books over USB — a blunt reminder that you license, rather than own, the Kindle books you buy. My relationship with my once-beloved Kindle was already waning, and this final push toward lock-in ended it. I decided I’d never buy another ebook from Amazon again.
I bought a Kobo Clara BW and started collecting EPUBs instead of AZW3s. I picked up Calibre and moved from Goodreads to StoryGraph. When I break up with a billionaire, I try to cut all ties.
I tinkered with the Kobo — installed KOReader, transferred books to it wirelessly from my MacBook — but it wasn’t the frictionless experience I used to love on my Kindle.
Then, a few weeks ago, while teaching myself to build workflows on a headless Mac Mini, I decided to finally build my dream e-reader setup. It started with Calibre-Web-Automated (CWA) and an edit to my Kobo’s store URL. It would eventually lead to a BOOX Go 6, files I own and can read anywhere, and zero ecosystem lock-in — but I’m getting ahead of myself.
Here’s how it started.
The hub: a Mac Mini in a closet
Everything runs on a Mac Mini that sits in a closet and never sleeps. It’s the brain of my whole setup, and as of a few weeks ago, it’s also my own private Amazon.
The piece doing the real work is Calibre-Web-Automated — CWA for short. It’s a self-hosted book server. It runs in Docker, watches a folder for anything new I drop in, cleans up the metadata, and serves the whole library through a tidy web page. My books — EPUBs I actually own — live on the Mini’s drive. No cloud. No account that can pull them back. No “license.” Just files, in a folder, on a machine that’s mine.
A library trapped in my closet isn’t much use at the beach, though. That’s where Tailscale comes in. It quietly wires all my devices into a private network, so I can reach CWA from my phone or laptop anywhere — like I’m sitting at home, without putting anything on the public internet.
So: a library I own, reachable from anywhere. The harder part was getting it onto an actual e-reader as smoothly as the Kindle used to manage.
Making the Kobo think it’s still talking to Kobo
A Kobo wants to sync with Kobo’s store. So I let it — except I pointed it at mine.
CWA can impersonate the Kobo store. One setting on the Kobo, the store URL, repointed at my Mini. After that, every time the Kobo synced, it wasn’t phoning home to Kobo. It was pulling from my library. Drop a book into the folder on the Mini, tap sync on the Kobo, and it’s there. The exact frictionless flow I missed from the Kindle — except every book is mine, and nobody can reach in and take them back.
For a few weeks, that was the dream. Files I owned, a library I ran, syncing to a Kobo that had quietly switched teams.
And it tracks itself, too
This one I stumbled into.
I’d been tracking my reading on StoryGraph, but logging every book by hand was its own small friction — the exact kind of thing this whole project was supposed to kill. Then, poking around CWA’s settings, I found a Hardcover integration. I’d barely heard of Hardcover, but I saw the potential immediately: if CWA could talk to it, maybe I’d never have to log a book by hand again.
That sealed it. StoryGraph doesn’t have a public API, so there was nothing holding me there anyway — and Hardcover does. I made the switch, handed CWA my Hardcover token, and now the two stay in step without me lifting a finger.
The part that got me: it works through the Kobo. Add a book to my synced shelf, and CWA quietly drops it onto my Hardcover “want to read” list. Then, as I read on the Kobo, the progress flows back to CWA — and CWA passes it along to Hardcover. I finish a book in bed, and by the next morning Hardcover already knows. No logging, no marking a book as read, no opening an app. I just read, and the record keeps itself.
It’s the same Hardcover data that feeds the now page on this site, so the whole loop closes: I read on a device in my hands, and a little corner of my website updates on its own.
But the Kobo still wasn’t quite the reader I wanted.
Enter BOOX
BOOX devices have been on my radar for a while. An e-ink tablet for reading — and for knocking out the NYT crossword over morning coffee — was always tempting, but now I was a full-on homelab mad scientist and had to have something more versatile. As I’m typing this, the BOOX is in transit. I’ll have it set up by the weekend, and the final piece of this project will be in place. Once it’s up and running, I’ll post the rest of the build and my initial thoughts.
But the device was never really the point. Here’s the thing about anything you rent from a billionaire: the tide goes out eventually, and you find out what you actually own. So go build the version that’s yours.