SN
Snowflake6413/kudosgiver
A Slack bot dedicated on giving kudos to your coworkers (or Hack Clubbers!)
KudosGiver
A Slack bot dedicated on giving kudos to your coworkers (or Hack Clubbers!).
Features
You can give kudos to your friends! Check stats and give back kudos to your friends!
Commands
- /give-kudos (Give kudos to your friends!)
- /opt-in (Opt-in of the kudos system)
- /opt-out (Opt-out of the kudos system)
- /my-kudos (Check your stats)
- /kudos-help (Check what commands are available. hint hint: they are listed above)
Prerequisites
Before you run this bot, you will need to get/install some things first.
- Python 3.13 (uuuuuuuuh.....)
- Supabase Account and DB
- A Slack bot already made
- OpenAI account (or Hack Club AI account) for moderation
Supabase Setup
Run these commands at your Supabase's project SQL editor.
- User Agreements table
CREATE TABLE user_agreements (
user_id TEXT PRIMARY KEY,
created_at TIMESTAMP WITH TIME ZONE DEFAULT timezone('utc'::text, now()) NOT NULL
);- Kudos Collection table
CREATE TABLE collect_kudos (
id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
sender_id TEXT NOT NULL,
recipient_id TEXT NOT NULL,
reason TEXT,
created_at TIMESTAMP WITH TIME ZONE DEFAULT timezone('utc'::text, now()) NOT NULL
);- Opt-Out list table
CREATE TABLE kudos_opt_out (
user_id TEXT PRIMARY KEY,
created_at TIMESTAMP WITH TIME ZONE DEFAULT timezone('utc'::text, now()) NOT NULL
);Quick Start
- Clone this repo and cd
git clone https://github.com/Snowflake6413/kudosgiver && cd kudosgiver- Copy .env file & fill it out
cp .env.example .env- Install dependencies
pip install .uv sync- Run the bot
python main.pyLICENSE
This repo is licensed under the MIT license. See LICENSE for more details.
