Skip to content
/ ExampleBot Public template

A simple Discord bot using Discord.js v14 and ES6 modules. Feel free to clone it and build your own bot on top of it or just understand the library a bit better!

License

Notifications You must be signed in to change notification settings

LinusPotocnik/ExampleBot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

83 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Discord.js v14 Example Bot

Extra info

Table of Contents

Next steps

If you don't know what to do next, here are some ideas:

  • Use the discord.js documentation to implement things like buttons, modals (input forms), context menu commands, select menus and more!
  • Use the Discord API to implement multi-language support that fetches the language from the user's Discord settings
  • Understand the basics of databases (e.g., SQL, MongoDB, etc.) to make data persistent.
    • For example, you can store your data in a SQLite database using the better-sqlite3 package
  • Dockerize the project so you can easily deploy it and keep it up to date
    • Implement a workflow that:
      • Builds a new Docker image (for multiple platforms?) when a PR gets pushed to a specific branch
      • Pushes said images to Dockerhub
      • Checks for new images on Dockerhub and restarts the bot if a new image is available using Watchtower
      • Use Docker volumes to store the database and other data
  • Implement a web dashboard to manage your bot using discord.js's OAuth2 module
  • Implement a logging system that logs all the bot's actions to a file or a database

Install

Before you follow this, make sure you use NodeJS version 16.9.0 or higher and npm version 8 or higher. You can check your installed versions of both by running npm version.

  • git clone https://github.com/LinusPotocnik/ExampleBot.git
  • cd ExampleBot
  • npm install
  • echo "BOT_TOKEN=YOUR_BOT_TOKEN" >> .env
  • node .

Finding your Bot Token

  • Head to the Discord developer portal
  • Click on New Application (assuming you don't already have one), give your bot a name and click on Create
  • On the left side, click on Bot
  • Now, you should see the Build-A-Bot section. In the Token section of this, click on Reset Token and Copy the newly generated token.

NOTE: Do NOT share this token with anyone!

Finding your Bot ID

Make sure that you share a server with the bot you created. If this is not the case, go to the invite section.

  • Go to the Discord developer portal and click on your application (bot)
  • On the left side, click on OAuth2 -> Client information
  • Under Client ID, click Copy

Inviting your Bot

Make sure that you have already created a bot application. If not, follow the steps under Finding the Bot Token.

  • Go to the Discord developer portal and click on your application (bot)
  • On the left side, click on OAuth2 -> OAuth2 URL Generator
  • Select bot
  • In the Bot Permissions section, select Administrator
  • Scroll down to the bottom of the page and click on Copy
  • Now paste the copied URL into a new tab and add the bot to your server

Install NodeJS and npm on Windows and macOS

  • Go to the NodeJS Website and download the current version
  • Install the downloaded file. This includes npm

Install NodeJS and npm on Linux

  • Update Linux: sudo apt-get update -y
  • Download Node.js with curl: curl -fsSL https://deb.nodesource.com/setup_20.x | sudo bash - (change the 20 to a different version if you wish to install a version of node that is not v20/LTS)
  • Install Node.js: sudo apt-get install -y nodejs
  • Verify installation: node -v

Update NodeJS

If you have an older version of NodeJS you can update it. If you are on a Windows machine, use all commands without a sudo and execute the terminal with administrator permissions.

  • npm cache clean -f
  • sudo npm install -g n
  • sudo n latest

Update npm

macOS/Linux

  • sudo npm install -g npm@latest

Windows