Web
Data Room MVP
Комната документов для due diligence без бэкенда
React 19TypeScriptViteZustandTailwind CSSIndexedDBVitest
Проблема
Задача была на аккуратность, а не на объём: вложенные папки, загрузка и просмотр PDF, мгновенный поиск — и всё это должно переживать перезагрузку страницы без единого серверного вызова.
Система
React 19 + TypeScript, состояние в Zustand, персистентность на IndexedDB — дерево папок, файлы и метаданные лежат локально и восстанавливаются при следующем открытии. Просмотр PDF встроенный, поиск идёт по дереву без задержки на ввод.
Роль
Соло-разработка (take-home с ограничением по времени).
Результат
Задеплоено, покрыто unit-тестами, сдано в срок.