BetterReads
MERN social reading platform with AI review summaries, real-time book clubs, and playlist-style recommendations.
- Full-stack
Problem
Reading is social, but the tooling around it is scattered — discovery, reviews, discussion, and recommendations each live somewhere else. BetterReads brings them into one platform: find and track books, digest what the community thinks, and read together in clubs.
What it does
- Book discovery backed by the Google Books and NLB (National Library Board) APIs, so listings carry real descriptions and library availability.
- Playlist-style recommendations tuned to a reader’s preferences, powered by the Spotify API.
- AI review summarization (Gemini) that distills a book’s reviews into a quick read.
- Reviews and star ratings, with profile pictures.
- Book clubs — create or join, discuss in real time over Socket.IO, and track group reading.
Architecture
A MERN stack (MongoDB, Express, React, Node) with JWT authentication, Cloudinary for media and uploads, and Zustand for lightweight client state; React Router and Axios on the frontend, and Socket.IO for the real-time club layer.
Key decisions
Gemini summarizes reviews so a reader can grasp community sentiment without wading through every one; the NLB integration surfaces real Singapore library availability rather than only retail links. Zustand keeps state light instead of reaching for a heavier store, and external data from four APIs (Google Books, NLB, Gemini, Spotify) is composed behind a single product surface.