Руководство по созданию миниприложений в Bastyon
Содержание
- Введение
- Подготовка домена
- Быстрый старт
- Регистрация миниприложения
- Управление и поиск
- Функционал миниприложений
Введение
Эта документация предназначена для разработчиков, которые хотят быстро начать работу с миниприложениями в экосистеме Bastyon. Миниприложения позволяют интегрироваться с функционалом платформы Bastyon, включая платежи, уведомления, мессенджинг и другие возможности.
Шаг 1: Подготовка домена
Для начала необходимо, чтобы на вашем домене были доступны два файла:
b_manifest.json
— файл манифеста миниприложенияb_icon.png
— иконка миниприложения
Миниприложения работают в изолированной среде и загружаются через iframe
. Файлы должны быть доступны по корректным URL-адресам.
Пример структуры URL:
https://example.com/b_manifest.json https://example.com/b_icon.png
Описание файлов
b_icon.png
Изображение, представляющее ваше миниприложение. Рекомендуемый размер: 512x512 пикселей.
b_manifest.json
Файл манифеста служит для настройки вашего миниприложения.
Пример структуры манифеста:
{ "id": "demo.pocketnet.app", "name": "Demo", "description": "Demo application", "author": "PQ8AiCHJaTZAThr2TnpkQYDyVd1Hidq4PM", "scope": "demo.bastyonapps.com", "permissions": [ "account", "notifications", "messaging", "payment", "sign", "camera", "gallery" ] }
Поля манифеста
Поле | Описание | Формат | Обязательное |
---|---|---|---|
id | Уникальный идентификатор | Доменное имя (например, app.pocketnet ) | Да |
name | Название миниприложения | Строка | Да |
description | Описание миниприложения | Строка или объект локализации | Да |
author | Адрес создателя | Адрес в Bastyon | Да |
scope | Поддомен для миниприложения | HTTPS домен | Да |
permissions | Список разрешений | Массив строк | Нет |
Пример локализации описания:
"description": { "en": "Demo application", "ru": "Демонстрационное приложение" }
Важно: Некоторые методы SDK работают только при наличии соответствующих разрешений. Например, открытие внешних ссылок требует специального разрешения для обеспечения безопасности.
Быстрый старт
Системные требования
- Node.js 14+
- npm или yarn
- HTTPS домен для размещения миниприложения
Шаблоны для разработки
Тип | Репозиторий | Описание |
---|---|---|
Клиент | bastyon-miniapp-vue-template | Vue.js шаблон с настроенным SDK |
Сервер | bastyon-miniapp-expressjs-template | Express.js шаблон для API |
Шаблоны содержат преднастроенную структуру и все необходимые зависимости для быстрого старта.
Шаг 2: Регистрация миниприложения
- Перейдите на страницу регистрации
- Заполните форму, следуя инструкциям
- После заполнения миниприложение будет добавлено в режиме разработки и доступно по URL:
https://bastyon.com/application?id=<ID вашего миниприложения>
Публикация миниприложения
- Зайдите в менеджмент миниприложения через:
- Автоматический переход после регистрации
- Домашнюю страницу, введя ваш адрес в поиске
- Нажмите "Опубликовать" для доступа всем пользователям
Шаг 3: Управление и поиск миниприложений
Просмотр списка миниприложений
- Откройте bastyon.com/home
- В поиске введите:
author:<ваш адрес в Bastyon>
Управление миниприложением
Нажмите на значок шестеренки рядом с миниприложением для доступа к панели управления.
Функционал миниприложений
Основные возможности
- Прием криптовалютных платежей
- Отправка уведомлений
- Мессенджинг
Подключение SDK клиента
Добавьте SDK в ваш HTML:
<script src="https://bastyon.com/js/lib/apps/sdk.js"></script>
Используйте SDK в коде:
// Инициализация SDK const sdk = window.BastyonSdk; // Пример использования async function sendNotification() { try { await sdk.notifications.send({ title: 'Привет!', body: 'Это тестовое уведомление' }); } catch (error) { console.error('Ошибка отправки:', error); } }
Примечание: Полное описание методов SDK доступно в документации SDK
Серверная часть
Почему необходим сервер
Поскольку Bastyon является проектом с открытым исходным кодом, пользователи могут создавать собственные сборки платформы. Для обеспечения безопасности критических операций (например, проверки платежей) рекомендуется использовать сервер для прямого взаимодействия с блокчейном.
PocketNet Proxy API
Используйте PocketNet Proxy API для серверной части. API предоставляет:
- Обработку платежей
- Выполнение RPC-вызовов
- Безопасность критических операций
Часто возникающие проблемы
CORS ошибки
При разработке убедитесь, что ваш домен добавлен в список разрешенных источников в манифесте.
Проблемы с SDK
Проверьте:
- SDK подключен после загрузки DOM
- Миниприложение запущено внутри Bastyon
- Все необходимые разрешения указаны в манифесте
Для дополнительной информации и поддержки посетите форум разработчиков Bastyon.