countdown-bot

A Discord bot that runs countdown games and generates analytics
git clone https://git.ashermorgan.net/countdown-bot/
Log | Files | Refs | README

README.md (1428B)


      1 # countdown-bot
      2 A Discord bot that facilitates countdowns and generates detailed countdown
      3 analytics
      4 
      5 ## Setup
      6 1. Go to the [Discord Developer Portal](https://discord.com/developers/) and
      7    create an application and a bot
      8 
      9 2. Setup a database and run the bot (see below)
     10 
     11 3. Add the bot to your server:
     12    `https://discordapp.com/oauth2/authorize?client_id=BOT_ID_HERE&scope=bot&permissions=101440`
     13 
     14 4. Send `!help` to the bot to get instructions for getting started
     15 
     16 ### Running with Docker
     17 Create an `.env` file and add the following variables:
     18 
     19 ```
     20 BOT_TOKEN=...
     21 DB_PASSWORD=...
     22 ```
     23 
     24 Start the docker containers:
     25 
     26 ```
     27 docker compose up
     28 ```
     29 
     30 ### Running for development
     31 Install the Python dependencies
     32 
     33 ```
     34 pip install -r requirements.txt
     35 ```
     36 
     37 Create an `.env` file and add the following variables:
     38 
     39 ```
     40 BOT_TOKEN=...
     41 PREFIX=!
     42 DATABASE=postgresql://...
     43 LOG_FILE=log.txt
     44 LOG_LEVEL=INFO
     45 ```
     46 
     47 Setup a PostgreSQL database and initialize it:
     48 
     49 ```
     50 psql 'postgresql://...' -f models/ddl.sql -f models/dml-utils.sql \
     51     -f models/dml-core.sql -f models/dml-analytics.sql
     52 ```
     53 
     54 Run the bot
     55 
     56 ```
     57 python -m countdown_bot
     58 ```
     59 
     60 ## Screenshots
     61 ![Help information](screenshots/help.png)
     62 
     63 ![Countdown channel moderation](screenshots/countdown.png)
     64 
     65 ![Progress analytics](screenshots/progress.png)
     66 
     67 ![Contributors analytics](screenshots/contributors.png)
     68 
     69 ![Heatmap analytics](screenshots/heatmap.png)
     70 
     71 ![ETA analytics](screenshots/eta.png)