Skip to content

DRSchlaubi/mikbot

Repository files navigation

Mik Bot

GitHub Workflow Status Gradle Plugin Portal Latest Version Made with Kotlin

Open in Gitpod

A modular framework for building Discord bots in Kotlin using Kordex and Kord.

If you are here for mikmusic, click here and there.

If you are here for Votebot, click here.

Help translating this project

Übersetzungsstatus

Deployment

For a full explanation on how to deploy the bot yourself take a look at this

Requirements

Example Environment file

.env
ENVIRONMENT=PRODUCTION
SENTRY_TOKEN=<>
DISCORD_TOKEN=<>
MONGO_URL=mongodb://bot:bot@mongo
MONGO_DATABASE=bot_prod
LOG_LEVEL=DEBUG
BOT_OWNERS=416902379598774273
OWNER_GUILD=<>
UPDATE_PLUGINS=false #if you want to disable the auto updater

Starting the bot

Docker image from: https://github.com/DRSchlaubi/mikmusic/pkgs/container/mikmusic%2Fbot

  • Clone this repo
  • Run docker-compose up -d

Binary repositories

The bot has two repositories for binaries the binary-repo containing the bots binaries and the plugin-repo (index) normally you should not need to interact with these repositories directly.

For bot developers

JDK is required it can be obtained here (Recommended for Windows but works everywhere) and here (Recommended for Linux/Mac)

Please set the ENVIRONMENT env var to DEVELOPMENT whilst developing the bot. Also set a TEST_GUILD environment variable, for local commands

If you are making any changes to the bots official plugins (aka the plugins in this repo), please run the rebuild-plugin-dependency-list.sh script first, otherwise your plugins won't be loaded properly

For plugin developers

You can find a detailed guide on how to write plugins here

About

A modular framework for building Discord bots in Kotlin using Kordex and Kord

Resources

Stars

Watchers

Forks

Packages 3

 
 
 

Languages