On this page
JavaScript API
require()
Whitelisted Node.js modules available in BDJS scripts.
require(moduleId) loads sandbox-approved modules.
Allowed modules
| Module | Purpose |
|---|---|
canvas |
Image drawing (node-canvas) |
@discordjs/voice |
Voice connections |
crypto / node:crypto |
Cryptographic utilities |
util / node:util |
Node utilities |
url / node:url |
URL parsing |
querystring / node:querystring |
Query string helpers |
discord.js |
Builders only — Client is denied |
Examples
const { EmbedBuilder } = require('discord.js');
const crypto = require('crypto');
const { createCanvas } = require('canvas');
Module reference
| Module | Documentation |
|---|---|
discord.js |
discord.js builders |
canvas |
canvas |
@discordjs/voice |
voice |
crypto |
randomBytes, randomUUID, randomInt, createHash, createHmac, timingSafeEqual |
util |
inspect, format, formatWithOptions, types.is* predicates |
url |
URL, URLSearchParams |
querystring |
parse, stringify |
crypto example
const crypto = require('crypto');
const id = crypto.randomUUID();
const hash = crypto.createHash('sha256').update('data').digest('hex');
See sandbox for the full whitelist and restrictions.