Skip to content
All work

Web

Data Room MVP

A due-diligence document room with no backend

React 19TypeScriptViteZustandTailwind CSSIndexedDBVitest

Problem

The brief was about care, not scale: nested folders, PDF upload and preview, instant search — all surviving a page reload without a single server call.

System

React 19 + TypeScript with Zustand for state and IndexedDB for persistence — the folder tree, files and metadata live locally and come back on the next visit. PDF preview is inline; search walks the tree with no input lag.

Role

Solo build (timeboxed take-home).

Outcome

Deployed, unit-tested, delivered on time.