ДЗ smart-house-web завершено

This commit is contained in:
28 changed files with 1671 additions and 0 deletions
+48
View File
@@ -0,0 +1,48 @@
# ДЗ 2026-04-28 - Веб-сервис умного дома
## Цель:
Превращаем умный дом в веб-сервис.
## Срок:
Сдать до: **2026-05-25**
## Описание/Пошаговая инструкция выполнения домашнего задания:
Реализовать backend сервис для управления умным домом и frontend приложение для взаимодействия с ним.
- Технология взаимодействия с backend сервисом (gRPC, REST, GraphQL, ...) выбирается произвольно.
API backend сервиса предоставляет доступ ко всему базовому функционалу библиотеки умного дома:
- [x] Добавление/удаление/перечисление комнат в доме и получение информации о конкретной комнате.
- [x] Добавление/удаление/перечисление устройств в комнате и получение информации о конкретном устройстве.
- [x] Получение отчёта о доме.
- [x] Присутствуют функциональные тесты, которые общаются с backend-ом и проверяют его ответы.
Frontend приложение:
- [x] Отображает список комнат в доме.
- [x] Позволяет перейти к конкретной комнате или добавить новую комнату.
- [x] Отображает список устройств в комнате.
- [x] Позволяет перейти к конкретному устройству или добавить новое устройство.
- [x] Позволяет запросить отчёт о состоянии дома.
**Критерии оценки:**
- Workspace успешно собирается.
- Приложения-примеры успешно выполняются.
- Команды cargo clippy, и cargo fmt --check не выводят ошибок и предупреждений.
## Демо
Проект разбит на бэкенд и фронтенд. Для демонстрации сначала нужно запустить сервер из подкаталога `baсkend`:
cargo run
Затем, не останавливая сервер, запустить фронт из подкаталога `frontend`:
trunk serve
Далее можно переходить в браузер по адресу `http://localhost:8080`.