Getting Started with Discord.js Bots'

2025-11-04

Discord Bot Basics: Getting Started with Your Own Bot

Creating your own Discord bot isn’t as complicated as it might sound. With a basic understanding of JavaScript and the Discord API, you can build a bot that greets users, responds to commands, or even moderates your server automatically.


🧠 What Is a Discord Bot?

A Discord bot is an automated program that interacts with users through the Discord API.
Bots can perform all kinds of tasks — from replying to messages, playing music, sending memes, to managing your community.


🧰 What You’ll Need

Before getting started, make sure you have:


⚙️ Step 1: Create a Discord Application

  1. Go to the Discord Developer Portal
  2. Click “New Application” and give your bot a name
  3. Go to the “Bot” tab → click “Add Bot”
  4. Copy your Bot Token — it works like a password, so keep it secret!

💻 Step 2: Set Up Your Project

Open your terminal and run:

mkdir discord-bot
cd discord-bot
npm init -y
npm install discord.js

Then, create a file named index.js:

// Import the discord.js library
const { Client, GatewayIntentBits } = require('discord.js');
const client = new Client({
  intents: [GatewayIntentBits.Guilds, GatewayIntentBits.GuildMessages, GatewayIntentBits.MessageContent],
});

// Event: when the bot is ready
client.once('ready', () => {
  console.log(`Logged in as ${client.user.tag}`);
});

// Event: when a message is created
client.on('messageCreate', (message) => {
  if (message.content === '!ping') {
    message.reply('Pong! 🏓');
  }
});

// Log in using your bot token
client.login('YOUR_BOT_TOKEN');

🚀 Step 3: Run the Bot

In your terminal, start the bot with:

node index.js

If everything works, you’ll see something like this:

Logged in as MyBot#1234

Now go to your server and type !ping — your bot should reply with “Pong! 🏓” 🎉


🔐 Security Tips

  • Never share your bot token publicly.
  • Store your token in a .env file and load it using the dotenv package.

Example:

npm install dotenv
require('dotenv').config();
client.login(process.env.TOKEN);

✨ Next Steps

  • Once you understand the basics, you can move on to more advanced features like:
  • Command and event handlers
  • Embed messages and buttons
  • Slash commands (Discord’s new command system)
  • Hosting your bot on Render, Railway, or Vercel

🔗 Useful Resources

  • Discord.js Documentation
  • Discord Developer Portal
  • Discord.js Guide (GitHub)