Go to file
xBelladonna c63a84decd Add fallback to export when user has DMs disabled
Try to DM the user with the export file, and fall back to posting it in the channel if forbidden.
Uses reactions to confirm whether the user wants to have it posted in the channel.
2019-06-14 14:45:57 +02:00
.vscode Add system member list command 2019-03-08 14:48:33 +01:00
scripts Fix the backup scripts (cronjob didn't fire for a month...) 2018-11-07 21:16:34 +01:00
src Add fallback to export when user has DMs disabled 2019-06-14 14:45:57 +02:00
web web: reduce bundle size 2019-04-19 20:41:18 +02:00
.gitignore Add support for a configuration file. 2019-03-07 16:29:46 +01:00
docker-compose.yml Add unfinished website section 2019-04-19 18:08:58 +02:00
pluralkit.conf.example Add support for a configuration file. 2019-03-07 16:29:46 +01:00
README.md Add support for a configuration file. 2019-03-07 16:29:46 +01:00

PluralKit

PluralKit is a Discord bot meant for plural communities. It has features like message proxying through webhooks, switch tracking, system and member profiles, and more.

PluralKit has a Discord server for support and discussion: https://discord.gg/PczBt78

Requirements

Running the bot requires Python (specifically version 3.6) and PostgreSQL.

Configuration

Configuring the bot is done through a configuration file. An example of the configuration format can be seen in pluralkit.conf.example.

The following keys are available:

  • token: the Discord bot token to connect with
  • database_uri: the URI of the database to connect to (format: postgres://username:password@hostname:port/database_name)
  • log_channel (optional): a Discord channel ID the bot will post exception tracebacks in (make this private!)

The environment variables TOKEN and DATABASE_URI will override the configuration file values when present.

Running

Docker

Running PluralKit is pretty easy with Docker. The repository contains a docker-compose.yml file ready to use.

  • Clone this repository: git clone https://github.com/xSke/PluralKit
  • Create a pluralkit.conf file in the same directory as docker-compose.yml containing at least a token field
  • Build the bot: docker-compose build
  • Run the bot: docker-compose up

Manually

  • Clone this repository: git clone https://github.com/xSke/PluralKit
  • Create a virtualenv: virtualenv --python=python3.6 venv
  • Install dependencies: venv/bin/pip install -r requirements.txt
  • Run PluralKit with the config file: venv/bin/python src/bot_main.py
    • The bot optionally takes a parameter describing the location of the configuration file, defaulting to ./pluralkit.conf.

License

This project is under the Apache License, Version 2.0. It is available at the following link: https://www.apache.org/licenses/LICENSE-2.0