This guide will show you how to setup your own Discord bot list, using the DBots project for development purposes.


Deployment to Heroku can be done in a few clicks. Refer to the .env setup for an explanation of the different environment variables. This will deploy the actual DBots API repo. You can change the URL to match your own.


The API (application programming interface) project is used for managing data for the Discord bot list. It is used as a foundation for the Website project.
GitHub - DBots-co/API
The Website project is used for customizing the actual website. The website uses Angular, which is a front-end framework that makes the website seem fast and responsive.
GitHub - DBots-co/Website: Discord style bot list. Made with Angular + TypeScript. Approved by Jesus 🙏 (from Fiverr).


MongoDB Community Download
MongoDB Community Server

API Setup

Clone the Repository

The API requires cloning, which basically downloads the project from GitHub. This can be done with the Git CLI.
git clone
cd api
Node modules are not downloaded with the cloned project and need to be installed manually.

Install Modules

Node modules need to be installed, specified in package.json, and package-lock.json. Make sure the terminal is at the root director of the project. All you need to do is type a simple command and it will all be done for you.
npm i

Configure Environment Variables

Create a.envfile in the root project directory. This file is used to securely store private data. See the link below for the up to date template for the .env file. **See the link below to setup the environment variables.

Start the API

If everything is setup correctly, you can start the project with this command.
npm start
Make sure the mongod process is running. The database needs to be online for the app to fully function.
By default the API runs on port 3000. You can confirm it is online by connecting to http://localhost:3000, in your browser URL bar.

Website Setup

After the API is setup, the website follows a very similar setup, but with a different project URL.
git clone
cd website
npm i
npm start
You may also need the Angular CLI to be globally installed to serve the website. This can be done with npm i -g @angular/cli

Enable Bot Intents

Enable both intents in the Discord Developer Portal, to allow bots to appear on the website, and enable all functionality.
Presence Intent - used to show status of bot user on website (i.e. online / offline etc.) Server Members Intent - used to cache bot members in server to display them on the website.

Set Redirect URIs

One last thing... Redirect URIs are used for allowing Discord OAuth2 to function correctly. These can also be found in the Discord Developer Portal.
Redirect URIs for Local Development
Redirect URIs that Uses
Last modified 11mo ago