#
Getting Started - TL;DR
This is the TL;DR version. If you wish for a long version with more explanations, please see this guide
#
Create App and Bot Account
- Go to the Discord.com Application Page
- Create a New Application, and give it a name
- Click Bot, Add Bot then finally click Yes, do it
- Visit
https://discord.com/oauth2/authorize?client_id=APP_ID&scope=bot
, replacing APP_ID with the Application ID from the app page, to add the bot to your server (or ask a server admin to do it for you). If you're wanting slash commands as well, add%20applications.commands
to the end of the URL above. - Copy your bot's Secret Token and keep it for later
#
Pre-requisite software
Depending on the operating system you're running the installation will be slightly different.
Once you have this all installed, create a folder for your project and install discord.js:
mkdir mybot
cd mybot
npm i discord.js
#
Example Code
The following is a simple ping/pong bot. Save as a text file (e.g. index.js
), replacing the string on the last line with the secret bot token you got earlier:
const { Client, Intents } = require("discord.js");
// Since discord.js exports an object by default, we can destructure it. Read up more here https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment
const client = new Client({
intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES]
});
client.on("ready", () => {
console.log("I am ready!");
});
client.on("messageCreate", (message) => {
if (message.content.startsWith("ping")) {
message.channel.send("pong!");
}
});
client.login("SuperSecretBotTokenHere");
#
Launching the bot
In your command prompt, from inside the folder where index.js
is located, launch it with:
node index.js
If no errors are shown, the bot should join the server(s) you added it to.
#
Resources
- Discord.js Documentation : For the love of all that is (un)holy, read the documentation. Yes, it will be alien at first if you are not used to "developer documentation" but it contains a whole lot of information about each and every feature of the API. Combine this with the examples above to see the API in context.
- An Idiot's Guide is another great channel with more material. York's guides are great, and he continues to update them.
- Evie.Codes on YouTube: If you prefer video to words, Evie's YouTube series (which is good, though no longer maintained with new videos!) gets you started with bots.
- An Idiot's Guide Official Server: The official server for An Idiot's Guide. Full of friendly helpful users!
- Discord.js Official Server: The official server has a number of competent people to help you, and the development team is there too!