US $19.97

Building a Discord Bot w/ discord.js, Typescript and Heroku

——   Created by David Armendariz

Learn how to code a production-ready bot by using the latest version of discord.js, Typescript and learn to deploy it

Share this course:

5h 39m
Lesson time
Skill level

More about this course

Welcome to this course! In this course you will learn how to code a production-ready bot with discord.js and the recommended package to build slash commands, which is the @discordjs/builders. The latter implements a design pattern called the "builder" pattern, which makes it easier to build objects of classes. We will also not waste time and deploy our bot to Heroku as soon as we can. This is always one of the first steps you wanna do and we'll do it with CD (continuous deployment) by connecting Heroku to our GitHub repo. Many tutorials out there show you how to code bots without a structure and deploy it to… Replit? In this course that's not the case! We'll learn many things that will help you be a better software developer in general. You'll not only learn to code a bot, you'll learn best practices like creating a bot for development and another one for production. We'll do it just as if we were going to build a web app!

  • Typescript
  • Reply to messages
  • Create slash commands
  • Create buttons and links
  • Create message collectors
  • Create embeds
  • Create reactions collectors
  • Create subcommands
  • Get information about a user and its roles
  • Add options to commands
  • Add simple tests
  • Deploy to Heroku and connect it to GitHub for CD
  • Etc...

The course project

You have an infinite set of possibilities after you learn all the concepts taught in this course. You can basically take any command from your favorite bot available on the internet and try to mimic it. The command that I want you to implement as the project is a kick/ban command. The requirements would be the following:

  • Create a slash command with a user option and a string option for the reason of the kick or ban
  • The business logic of the command should be to kick or ban the user and then post a message in some channel that user X was banned/kicked and the reason.

43 Lessons

3 mins
free preview
5 mins
Things You Should Know
free preview
3 mins
free preview
6 mins
5 mins
VSCode Extensions
2 mins
Github Code
6 mins
Create A Server And Bots
15 mins
Initial Configuration Part 1
16 mins
Initial Configuration Part 2
7 mins
Initial Configuration Part 3
3 mins
Initial Configuration Part 4
3 mins
Fixing the package versions
12 mins
Making The Bot Go Online
View more lessons +

About the instructor

David Armendariz

Hi! My name is David Armendáriz. I am from the beautiful country of Ecuador.

I studied mathematics at USFQ (Universidad San Francisco de Quito). However, …

Read more
This course is included in Arbington Premium
$15/month gets you access to every course. Start your 14 day trial today. ☝️

Class benefits

  • Certificate of Completion
  • 30 day satisfaction guarantee
  • 24/7 streaming access
  • Project included
  • Direct teacher access
  • 5h 39m of on-demand video
  • Have a coupon?
  • Checkout