# ui — Web UI (React + TypeScript + Tailwind + shadcn-ui) Тёмная тема, 6 страниц из ТЗ. Каркас — задача **#35**, страницы — #36–#39, E2E — #42. | Маршрут | Страница | Задача | |---|---|---| | `/` | Dashboard: статус, трафик, handshake, аптайм | #36 | | `/routing` | редактор правил, ipset, домены, режимы, DnD+diff | #37 | | `/config` | загрузка `.conf`, валидация, маскировка ключей | #38 | | `/devices` | устройства и политики | #39 | | `/logs` | журнал, счётчики RETURN vs MARK | #39 | | `/settings` | GeoIP-расписание, обновления, интеграции | #39 | API-клиент генерируется из OpenAPI (#19) в `src/api/generated/`. Взаимодействие: REST + WebSocket.