Кодекс Премиум
Кодекс Премиум — закрытая библиотека конспектов и презентаций по юриспруденции. Проект построен на React, Vite, Express, tRPC, Drizzle и MySQL/TiDB.
Возможности
Студент входит по индивидуальному коду, видит срок действия доступа, открывает PDF внутри сайта, добавляет материалы в избранное и получает уведомления. Администратор управляет предметами, материалами и студентами, продлевает доступ и загружает PDF в приватное storage-хранилище.
Локальный запуск
Требуется Node.js 22 и pnpm. Скопируйте .env.example в .env, заполните значения инфраструктуры и выполните:
pnpm install
pnpm check
pnpm test
pnpm dev
Production-сборка проверяется командами:
pnpm check && pnpm test && pnpm build
pnpm start
Переменные окружения
Не добавляйте .env в Git. Используйте .env.example только как список названий переменных. Для WebDev/RelaxDev значения DATABASE_URL, JWT_SECRET, storage и OAuth должны задаваться через секреты платформы.
Публикация в GitFlic
Подробная инструкция находится в docs/GITFLIC_RELAXDEV.md. В текущем проекте не зафиксированы URL личного GitFlic-репозитория и токены пользователя, поэтому push выполняется после создания репозитория владельцем.
Безопасность
Студенческие коды проверяются через SHA-256 hash, а student-session хранится в HTTP-only cookie. Новые PDF выдаются студенту через временную signed-ссылку. Не коммитьте .env, ключи storage, JWT-секреты и реальные коды студентов.
Статус
Проект проверен командами pnpm check, pnpm test и pnpm build. Контрольная точка WebDev содержит рабочую версию для дальнейшего импорта и публикации.