# HotelSync — SaaS PMS System Современная система управления отелем (PMS) с шахматкой бронирований, менеджером каналов и API. ## Быстрый старт ```bash npm install npm run dev ``` Откройте [http://localhost:5173](http://localhost:5173) ## Демо-аккаунты | Роль | Email | Пароль | |-----------------------|---------------------------------|--------| | Менеджер отеля | manager@grand-palace.ru | demo | | Горничная | cleaner@grand-palace.ru | demo | | Супер-администратор | admin@hotelsync.io | demo | ## Функциональность - **Шахматка** — drag-to-book интерфейс, цветовое кодирование по статусам - **Бронирования** — список с фильтрами, создание, детальная панель - **Номерной фонд** — карточки номеров, статусы, уборка - **Уборка** — Kanban-доска: ожидание / в процессе / готово - **Менеджер каналов** — Booking.com, Airbnb, Expedia, VRBO - **API-документация** — встроенная документация REST API - **Светлая / тёмная тема** — переключатель в шапке - **Мультиарендность** — архитектура SaaS с изоляцией по отелям ## Структура проекта ``` src/ ├── components/ │ ├── calendar/ # Шахматка бронирований │ ├── bookings/ # Модалки бронирований │ ├── layout/ # Sidebar, Topbar │ └── ui/ # Badge, Modal ├── contexts/ # AuthContext, ThemeContext ├── data/ # Мок-данные ├── layouts/ # AppLayout ├── lib/ # Утилиты, константы ├── pages/ # Страницы приложения └── types/ # TypeScript типы ``` ## API Base URL: `https://api.hotelsync.io/v1` Документация доступна в приложении: `/grand-palace/api-docs` ## Стек технологий - React 18 + TypeScript - Vite 5 - Tailwind CSS 3 (dark mode) - React Router 6 - date-fns - Lucide React