Custom JavaScript plugins
Last reviewed 2026-10-23
Custom plugins are local to one Windows account. They are not shared with other Rapcord users.
Status: this feature is described by the project but not yet verified in a published build. Check the release notes of your version.
Install a plugin
- Open the folder
%AppData%\Rapcord\plugins. - Place a file ending in
.plugin.jsthere — for exampleMyHelper.plugin.js. - Open Settings → Plugins → Custom Plugins and refresh (or restart Discord).
- Enable the plugin and restart Discord when prompted.
To remove it: disable it, close Discord, then delete that plugin file.
Class example
/**
* @name HelloRapcord
* @author Example
* @version 1.0.0
* @description Shows a message when the plugin starts.
*/
module.exports = class HelloRapcord {
start() {
console.log("Hello from Rapcord");
}
stop() {
console.log("HelloRapcord stopped");
}
};Factory example
module.exports = meta => ({
start() { console.log(`${meta.name} started`); },
stop() { console.log(`${meta.name} stopped`); }
});Compatibility
Rapcord supports a subset of BetterDiscord's single-file plugin format and BdApi, not every BetterDiscord API. Plugins that use unsupported APIs, private Discord internals, external packages, native modules or a different bundler may need changes or may not work.
Only load code from a source you trust. Plugins run JavaScript inside Discord and can access data and actions available to your client. Rapcord cannot guarantee third-party code is safe. Never paste your Discord token into a plugin.