https://github.com/wizard-28/gdsc-bot
Discord bot for GDSC Technical Task Round-2
https://github.com/wizard-28/gdsc-bot
Last synced: 3 months ago
JSON representation
Discord bot for GDSC Technical Task Round-2
- Host: GitHub
- URL: https://github.com/wizard-28/gdsc-bot
- Owner: wizard-28
- Created: 2025-03-04T04:26:21.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2025-03-04T04:55:34.000Z (7 months ago)
- Last Synced: 2025-03-04T05:28:14.637Z (7 months ago)
- Homepage:
- Size: 2.93 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# GDSC Bot
## Features Implemented
- Respond to user messages in the Discord server using the Gemini API.
- Create, delete, and modify reminders for users in the Discord server. Users should
be able to set a reminder by sending a message with the time and date of the
reminder in a specific format.
- Users should be able to create Polls
- AI-powered Summaries – Users can ask the bot to summarize long messages.
- Custom Welcome Messages – The bot welcomes new members.
- Auto-Delete Expired Reminders – To keep the system clean.## Usage

Also there's a `summarize` context menu option to summarize long messages

## Running instructions
### If just inviting
Invite URL:
The bot maybe offline most of the time, as I'm not hosting it.
### Self Hosting
1. Create [your own bot app in discord](https://discord.com/developers/applications/)
2. Get [gemini api key](https://aistudio.google.com/apikey)
3. Add a `.env` file to the project root directory in this format```monospace
TOKEN=
GEMINI_API_KEY=
```4. Install [Poetry](https://python-poetry.org/) and [Python](https://www.python.org/)
5. Run the following commands```bash
git clone https://github.com/wizard-28/gdsc-bot.git
cd gdsc-botpoetry install
poetry run python -m gdsc_bot
```6. Enjoy the bot
## Implementation details
Detailed using docstrings and comments in the code.
Start from [**main**.py](src/gdsc_bot/__main__.py)
See [JOURNAL.md](/JOURNAL.md) for my development process.