Живе демо

Lumea — клініка, створена з контенту, а не скриншот.

Процедури, ціни, персонал, журнал, записи та макет головної сторінки — усе це зберігається в ForgeCMS. Відвідайте публічний сайт, а потім увійдіть і змініть контент, з якого його створено.

Що дослідити

Усе перелічене тут працює в живому демо.

Редактор

  • Редагуйте й публікуйте контент — чернетки залишаються приватнимиAdmin → Treatments
  • Завантажуйте й повторно використовуйте медіаAdmin → Media
  • Адмін-панель з урахуванням ролей і власною навігацієюУвійдіть як Admin, а потім як Front desk
  • Напишіть те саме оголошення іспанською та англійськоюAdmin → Content → Notices
  • Перегляньте відвідуваність сайтуЕкспериментальноAdmin → Analytics

Розробник

  • Схема code-firstserver/api/collections.ts
  • Композиція через Local API та контроль доступуroutes/api/site/*
  • Типізований Angular-клієнт і адмін-панель як пакетapp.routes.ts, pages/admin
  • Завантаження, перевірені міграції / відновленняmigrations.ts, docs/BACKUP-RESTORE.md
  • Інтеграція AnalyticsЕкспериментальноserver/analytics, app.config.ts
  • Agent Kit може дослідити такий проєкт (інструмент розробки, не входить до runtime демо)Експериментальноscripts/agent-dogfood.test.mjs

Погляньте очима редактора

Опублікуйте щось і подивіться, як воно зміниться.

  1. Спершу подивіться на сайт клініки

    Кожне слово, ціна, зображення та години роботи на ньому — це контент, а не код. Сама головна сторінка — це список блоків, які впорядкував редактор.

  2. Увійдіть і перегляньте контент

    Відкрийте Treatments, Team і Journal. Кожен розділ — це колекція з власними полями, чернетками та зв’язками. Розміщене демо тримає їх лише для читання, щоб воно залишалося неушкодженим для всіх.

  3. Перемкніть сайт між EN та ES

    Оголошення "From the clinic" угорі — це локалізований контент. Відкрийте Content, потім Notices, відредагуйте його однією мовою, перемкніть мову й відредагуйте іншу, а тоді опублікуйте: кожна мова зберігає власний текст, і публічний сайт оновлюється. Оголошення — це частина розміщеного демо, яку можна редагувати.

  4. Надішліть собі запис

    Заповніть форму запису на публічному сайті, а потім відкрийте Bookings у CMS. Запис надходить зі статусом «очікує», і бачити його може лише персонал.

  5. Подивіться, що обмежує розміщене демо

    Розміщене демо обмежує видалення, нові документи, завантаження та зміну налаштувань, щоб приклад залишався доступним. У вашому власному проєкті ForgeCMS цих обмежень немає. Клонуйте демо, щоб спробувати завантаження та будь-які зміни.

  6. Перевірте відвідуваність сайту (експериментально)

    Сторінки огляду й Analytics показують реальні відвідування з Cloudflare Analytics Engine, коли його налаштовано, або прямо повідомляють, що його не налаштовано. Вигаданих чисел там ніколи немає.

Дослідіть як Angular-розробник

Простежте шлях моделі до runtime та інтерфейсу.

  1. Модель контенту — це один файл TypeScript

    apps/demo-aesthetics/src/server/api/collections.ts — дванадцять колекцій із чернетками, хуками, правилами доступу на рівні рядків, складеними полями й однією локалізованою колекцією. Цей файл і є вся схема.

  2. Сервер звертається до CMS без HTTP-запиту

    src/server/routes/api/site/home.get.ts об’єднує п’ять колекцій в одну відповідь через Local API (runtime.find/create), застосовуючи контроль доступу та правила чернеток.

  3. Локалізація використовує підтримуваний контракт

    Колекція notices локалізує лише поля text і textarea верхнього рівня. Публічне читання передає мову й виконується від імені анонімного відвідувача, тож чернетки не потрапляють назовні жодною мовою.

  4. Публічні записи визначає колекція, а не маршрут

    Форма запису надсилає дані без користувача. Колекція bookings дозволяє це через access.create, а хук примусово повертає статус «очікує», тож підроблений запит не може сам себе підтвердити.

  5. Адмін-панель — це пакет, а не код застосунку

    @forge-cms/admin постачає макет, сесію входу, список колекцій, редактор документів і облікові записи персоналу. Застосунок монтує свої маршрути, задає власну навігацію й залишає лише сторінки, специфічні для клініки.

  6. Analytics і Agent Kit використовуються в самому демо

    Analytics (експериментально) підключено за задокументованим рецептом. Agent Kit — інструмент розробки: тест спрямовує його MCP лише для читання на цей проєкт і перевіряє, що проєкт розпізнано. До runtime демо він не входить.

  7. Запустіть тести, щоб побачити правила

    pnpm test:demo проганяє модель контенту через типізований Local API: хто може читати запис, для кого чернетка невидима, що переписує хук, як оголошення визначається для кожної мови.

Спільні демо-акаунти

Користуйтеся тією самою CMS, що й клініка.

Спробуйте справжню адмін-панель. Усі користуються спільною базою даних, тому розміщене демо обмежує руйнівні дії та дії, що потребують багато місця у сховищі, — можна редагувати й публікувати локалізовані оголошення та надіслати запис, — щоб приклад залишався доступним для наступного відвідувача. У вашому власному проєкті ForgeCMS цих обмежень спільного демо немає.

Admin

[email protected] / lumea-demo

Рецепція (редактор)

[email protected] / lumea-desk

Ваш наступний проєкт починається з вашого контенту.

Ознайомтеся з моделлю, дослідіть робочий проєкт і створіть систему контенту, яка органічно вписується у ваш Angular-застосунок.