Ash Reader - Book Tracking App & Cloud API

A reading sanctuary platform featuring an Expo React Native mobile app with React Compiler and a headless Next.js App Router API with Drizzle ORM for personal library analytics.

  • React Native
  • Expo SDK
  • React Compiler
  • Next.js App Router
  • Drizzle ORM
  • TypeScript

Problem

Readers often get overwhelmed by social book networks that emphasize endless feeds and reviews over personal reading focus, daily time tracking, and bookshelf organization.

Solution

Ash Reader combines a dark-mode native mobile client with a headless cloud API—enabling daily reading targets, active session tracking, bookshelf categorization, and reading velocity analytics.

My role

Full-stack mobile and API engineer - mobile architecture with Expo Router, state management, Next.js route handlers, and Drizzle ORM database schema.

Impact

Delivers a clean, distraction-free reading habit tracker with sub-100ms API response times and offline-first mobile ergonomics.

Challenges

Optimizing React Native performance with the new React Compiler, architecting flexible book metadata caching, and structuring Drizzle schema for granular reading session intervals.

Screenshots

The problem

Traditional book cataloging apps have evolved into cluttered social media platforms with ads, feeds, and unsolicited recommendations. Readers who simply want to track active reading sessions, build daily reading consistency, and maintain personal shelves need a focused, respectful tool.

The approach

Ash Reader separates concerns between an ultra-responsive native mobile app and a headless cloud API:

  • Mobile Client (reader):
    • Built with Expo SDK featuring React Compiler and typed routes for maximum runtime smoothness.
    • Daily reading targets with circular completion progress and session timers.
    • Shelf management: Currently Reading, Want to Read, and Completed.
    • Curated literary reflections and quote rotations.
  • Cloud API (reader-api):
    • Headless API built on Next.js App Router.
    • Type-safe persistence layer using Drizzle ORM.
    • REST endpoints for authentication, shelf hierarchy, active reading sessions, and historical velocity stats.

Architecture

Expo React Native Client (reader)
       ▼ Secure Auth & Session Sync
Next.js App Router (reader-api)
       ▼ Drizzle ORM
Database (Shelves, Books, Reading Sessions, Targets)

Outcome

A serene reading companion that rewards consistent daily habits without the noise of modern social feeds.