/botsu

Discord bot for immersion logging

Primary LanguageGoGNU Affero General Public License v3.0AGPL-3.0

Botsu Go Go Report Card

Botsu is a Discord bot for logging time spent on immersion activities in Japanese. It is the successor to AnotherImmersionBot, which itself is an inspiration of TheMoeWay's ImmersionBot.

Requirements

  • PostgreSQL 15
  • Go 1.21 (for running from source)
  • Docker (for running from Docker image)

Install

To install the latest release from the terminal, use:

curl -L https://github.com/xoltia/botsu/releases/latest/download/botsu-linux-amd64 -o ~/.local/bin/botsu
chmod a+rx ~/.local/bin/botsu

replacing ~/.local/bin with your preferred install location.

To install from source, use:

go install github.com/xoltia/botsu/cmd/botsu@latest

which will install to your GOBIN (~/go/bin by default).

Basic Setup

  1. Create a Discord bot account and invite it to your server.
  2. Create a new PostgreSQL database, for example botsu.
  3. Create a config.toml file in your working directory with the following contents:
token = "your bot token"
# This requires the privileged members intent, which can be enabled in the Discord developer portal.
use_members_intent = true

[database]
user = "your database user"
password = "your database password"
host = "your database host"
port = 5432
database = "botsu"
  1. Run botsu from the working directory.