Плагины
Плагины расширяют функциональность панели GameAP: добавляют новые страницы, вкладки на странице игрового сервера, редакторы файлов, кнопки на главной странице и интеграции с внешними сервисами.
Плагин — это один файл .wasm (WASM-модуль, таргет wasm32-wasip1). Плагины можно писать на любом языке, компилируемом в WASM: для Rust есть готовый SDK, возможна разработка на AssemblyScript. Плагин может включать фронтенд-часть на Vue 3, встроенную в тот же файл .wasm — страницы и компоненты плагина работают прямо в интерфейсе панели.

HEX-редактор файлов игрового сервера — пример работающего плагина.
Безопасность
Серверная часть плагина выполняется в изолированном окружении (WASM-рантайм): у неё нет прямого доступа к файловой системе и сети, все обращения идут через контролируемый интерфейс панели. Устанавливать и удалять плагины может только администратор панели. При установке из каталога панель проверяет SHA-256-хеш скачанного файла.
Изоляция распространяется только на WASM-часть. Фронтенд плагина песочницей не ограничен — это обычный JavaScript в том же источнике, что и панель, с доступом к странице и к API от имени текущего пользователя. Подробнее — Фронтенд плагина.
Отсюда главное правило: плагин получает столько же прав, сколько имеет установивший его администратор. Ставьте плагины только из источников, которым доверяете.
Каталог плагинов
Официальный каталог плагинов находится по адресу plugins.gameap.ru (английская версия — plugins.gameap.dev). В каталоге могут публиковаться как плагины команды GameAP, так и плагины сторонних разработчиков — любой желающий может зарегистрироваться и опубликовать свой плагин (см. Публикация в каталоге).
Плагины из каталога устанавливаются из интерфейса панели в несколько кликов (см. Установка и управление).
Официальные плагины
| Плагин | Описание | Каталог | Репозиторий |
|---|---|---|---|
| FTP (files) | Управление FTP(S)/SFTP-сервером на выделенных серверах (нодах) | plugins.gameap.ru/plugins/files | github.com/gameap/plugin-files |
| HEX Редактор | Просмотр и редактирование файлов игрового сервера в шестнадцатеричном виде | plugins.gameap.ru/plugins/hexeditor4jm2 | github.com/gameap/plugin-hex-editor |
| GoldSource Addons | Управление плагинами Metamod и AMX Mod X на GoldSource-серверах (Half-Life, CS 1.6 и др.) | plugins.gameap.ru/plugins/ezvdsxmlu6fbk | github.com/gameap/plugin-goldsrc-addons |
| Minecraft Modrinth | Поиск, установка и обновление модов и плагинов Minecraft с modrinth.com | plugins.gameap.ru/plugins/dshdabjp2l73a | github.com/gameap/plugin-minecraft-modrinth |
В этом разделе
- Установка и управление — установка плагинов из каталога и из файла, обновление, удаление, права доступа, переменные окружения.
- Разработка плагинов — архитектура плагинной системы, интерфейс плагина, события, HTTP-маршруты, host-функции, сборка на Rust.
- Фронтенд плагина — встраивание интерфейса плагина в панель, манифест
PluginDefinition, слоты, SDK, локальная отладка. - Публикация в каталоге — регистрация в каталоге, публикация версий, модерация, публикация из CI/CD.