1 звезда на GitHub = 1 новый компонент.

Поставить звезду
Готовые шаблоны

SaaS · Управление отелем

Полноценный SaaS для отелей: маркетинговый сайт, вход и полный операционный дашборд.

Lobby — операционная система для отеля, собранная из библиотеки: лендинг из готовых секций, экран входа и приложение с дашбордом, шахматкой, таблицей бронирований, доской уборки, CRM гостей, отчётами о выручке и настройками аккаунта с командой и оплатой. Все графики — SVG-графики библиотеки без зависимостей, а приложение переключается между светлой и тёмной темой.

8 страниц36 компонентов0 deps

Живой просмотр

Страницы

Каждая страница — настоящий интерактивный предпросмотр, корзина общая для всех.

Лендинг

Маркетинговый сайт: hero, логотипы, функции, как это работает, цифры, тарифы, отзывы и FAQ.

app/page.tsx

Вход

Вход на разделённом экране с SSO, показом пароля и проверкой.

app/sign-in/page.tsx

Дашборд

KPI, выручка, загрузка на сегодня, ресепшен, каналы, загрузка по типам номеров и активность.

app/app/page.tsx

Бронирования

Шахматка на 14 дней и таблица бронирований с поиском, сортировкой и массовыми действиями.

app/app/reservations/page.tsx

Номера и уборка

KPI статусов, фонд по типам и интерактивная доска уборки по этажам.

app/app/rooms/page.tsx

Гости

Справочник гостей с уровнями, визитами и тратами рядом с CRM-карточкой.

app/app/guests/page.tsx

Отчёты

Прогноз, тепловая карта темпа бронирований, воронка, сегменты, ADR по каналам и сравнение месяцев.

app/app/reports/page.tsx

Настройки и аккаунт

Профиль, отель, уведомления, команда с ролями и приглашениями, тариф и оплата.

app/app/settings/page.tsx

Что внутри

  • 8 страниц: лендинг, вход и приложение из 6 экранов
  • Шахматка, доска уборки и заселение на ресепшене
  • Сортируемые таблицы с поиском, фильтрами и массовыми действиями
  • 13 SVG-графиков из библиотеки
  • Настройки с ролями, приглашениями и использованием тарифа
  • Светлая и тёмная тема с переключателем

Установка и использование

  1. Установите пакет

    bash
    npm install react-component-kit-ui
  2. Создайте по маршруту для каждой страницы шаблона

    app/page.tsx

    tsx
    import { LandingPage } from 'react-component-kit-ui/templates/saas-hotel';
    
    export default function Page() {
      return <LandingPage />;
    }

    app/sign-in/page.tsx

    tsx
    import { SignInPage } from 'react-component-kit-ui/templates/saas-hotel';
    
    export default function Page() {
      return <SignInPage />;
    }

    app/app/page.tsx

    tsx
    import { DashboardPage } from 'react-component-kit-ui/templates/saas-hotel';
    
    export default function Page() {
      return <DashboardPage />;
    }

    app/app/reservations/page.tsx

    tsx
    import { ReservationsPage } from 'react-component-kit-ui/templates/saas-hotel';
    
    export default function Page() {
      return <ReservationsPage />;
    }

    app/app/rooms/page.tsx

    tsx
    import { RoomsPage } from 'react-component-kit-ui/templates/saas-hotel';
    
    export default function Page() {
      return <RoomsPage />;
    }

    app/app/guests/page.tsx

    tsx
    import { GuestsPage } from 'react-component-kit-ui/templates/saas-hotel';
    
    export default function Page() {
      return <GuestsPage />;
    }

    app/app/reports/page.tsx

    tsx
    import { ReportsPage } from 'react-component-kit-ui/templates/saas-hotel';
    
    export default function Page() {
      return <ReportsPage />;
    }

    app/app/settings/page.tsx

    tsx
    import { SettingsPage } from 'react-component-kit-ui/templates/saas-hotel';
    
    export default function Page() {
      return <SettingsPage />;
    }
  3. Подключите свой каталог, валюту и маршруты

    Возьмите демо-магазин за основу и замените нужное. Товары принимают реальное фото или одну из 16 встроенных иллюстраций.

    tsx
    import { DashboardPage, lobbyData, type LobbyData } from 'react-component-kit-ui/templates/saas-hotel';
    
    const data: LobbyData = {
      ...lobbyData,
      workspace: { name: 'Casa Alba', plan: 'Starter', initials: 'CA' },
      user: { name: 'Marta Gil', role: 'Owner', email: 'marta@casaalba.com' },
    };
    
    export default function Page() {
      return <DashboardPage data={data} theme="auto" />;
    }

Новые e-commerce компоненты 13

Созданы для этого шаблона и доступны в библиотеке по отдельности.

Компонент

App Topbar

Верхняя панель с поиском ⌘K, уведомлениями, переключателем темы и меню пользователя.

Компонент

Page Header

Заголовок страницы приложения: хлебные крошки, описание, выбор периода, кнопки и вкладки.

Компонент

Data Table

Таблица с поиском, фильтрами статусов, сортировкой, выбором строк, массовыми действиями, пагинацией и типизированными ячейками.

Компонент

Room Rack

Шахматка бронирований: номера по дням, цветные полосы по статусу, отметка «сегодня» и панель деталей.

Компонент

Housekeeping Board

Доска статусов номеров по этажам: чистый, грязный, проверка, занят, не работает — с фильтрами и быстрым переключением.

Компонент

Arrivals Board

Список ресепшена: заезды, выезды и проживающие, заселение и выселение в один клик.

Компонент

Guest Profile Card

Карточка CRM: аватар, уровень лояльности, контакты, статистика, предпочтения, ближайший заезд и заметки.

Компонент

Settings Section

Блок настроек: заголовок и подсказка рядом с карточкой полей, кнопки «Сохранить/Отмена» и подтверждение.

Компонент

Switch Row

Строка настроек с подписью, описанием и доступным переключателем.

Компонент

Team Members

Управление командой: роли, статусы, приглашения и удаление в два шага.

Компонент

Plan Usage Card

Сводка по оплате: тариф, продление, счётчики использования с порогами, способ оплаты и повышение тарифа.

Компонент

Auth Card

Вход и регистрация на разделённом экране: SSO, показ пароля, проверка и панель бренда.

Повторно используемые компоненты

Существующие компоненты, из которых собран шаблон.