Skip to content
Back to projects
Productivity2024

PDF Shelf

A personal library for PDF books with a real reader and reading progress that follows you across devices.

Role
Sole developer
Timeline
2 months
Focus
Productivity

900+

Pages scrolled smoothly

Auto

Metadata on upload

Synced

Progress everywhere

The challenge

Technical books and course material end up as PDFs scattered across a downloads folder, a cloud drive and two devices. Nothing tracks where you stopped, so every session starts with scrolling to find your place, and half-read books are invisible.

What I built

I built a library and a reader rather than just storage. Uploads are parsed for metadata and a cover, then rendered in a custom viewer built on a canvas-based PDF renderer with virtualised pages so a 900-page book scrolls smoothly. Reading position is persisted continuously and reconciled per device, and highlights and notes are anchored to page coordinates so they survive re-opening. The shelf view sorts by what is actually in progress.

Outcome

Reading picks up exactly where it stopped, on whichever device is nearest. Books in progress are visible instead of buried, which is what actually makes them get finished.

Key capabilities

Custom PDF reader

Virtualised page rendering that stays smooth on very long documents.

Progress across devices

Reading position persisted continuously and reconciled per device.

Highlights and notes

Annotations anchored to page coordinates so they survive reopening and resizing.

Automatic metadata and covers

Titles, authors and cover thumbnails extracted on upload, with full-text search.

Stack

Next.jsTypeScriptPDF.jsPostgreSQLS3Tailwind CSS

Want something like this for your business?

Tell me what you are trying to build and I will tell you honestly what it takes to ship it.