project / 2026
Product engineering / static search and content infrastructure
PaperSorted
A static exam-paper archive for Kathmandu University with program-aware browsing, subject search, and inline PDF viewing across 561 subjects and 2,792 papers.
- built with Astro / TypeScript / Node.js / PDF.js / GitHub Pages / JSON search index
- visit Open project ↗
- source View source ↗
notes on the build
Snapshot
PaperSorted is a public archive for Kathmandu University exam papers. It turns a large folder of PDFs into something students can actually browse: by subject code, by program, by semester, or directly inside a lightweight viewer.
How it works
At build time, the project scans the paper directory, generates a manifest, and produces static routes for subject pages and individual paper viewers.
Search works in two layers:
- fast subject lookup built around code, prefix, and alias matching
- deeper PDF-text indexing for paper-level search through the command palette
The whole system stays static, which keeps deployment simple on GitHub Pages while still handling a few thousand documents.
Why it belongs here
I would not put this in the featured set, but it earns a place in the archive because it solves a real retrieval problem cleanly. The useful part is not just the interface. It is that a messy paper collection becomes searchable, filterable, and readable without needing a backend or database.
what mattered
- 561 subjects and 2,792 papers mapped into static subject pages and viewer routes.
- 17 program tracks and 138 semester groupings modeled for program-aware filtering.
- Build-time manifest generation plus extracted PDF text indexing for subject lookup and deep paper search.
next project