Как сделать шаблоны
Здраствуйте я пользователь Discord ну и по совместительству вайб-кодер и хотел написать плагин для vencord на шаблоны для ролей как на телефоне но у меня возник вопрос КАК? на каком это языке программирование и какая структура в плагинах так как я новичёк в этом деле
Язык программирования и стек
Плагины для Vencord пишутся на TypeScript (или обычном JavaScript с поддержкой типов) с использованием React и JSX для отрисовки пользовательского интерфейса. Поскольку Vencord модифицирует клиент Discord (который по сути является приложением на Electron/браузере), весь код плагинов выполняется в среде браузера/Node.js.
Структура плагина в Vencord
Для создания кастомного плагина используется папка src/userplugins внутри исходного кода Vencord.
1. Базовая структура файлов
Плагин можно оформить либо в виде одного файла, либо в виде папки:
src/userplugins/roleTemplates.ts (если код компактный)
Или папка: src/userplugins/roleTemplates/index.tsx (если планируется использовать компоненты интерфейса, стили или разбить код на модули).
2. Шаблон кода (Boilerplate)
Каждый плагин начинается с функции definePlugin, которая задает метаданные (название, описание, автора) и жизненный цикл плагина:
TypeScript
import { Devs } from "@utils/constants";
import definePlugin from "@utils/types";
export default definePlugin({
name: "RoleTemplates",
description: "Добавляет шаблоны для быстрого создания ролей в стиле мобильного Discord",
authors: [Devs.YourName], // Или объект с вашим именем и ID
// Метод, который выполняется при запуске/включении плагина
start() {
console.log("Плагин RoleTemplates запущен!");
},
// Метод при выключении
stop() {
console.log("Плагин выключен.");
}
});
Как реализовать функционал шаблонов ролей
Поскольку мобильная версия Discord позволяет применять готовые пресеты (наборы прав, цвета и иконки для ролей), в десктопной версии через плагин Vencord это реализуется следующим образом:
Патчинг интерфейса (UI Patches): В Vencord есть мощная система патчей (через Webpack-модули Discord или JSX-модификации), позволяющая встраивать собственные кнопки (например, кнопку «Шаблоны ролей») в модальное окно создания или редактирования ролей в настройках сервера.
Логика шаблонов: При нажатии на кнопку шаблона (например, «Модератор», «Медиа», «Игрок») плагин программно заполняет поля формы создания роли (название, цвет, определенный набор разрешений через Discord API/Flux-диспетчер).
Как протестировать плагин локально
Клонируйте репозиторий Vencord и настройте окружение для сборки из исходников (pnpm install).
Создайте файл или папку вашего плагина в src/userplugins/.
Соберите и инжектируйте Vencord заново с помощью команды сборки (например, pnpm build / pnpm inject), после чего перезапустите Discord.
Огромное спасибо за такой большой поток информации мне теперь в разы легче начать писать плагин
Плагины для Vencord пишутся на TypeScript. Тебе нужно изучить структуру репозитория Vencord на GitHub и посмотреть исходники уже существующих плагинов для ролей, чтобы понять логику взаимодействия с API Discord. Вся разработка идет через их систему сборки, так что просто клонируй репо и пробуй менять код под себя.
Спасибки помог так и сделаю
Как все, нелегкие нынче времена но вы держитесь