All work

03 Independent project · 2026

Lumina Reader

A private reading app that keeps novels from different websites in one library and always remembers where I stopped.

Status
Version 2.0
My role
Designed and built the app, its server and its private setup
Built with
JavaScript · Node.js
Illustration of three website pages flowing into one open book, with a bookmark and a marker on the line where reading stopped
Fig. 03

The idea at a glance. There is no public screenshot, so this illustration stands in for one.

The novels live on different websites. Lumina keeps the library, the current chapter and the exact reading position together in one private place.

01 Problem

Why this exists

I read novels across several websites and wanted one place to remember what I was reading, which chapter I'd reached and where I stopped. Relying on each site, or on one browser, kept losing that history.

Lumina gathers those sources into one library on my phone. It runs on my own home network, so it's a personal tool rather than a public reading platform.

02 My part

What I built

  1. 01

    Saved reading progress on a private server instead of in one browser, so it's never lost.

  2. 02

    Made saving safe: if something goes wrong mid-save, the last good copy is restored.

  3. 03

    Made sure chapters from different novels never get mixed up.

  4. 04

    Cleaned chapters into plain, readable text.

  5. 05

    Limited which websites the app may contact, to keep it safe.

03 Approach

How I approached it

Never lose your place

Progress is saved carefully and can always be recovered.

Be clear about each site

Each website states what it supports, so nothing pretends to work when it doesn't.

Treat the web with caution

Pages are stripped down to plain text and the app only talks to websites it trusts.

04 Result

Where it is now

A focused personal reading app with a library, search, resume-where-you-stopped and a phone-friendly design, running privately at home.

Limits, honestly

There's no login, so it's only meant for a trusted home network and shouldn't be put on the open internet as it is.

Next: Add more websites, but only once each one has been checked and tested.