Перейти к содержимому
Room & Assets — описание курса

Room & Assets — описание курса

Нам необходимо разработать кроссплатформенное (Windows + Linux) приложение Room & Assets для учёта аудиторий, единиц инвентаря и бронирований. Приложение как минимум должно:

  • отображать каталог ресурсов с поиском и фильтрами;
  • позволять создавать, редактировать и удалять брони;
  • проверять пересечение интервалов для одного и того же ресурса и блокировать конфликтующие записи;
  • хранить временные метки в UTC (ISO-8601 / RFC 3339), отображать их в локальной таймзоне пользователя.

Стек технологий

В лабораторных используется веб-стек:

  • Фронтенд: TypeScript + React + Vite, MUI, MSW
  • Бэкенд: Node.js + Fastify v5 + Prisma + Postgres
  • Инфраструктура: Docker Compose, NGINX
  • CI/CD: GitHub Actions, GitHub Pages (фронт), Render (бэк)

Минимальные требования к среде разработчика — Node.js 20.19+/22.12+, Docker с плагином Compose v2, Git.

Свобода выбора инструментария. Перечисленный выше стек — это то, на чём построены инструкции в лабораторных, которые мы с вами посмотрим. При большом желании, реализовать проект можно на любом другом инструментарии, обеспечивающем эквивалентный результат и выполнение всех требований к финальной сдаче: например, Tauri, Avalonia UI, JavaFX, SvelteKit + Hono или любой другой связке. В этом адаптацию рассмотренных концепций (компонентный подход, моки, контейнеризация, CI/CD) под выбранный стек - выполняете самостоятельно.

Лабораторные работы

Целевая структура репозитория и пошаговый чек-лист итоговой сдачи описаны в лабораторной «Итоговое задание».