React Native · SQLite · Local-First
Offshelf
Offshelf is a reading tracker. No accounts, no servers, no social features — just you and your books. Everything stays on your device.
I built it because every reading app I tried wanted me to be social about reading. Goodreads wants you to rate, review, compare. I just wanted to track what I read without the noise.
Flip the phone face-down to start a session, lift it to log it. Under the hood: SQLite for local-first storage, book search through the Hardcover GraphQL API, and a pure-function face-down detection system (accelerometer + state machine + grace period). The goal is for the app to be as quiet as reading itself — and eventually, for you to outgrow it.
- Status
- Live on the App Store
- Platform
- iOS (React Native + Expo)
- Stack
- React Native, Expo, SQLite, Hardcover GraphQL API
- Role
- Solo developer — design, engineering, product