Shard Kindle
A self-hosted web library that pushes books to a Kindle over WiFi, bypassing Amazon's servers entirely. Includes an OPDS catalog.
Designing against a 2010 constraint
The Kindle’s experimental browser is, essentially, a browser from 2010: no modern CSS, no reliable JavaScript, and an e-ink screen with 16 levels of grey.
That turns design into an engineering problem rather than an aesthetic one. The interface is fixed at 600 px wide, pure black on white, with no gradients or shadows — which at 16 grey levels render as dirty banding — and without depending on JS to navigate.
I documented those constraints as a table in the README, because they are the explanation for why the result looks the way it does. Without that context the design looks careless; with it, it is the only thing that works.
Stateless authentication
The session token is derived deterministically from the access key: sha256('shard-kindle:' + key).
That lets it survive service restarts with no session store, and the comparison uses timingSafeEqual
so response timing leaks nothing.