peacecord
v1.0.3
Published
Better-DiscordJs: kernel class bundling Sessions, REST logs, discordjs-security adapter, and hook script registry for Discord bots.
Maintainers
Readme
@wrldent/better-discordjs
A production-ready kernel for Discord bot projects.
Included modules:
- Sessions: create/update/delete bot profile sessions (JSON persistence)
- REST Logs: structured REST request logging with redaction
- discordjs-security: optional adapter wrapper (loads only if installed)
- scripts: hook registry for
*-hook.jsand*-hook.min.js
Install
npm i @wrldent/better-discordjsQuick start (kernel)
const { BetterDiscordJs } = require("@wrldent/better-discordjs");
const bdj = new BetterDiscordJs({
sessions: { storagePath: "./.bdj/sessions.json" },
restLogs: { logsDir: "./.bdj/rest-logs", redactKeys: ["token", "authorization"] },
scripts: { scriptsDir: "./scripts" }
});
(async () => {
await bdj.init(); // scans hooks (safe if scripts dir missing)
await bdj.sessions.create("bot-1", { id: "123", name: "MyBot", token: "SECRET" });
await bdj.rest.logRequest({
label: "login",
method: "POST",
url: "https://discord.com/api/v10/oauth2/token",
headers: { authorization: "Bot SECRET" },
body: { token: "SECRET" },
status: 200,
durationMs: 120
});
await bdj.hooks.runHooks("login", { botId: "bot-1" });
})();Hook rules
*-hook.min.js→ registered as a datafile (not executed)*-hook.js→ registered as executable (exports a function or{ run() })
Examples:
login-hook.js=> hook nameloginguildCreate-hook.min.js=> hook nameguildCreate
Exports
const pkg = require("@wrldent/better-discordjs");
pkg.BetterDiscordJs // kernel
pkg.Sessions // module group
pkg.RestLogs // module group
pkg.Scripts // module group
pkg.Security // module groupPublish notes
This package is scoped and configured for public publishing:
name:@wrldent/better-discordjspublishConfig.access:public
Publish:
npm login
npm publish --access public