Skip to content

Mini App: настройка владельцем

Всё оформление мини-аппы настраивается в веб-кабинете, раздел Мини-приложение. Экран показывает живые превью: карточки тем и «телефон» справа — это настоящая мини-аппа в iframe (/app/?mock=1&variant=…), так что владелец видит ровно то, что получат подписчики. Превью в «телефоне» обновляется по мере правок; после сохранения подписчики получают новое оформление при следующем открытии мини-аппы — без пересборки и деплоя.

Экран настройки мини-аппы в веб-кабинете

Тема и брендинг

ПолеОграниченияЧто делает
Темаодна из 18 — базовые: minimal, private, buddy, native, terminal, magazine, neon, pop; строгие: onyx, swiss, ledger, graphite, atlas, noir, steel, ivory, sable, quartzВыбор кликом по карточке-превью; карточки показывают нативный акцент каждой темы
Названиедо 64 символовНазвание приложения (заголовок окна мини-аппы)
Приветствиедо 256 символовТекст в самом верху Главной; пусто — блок скрыт
Акцентный цвет#RGB / #RRGGBB7 пресетов + свой HEX + сброс «✕» (сброс возвращает нативный цвет темы). Перекрашивает кнопки и акцентные элементы поверх выбранной темы
Масштаб фото70–130%Ползунок масштаба обложки
Масштаб интерфейса85–115%Ползунок ui.scale — базовый размер шрифта всей мини-аппы

Строгий набор — 10 сдержанных деловых тем без градиентов и неона: Оникс (уголь и серебро), Швейцарский (белый лист, чёрная типографика, красная точка), Гроссбух (банковская зелень на кремовой бумаге), Графит (матовый серый со стальным синим), Атлас (глубокий нави с латунью), Нуар (чистое ч/б), Сталь (холодный металл), Слоновая кость (тёплый светлый с серифами), Соболь (почти чёрный с бронзой), Кварц (нейтральный серый с приглушённым индиго). Каждая поддерживает светлую и тёмную схему; лендинг наследует ту же тему.

Кнопка Опубликовать сохраняет конфиг и ставит отметку публикации (published_at); при правках без публикации появляется отдельная кнопка «Сохранить». Технически экран работает через GET/PATCH /api/admin/miniapp и POST /api/admin/miniapp/publish.

Порядок блоков на главной и видимость

Пять секций Главной можно переставлять стрелками и скрывать/показывать (👁 / 🚫):

  • Статус подписки (status)
  • Тарифы и оплата (plans)
  • Пригласи друга (referral)
  • MTProto-прокси (proxy)
  • Свои блоки и кнопки (custom) — сюда попадают кастомные блоки и кнопки, назначенные на Главную

Тексты и цвета кнопок

Шесть встроенных кнопок можно переименовать (до 32 символов) и перекрасить, не трогая остальную тему:

КлючКнопка
renewПродлить / Купить
shareПоделиться (рефералка)
open_appОткрыть в приложении
get_linkПолучить ссылку
connect_proxyПодключить прокси
trialПопробовать бесплатно

Кастомные блоки и кнопки-ссылки

Два конструктора добавляют собственный контент на любой из трёх экранов (Главная / Подключение / Кабинет):

Свои блоки (до 16) — контентные карточки: эмодзи-иконка, заголовок (до 64), текст (до 1000, с переносами строк) и опциональная кнопка-ссылка (подпись до 32 + URL + цвет). Подходит для акций, анонсов, ссылок на канал.

Свои кнопки-ссылки (до 16) — отдельные кнопки: подпись (до 32), URL, стиль primary (залитая) или ghost (контурная), свой цвет.

Ссылки фильтруются

Разрешены только схемы https://, http://, tg:// и mailto: (до 512 символов) — всё остальное отбрасывается и на сервере, и на клиенте. Telegram-ссылки (tg://, t.me/…) открываются нативно, остальные — в браузере.

На этом же экране настраивается блок «Сайт (лендинг)» — публичная витрина на корне домена (/): заголовок, подзаголовок, до 8 карточек-фич, до 8 вопросов FAQ и цель кнопки «Личный кабинет» (веб-кабинет или бот). Сайт использует ту же тему и акцент, что и мини-аппа.

Превью тем по URL

Мини-аппа открывается в браузере в mock-режиме — без Telegram и без реальных данных. Этим пользуется и сам экран кабинета, и это удобно для быстрой проверки любой темы:

text
https://<домен>/app/?mock=1&variant=a   # …&variant=b … &variant=r
ПараметрЗначенияЧто делает
mock=1Принудительный mock-режим (демо-данные)
varianta..r или имя темы (minimalquartz)Тема для превью, перекрывает сохранённую
modelight / darkФиксирует цветовую схему
accent#HEXАкцентный цвет
langru / enЯзык интерфейса
title, greetingтекстПереопределяют заголовок и приветствие
tabhome / connect / accountОткрыть конкретную вкладку
wstep0..3Открыть шаг мастера подключения (интро / приложение / подписка / готово)
wapp, wotherключ приложения / 1Выбранное приложение мастера и режим «другое устройство»

Как мини-аппа попадает к подписчику

URL мини-аппы хранится в настройке SUBSCRIPTION_MINI_APP_URL (категория «Подписки» в настройках). Если она пуста, при старте бот подставляет <WEB__PUBLIC_URL>/app автоматически и устанавливает кнопку меню чата «VPN» (MenuButtonWebApp). Отдельно деплоить мини-аппу не нужно — статика miniapp/app/ отдаётся тем же веб-сервисом по пути /app.

MIT License · сделано для тех, кто продаёт VPN, а не настраивает ботов