Skip to content

KanbanCord is a Discord bot that brings Kanban boards to your server, enabling efficient task management and seamless team collaboration.

License

Notifications You must be signed in to change notification settings

j4asper/KanbanCord

Repository files navigation

KanbanCord

A simple Kanban board, but on Discord. The idea came from seansylee who made kanban-board-bot which is no longer maintained.

Publish Docker Image

Invite Bot

Example

Table of Contents

What is a Kanban Board

A Kanban board is a visual tool used to organize tasks and workflows. It typically consists of columns representing different stages of a process (e.g., "To Do," "In Progress," "Done"). Tasks are represented as cards that can be moved between columns as they progress. The KanbanCord Discord Bot brings this concept to Discord, allowing users to create and manage Kanban boards directly within their server for efficient task management and team collaboration.

Setup

Docker

Image

Docker image for KanbanCord is available on the docker hub here: https://hub.docker.com/r/jazper/kanbancord

Variables

These variables are Environment variables

Variable Description Required Default value
TOKEN Your discord application token (bot token). Yes None
MONGODB_CONNECTION_STRING MongoDB Connection String eg. mongodb://localhost:27017. Yes None
MONGODB_DATABASE_NAME MongoDB Database Name, if you want to change it from the default value. No KanbanCord
SUPPORT_INVITE Support discord server invite link. Not needed when self hosting. No None

Database

A MongoDB is required for this bot to run. A Docker image is available here.

KanbanCord will automatically create the required collections on startup, if they are missing.

Collection Name
Tasks
Settings

Docker Compose

A docker-compose file is available here: docker-compose.yml. This will setup the bot and a MongoDB database, the only thing you have to do, is to update the bot token.

Build from source

You will need to clone the repository first:

git clone https://github.com/j4asper/KanbanCord

Then you need to build the docker image, you need to be in the same directory as the Dockerfile:

docker build -t kanbancord .

Now you can run the bot, and add the required environment variables:

docker run -d -e TOKEN=your-bot-token -e MONGODB_CONNECTION_STRING=your-mongodb-connection-string kanbancord

Commands

Commands with a star (*) after the name require the user to have the Manage Messages permission on the Discord server.

You can also customize the accessibility of the commands in your server settings. To do so, go to Server Settings > Integrations > KanbanCord. Here, you can choose specific commands and restrict them to certain roles or channels as needed.

General Commands

  • /board
    Displays the Kanban board with all tasks.

  • /archive
    Displays all archived tasks.

  • /repository
    Get the repository URL and additional information about the bot.

  • /stats
    Displays bot statistics (e.g., task count, active users, etc.).

Task Management

  • /clear *
    Clears the Kanban board completely, archiving all current tasks.

  • /reset *
    Resets the Kanban board, deleting all current and archived tasks.

  • /task add *
    Add a new task to the backlog.

  • /task edit *
    Edit a task's title and/or description.

  • /task delete *
    Completely deletes a task, bypassing the archive and making it unrecoverable.

  • /task view
    View detailed information about a task, including description, author, and comments.

  • /task start *
    Move a task from the Backlog to In-Progress.

  • /task complete *
    Move a task from In-Progress to Completed.

  • /task archive *
    Archive a task and move it to the archived tasks list.

  • /task move *
    Move a task between columns (e.g., Backlog, In-Progress, Completed).

  • /task assign *
    Assign a task to a specific user.

  • /task me *
    View all tasks assigned to you.

  • /task user
    View all tasks assigned to a specified user.

  • /task priority *
    Set or adjust the priority level of a task.

  • /task comment *
    Add a comment to a task.