Skip to content

Темы

⚠️ Управление темами в Pano требует права доступа «Управление представлением» (View Management).
Если вы не вошли в систему как администратор, у вас должно быть право доступа на просмотр, чтобы открыть страницу тем и выполнять связанные с ними действия.

Темы определяют внешний вид и интерфейс вашего веб-сайта Pano.
Они управляют макетами, цветами, компонентами и пользовательским опытом, позволяя каждой установке Pano выглядеть уникально, сохраняя при этом совместимость с бэкендом.

Темы работают независимо от аддонов бэкенда, что означает, что вы можете переключать темы без перезапуска Pano и без влияния на работу аддонов.

🎨 Создание собственной темы

Если вы хотите создать свою собственную тему, Pano делает это простым и мощным процессом.
Темы разрабатываются с использованием SvelteKit — того же современного веб-фреймворка, который обеспечивает работу интерфейсов самого Pano.

Каждая тема представляет собой отдельное приложение SvelteKit, упакованное в .zip архив после сборки.
В отличие от традиционных тем, здесь нет папок assets/ или build/, которыми нужно управлять вручную — процесс сборки сделает всё за вас.

Тема может:

  • Определять собственные макеты, маршруты или виджеты.
  • Добавлять собственную систему стилей и конфигурацию переменных.
  • Взаимодействовать с бэкендом Pano через REST API.
  • Опционально зависеть от конкретных аддонов или предоставлять пользовательские API для других.

Темы могут получать данные бэкенда только через слой API Pano, но при этом они работают как настоящие UI-приложения.

📘 Узнайте, как создать и упаковать свою тему, здесь:
👉 Руководство по разработке тем →

💡 Почему темы важны

Темы — это то, что формирует пользовательский опыт сайта вашего сервера.
Они определяют, как посетители взаимодействуют с вашим контентом и как сообщество видит ваш бренд.

Темы позволяют вам:

  • Настраивать индивидуальность и дизайн вашего сайта.
  • Изменять цветовые схемы, макет и структуру.
  • Создавать разные стили для разных аудиторий.
  • Интегрироваться с аддонами для расширения функциональности.
  • Публиковать и делиться своей темой с другими в Pano Marketplace.

Некоторым аддонам могут требоваться определенные темы, а некоторым темам — определенные аддоны для правильной работы.
Кроме того, некоторые темы расширяют или переопределяют стандартное поведение API Pano для предоставления расширенных функций.

⚙️ Как работают темы (за кулисами)

Pano загружает темы как независимые UI-приложения из директории themes/.
Каждая тема содержит файл манифеста manifest.json, в котором хранятся метаданные (id, версия, автор, совместимость и т. д.).
Этот файл автоматически создается и управляется Pano — не редактируйте его вручную.

При запуске Pano:

  1. Сканирует папку themes/ на наличие валидных тем.
  2. Невалидные или поврежденные темы автоматически пропускаются.
  3. Только валидные темы отображаются в разделе Панель → Вид → Темы.
  4. Pano перезагружает все доступные темы при запуске.
  5. Только что установленные темы автоматически обнаруживаются и отображаются — ручная перезагрузка не требуется.

Стандартные интерфейсы в Pano

По умолчанию Pano поставляется с тремя встроенными UI-приложениями:

  • panel-ui → Панель администратора.
  • setup-ui → Интерфейс настройки (отображается при первой конфигурации).
  • vanilla-theme → Стандартная тема публичного сайта.

Только vanilla-theme является полноценной темой.
Остальные два приложения (panel-ui, setup-ui) являются UI-приложениями, а не темами, и не будут отображаться в списке тем.

Если Pano еще не был настроен, он автоматически показывает Setup UI до завершения установки.

Чтобы получить доступ к панели администратора, перейдите по адресу /panel в вашем браузере — если вы вошли в систему и имеете необходимые права, вы будете перенаправлены в интерфейс панели.

📦 Установка тем

Вы можете установить темы двумя способами:

1. С вашего локального компьютера

  1. Откройте раздел Панель → Вид → Темы.
  2. Нажмите Установить тему.
  3. Перетащите ваш .zip файл темы или выберите его вручную.
  4. Новая тема будет автоматически загружена и отображена в списке — перезагрузка не требуется.

⚠️ Предупреждение о непроверенных темах:
Установка тем из неизвестных или неофициальных источников осуществляется на ваш страх и риск.
Непроверенные темы могут содержать небезопасный или несовместимый код.
Устанавливайте только те темы, которым вы доверяете, или те, что опубликованы в Pano Store.

2. Из Pano Store

  1. В окне Установить тему нажмите Browse Store.
  2. Выберите тему — бесплатную или премиум.
  3. Нажмите Install и позвольте Pano сделать всё автоматически.
  4. Тема появится автоматически после установки.

🛍️ Для использования Маркетплейса требуется привязанный аккаунт Pano.

🧩 Активация и управление темами

Одновременно может быть активна только одна тема.
Активную тему можно остановить или перезапустить вручную при необходимости.
Если текущая активная тема остановлена, публичный веб-сайт станет недоступен до момента перезапуска.
В таком случае рекомендуется перезапустить Pano.

Чтобы управлять вашими темами:

  1. Перейдите в раздел Панель → Вид → Темы.
  2. Выберите тему.
  3. Нажмите Start или Stop, чтобы активировать или деактивировать её.

Остановка активной темы временно отключает веб-сайт.
Всегда убеждайтесь, что валидная тема активна, прежде чем останавливать другую.

⚙️ Настройка тем

Каждая тема имеет свои собственные параметры конфигурации, которые могут отличаться от темы к теме.
В целом вы можете настроить:

  • Цвета и цветовые переменные
  • Макет шапки (header) и подвала (footer)
  • Шрифты и типографику
  • Фоновые изображения и градиенты
  • Ширину макета, отступы и размеры контейнеров
  • Логотип сайта, фавиконку или брендинг

Вы можете просмотреть и изменить настройки активной темы в разделе:
Панель → Вид → Настройки темы

Изменения применяются мгновенно — перезапуск не требуется.

⚠️ Удаление темы

Темы можно удалить только со страницы их подробного описания — не из общего списка тем.

При удалении:

  • Если тема активна в данный момент, Pano автоматически переключится обратно на vanilla-theme.
  • Встроенные UI-приложения (panel-ui, setup-ui, vanilla-theme) нельзя удалить, изменить или обновить по отдельности.
  • Pano автоматически переустанавливает любые отсутствующие встроенные приложения во время запуска, если они были повреждены или удалены.

Чтобы удалить пользовательскую тему:

  1. Перейдите в раздел Панель → Вид → Темы → [Подробнее о теме].
  2. Нажмите Удалить.
  3. Подтвердите действие.

🧱 Структура директорий

Пример структуры директории Pano с темами:

/pano/
├── Pano-1.0.0.jar
├── config.conf
├── panel-ui/
├── setup-ui/
├── themes/
│    ├── vanilla-theme/
│    ├── dark-matter-theme/
└── file-uploads/

Важно:

  • Не изменяйте и не заменяйте panel-ui, setup-ui или vanilla-theme.
  • Они управляются Pano внутренне и будут автоматически переустановлены при запуске, если будут отсутствовать или повреждены.
  • Вручную управляйте только папками тем, установленных пользователем.

🧠 Резюме

ДействиеРасположениеОписание
Установить (локально)Панель → Вид → Темы → Установить темуПеретащите или загрузите
Установить (магазин)Панель → Вид → Темы → Установить тему → Browse StoreЗагрузка напрямую из маркетплейса
Активировать / ОстановитьПанель → Вид → Темы → Start/StopВключить или отключить тему
НастроитьПанель → Вид → Настройки темыИзменить цвета, макет, шрифты
УдалитьПанель → Вид → Темы → Подробнее о теме → УдалитьБезопасно удалить кастомную тему

🧩 Продвинутые примечания

  • Только валидные темы отображаются в списке; поврежденные или неполные темы игнорируются.
  • Каждая тема упаковывается в виде сборки SvelteKit (.zip архив).
  • Каждая тема содержит файл manifest.json, генерируемый автоматически — не редактируйте вручную.
  • Некоторые аддоны зависят от определенных тем, и наоборот.
  • Некоторые темы предоставляют или переопределяют стандартные API для расширенной функциональности.
  • Встроенные UI-приложения (panel-ui, setup-ui, vanilla-theme) защищены и не могут быть изменены.
  • Если они повреждены или отсутствуют, Pano автоматически переустановит их во время запуска.
  • Темы не изолированы (не в песочнице), но их доступ к бэкенду ограничен HTTP API эндпоинтами.

🌈 Темы определяют индивидуальность вашего Pano — ваш мир, ваш дизайн, ваше лицо.