RDD — Регистр депрессивных расстройств
Специализированный клинический веб-регистр для лонгитюдного исследования депрессий позднего возраста. Демонстрация навыков разработчика уровня Senior/Architect по созданию медицинских приложений.
Разработан на стыке медицины и IT. Основан на реальном 6-летнем клиническом исследовании автора.
Для кого и какую задачу решает система
Для врачей и исследователей
- Автоматизирует исследование депрессий
- Позволяет анализировать все фазы заболевания
- Связывает анамнез, психический статус, лечение и исходы
- Делает мгновенный расчёт когортной статистики
- Возможен экспорт данных в разных форматах
Для нанимателей и техлидов
- Демонстрирует навыки создания медицинских приложений
- Показывает выверенную бескомпромиссную архитектуру
- Единый источник правды для всего приложения
- Автоматическая синхронизация слоёв БД, валидации и UI
- Нулевой cold start на бессерверной инфраструктуре
Возможности регистра
Паспорт пациента и анамнез
Интерфейс для заполнения социально-демографического профиля. Включает анонимизированные личные данные и управление согласием на исследование. Автоматически рассчитывает некоторые параметры, например, возраст манифеста заболевания.
Матрица фаз заболевания
Удобный интерфейс для заполнения анамнеза заболевания. Представляет собой матрицу депрессивных фаз, где врач при беседе с пациентом может отмечать симптоматику сразу в нескольких эпизодах заболевания. Отслеживает динамику состояния в текущей фазе болезни.
Аналитика и экспорт
Автоматический подсчёт основных показателей выборки. Вывод информации в удобном наглядном виде. Экспорт данных в нескольких форматах (Excel,CSV, JSON) для статистического анализа.
Словарь терминов
Живой словарь терминов, формируемый напрямую из единого реестра полей: врачи видят клинический смысл признаков, а разработчики — типы, валидаторы и колонки БД.
Ключевые инженерные решения
Registry-Driven Core (SSOT)
Единый декларируемый TS-реестр полей генерирует схему Cloudflare D1 (SQLite), Zod-схемы валидации, UI-поля ввода и Data Dictionary. Инвариант «поле = колонка» исключает рассинхрон слоёв.
Такой подход ускоряет разработку и снижает количество ошибок: добавление нового признака в реестр автоматически обновляет все слои, включая миграцию БД, валидацию и UI.

Виртуализированный грид с CAS
Виртуализация TanStack Virtual + CSS Grid со sticky-колонками. Оптимистическая блокировка полей (Compare-And-Swap).
Интерфейс работает быстро даже при большом количестве данных. Автоматически проверяет введенные значения. Подходит для совместной работы нескольких врачей, защищает от потери данных при одновременном редактировании одного пациента.

Бессерверный Edge-стек и безопасность
Next.js 16 на Cloudflare Workers + D1. Криптография через Web Crypto, сессии в HttpOnly cookie, разграничение доступа к данным (Row-Level Access) и журнал изменений на хэш-цепочке для аудита мутаций.
Приложение запускается моментально. Никаких тяжелых зависимостей. Низкая стоимость использования.

Границы демонстрационной версии
Система наполнена синтетическими клиническими данными (без реальных ПДн). Регуляторный комплаенс (152-ФЗ / HIPAA), WAF-защита от L7-флуда и регулярное резервное копирование D1 зафиксированы в спецификациях как точки эскалации для промышленного контура.