← Back to portfolio

Readnest — Solo Reading (Offline) + Social Groups (Online)

Role: UX & Front-End · Growing Back-End • Stack: HTML, CSS, JS · Supabase (Auth, Postgres, Realtime, Storage) · PWA

Readnest sketch: reader + notes and groups
Two modes: Solo (offline personal library) and Connect (groups, shared comments).

Problem

Ebooks are convenient, but reading apps are often barebones or bloated with features. Social reading (book clubs, recommendations) usually happens outside the app, making it hard to share thoughts while reading. I wanted a better way to read digitally, annotate, and discuss books with friends. Something where we could react as we read, not just meet after as different schedules and paces made it hard. Inspired by Wattpad/Webnovel,Readnest lets us read on our own time, leave inline comments, and see each other’s opinions on what we just read—plus a solo offline mode for annotating ebooks anywhere.

Core Features

Offline Mode (Personal Library)

Online Mode (Social Groups)

Offline-first

Works without signup

Inline

Comments on exact text

Import/Export

Portable .epubx

UX Highlights

Architecture

LayerTechNotes
ReaderHTML/CSS/JSepub.js for EPUB, PDF.js for PDF (client render)
Offline storageIndexedDBidb-keyval/localForage for notes, progress, local files
Sync / OnlineSupabaseAuth, Postgres, Realtime (comments/reactions), Storage (covers, optional files)
PackagingZip + JSON.epubx: original EPUB + notes.json (+ voices/ later)
HostingNetlify + PWAService worker for offline app shell

Data Model (simplified)

TableMain fields
usersauth users
booksid, owner_id, title, author, cover_url, is_public
book_filesbook_id, storage_path, type (epub|pdf)
highlightsid, book_id, user_id, start_offset, end_offset, color
notesid, book_id, user_id, highlight_id, body, created_at
groupsid, owner_id, type (club|reco), name, invite_code
group_membersgroup_id, user_id, role
group_booksgroup_id, book_id, added_by, status (active|archived)
inline_commentsid, group_id, book_id, user_id, anchor_range, text
reactionscomment_id, user_id, emoji
presencerealtime channel only (no table)

Security & Privacy

Roadmap

  1. MVP — Solo (offline-first): load EPUB/PDF, highlights/notes in IndexedDB, progress resume, export/import .epubx.
  2. v2 — Connect (online groups): Auth, create/join group, shared inline comments on the same book, presence, reactions.
  3. v3 — Extras: voice notes, recommendation groups with per-book chat, richer exports, EPUB/PDF parsing improvements.

Key Screens

Solo reader
Solo mode: reader + notes
Inline comments
Inline shared comments
Groups view
Groups (Book Club / Recommendations)

Future Improvements

Links

Live Demo GitHub Repo Download CV

Built by Antonella Akromah · a@gmail.com