Darkcord is a Node.js module to easily interact with Discord API.
Node.js 16.9.0 or newer is required to installation.
npm install darkcord
yarn add darkcord
pnpm add darkcord
import { Client, Constants } from "darkcord";
const GatewayIntentBits = Constants.GatewayIntentBits;
const ClientIntents =
GatewayIntentBits.Guilds |
GatewayIntentBits.GuildMessage |
GatewayIntentBits.MessageContent;
const client = new Client("token", {
gateway: {
intents: ClientIntents,
},
});
client.on("ready", () => {
console.log(`Connected to Discord Gateway`);
});
client.on("interactionCreate", async (interaction) => {
if (interaction.isCommand()) {
await interaction.reply({ content: "Pong!" });
}
});
client.connect();
import { InteractionClient } from "darkcord";
const client = new InteractionClient("public key", {
rest: {
token: "token",
},
webserver: {
port: 8080,
},
});
client.on("connect", () => {
console.log("Listening on port 8080");
});
client.on("interactionCreate", async (interaction) => {
if (interaction.isCommand()) {
await interaction.reply({ content: "Pong!" });
}
});
client.connect();
npm install shoukaku
yarn add shoukaku
pnpm add shoukaku
npm install kazagumo
yarn add kazagumo
pnpm add kazagumo
npm install kazagumo-spotify
yarn add kazagumo-spotify
pnpm add kazagumo-spotify
import { Client } from "darkcord";
import { Lava } from "@darkcord/lava";
const Nodes = [
{
name: "Node 1",
url: "localhost:2333",
auth: "youshallnotpass",
secure: false,
},
];
const voicePlugin = Lava({
nodes: Nodes,
defaultSearchEngine: "youtube",
});
const client = new Client("token", {
gateway: {
intents: YOUR_INTENTS,
},
plugins: [voicePlugin],
});
client.lava.lavalink.on("ready", (node) =>
console.log(`Node ${node} is Ready`),
);
client.lava.on("playerStart", (player) => {
client.channels.cache.get(player.textId).createMessage({
content: `Now playing **${track.title}** by **${track.author}**`,
});
});
client.on("ready", () => console.log("Client is Ready"));
client.connect();