2026-06-30 15:07:25 -04:00
2026-05-29 08:41:27 -04:00
2026-06-30 15:07:25 -04:00
2026-06-30 13:22:22 -04:00
2026-06-30 15:07:25 -04:00
2026-05-29 08:43:48 -04:00
2026-06-29 18:04:58 -04:00
2026-05-29 08:43:48 -04:00
2026-06-03 14:27:29 -04:00
2026-05-29 08:43:48 -04:00
2026-06-03 20:17:25 -04:00
2026-06-29 18:04:58 -04:00
2026-05-29 08:43:48 -04:00
2026-06-13 18:22:50 -04:00

Bot Setup

Prerequisites

If you are on Windows Docker Compose is already included, you do not need to install it yourself. If you are on Linux/MacOS you can probably use your package manager.

Discord application setup

  1. Create a new application
  2. Under the "Installation" sidebar
    • For "Installation Contexts" select "Guild Install"
    • Set the "Install Link" dropdown to "None"
  3. Under the "OAuth2" sidebar
    • Add a redirect to http://localhost:8000/callback, or where ever your discord bot joiner will be listening
  4. Under the "Bot" sidebar
    • It is recommended to disable "Public Bot"
    • Enable "Server Members Intent"
    • Enable "Message Content Intent"
  5. Join the bot to the desired server using the following invite link, but replace the client id with your application's id: https://discord.com/oauth2/authorize?client_id=YOUR_APPLICATION_ID_HERE&scope=bot&permissions=395271335063

Configuration

  1. Copy the .env.sample file and rename it to .env
  2. Enter your bot's token (found on the Bot page of the application setup)
  3. Enter your application's client secret (found on the OAuth2 page of the application setup)
  4. Enter your bot's client id (application id, found on the General Information page of the application setup)
  5. Enter your discord guild (server) id
  6. Enter your discord joiner link secret (found in e621ng's docker-compose.yml file, or other environment file, it's passed as DANBOORU_DISCORD_SECRET. It defaults to super_secret_for_url_discord)
  7. e621/e926 base url can be the same in development environments, but should be your e621ng's domain. Do not add trailing slashes
  8. Enter the redis url of your e621ng instance. You may need to expose the port from docker manually in development enviornments. This can be done by adding a ports mapping to the redis service in e621ng's docker-compose.yml file. You should map 6379:6379
  9. Enter your desired port number. It is recommended to leave this at 8000, if you select anything different you will need to map the correct port in docker-compose.yml

Installing dependencies

Run npm i to install all node dependencies. This is required to start the bot.

Starting the bot

e621ng must be up for the bot to start properly and open the connection to the redis database.

In development

You can use npm run dev to run the typescript without compiling. This will watch for changes and restart when they happen.

If desired, you can also build the typescript using npm run build and then subsequently run it using npm run start

In docker

  1. Run docker compose build to build the image
  2. Run docker compose up to start the bot. Changes to any files, including .env will require a rebuild
S
Description
nxbat's fork of the funny e621 Discord bot.
Readme 785 KiB
Languages
TypeScript 96.7%
JavaScript 3%
HTML 0.2%
Dockerfile 0.1%