Welcome to π bot, it is the will be an all-purpose bot for competative programming, github and other stuff.
NOTE- For now the github integration is at hold, mainly focus is on codeforces.
To know more about bot commands visit Command Docs
To test the bot join the Support Server. And head over to the #playground
Invite the bot to your server [NOTE- While uing the bot if you find any issue or bug please head over to the issue and create an new issue elaborating the issue]
[NOTE- The music cog is not yet setup in the hosted bot]
NOTE: To replicate this bot, you will need a bot token. Go get yours at https://discord.com/developers/ (If you need help with this step, feel free to ask for help in our Support Server.
For Database, It is implemented on MongoDB, created a cluster and a collection named server_config
- Clone this repo using
git clone
- cd into the bot folder.
- Add the token in a
.env
file in the project root as follows:
DISCORD_TOKEN=<your token>
DB_CLUSTER=<cluster name>
DB_NAME=<db name>
DB_UNAME=<user who has access to db's username>
DB_PSWRD=<DB_UNAME's password>
- Install the
pipenv
viapip install pipenv
an d then run:
pipenv install
[Optional] For having contest reminder command working locally, you will need a login in Google Cloud Platform and perform these steps:
- Get an Google Calander API
- Get the
credentials.json
fromAPIs and services -> Credentials
click on CREATE CREDENTIALS and follow required steps - Copy and paste
credentials.json
file to src folder
Before contributing, here is some information that might help your PR (Pull Request) get merged.
Requirements:
- git
- pip
- python
3.8.6
or higher
-
Fork and clone the repository with
git clone https://github.com/<your-username>/pi_bot
-
Get to the clone directory using the command
cd pi_bot
-
Copy the contents of the
.env.sample
file into a new file -.env
and add your DISCORD bot token in there. -
Now follow these steps
(Requires pipenv) - Install pipenv
- Runpipenv sync --dev
to install project dependencies and development dependencies
- Runpipenv run start
to run the bot.
- For downloading more libraries, usepipenv install <package-name>
- If you're adding any development-dependencies, use->pipenv install <package-name> --dev
\
Note: Make sure you have been assigned the issue to which you are making a PR. If you make PR before being assigned, It will be labeled invalid and closed without merging.
- Add a upstream link to main branch in your cloned repo
git remote add upstream https://github.com/pvcodes/pi_bot.git
- Keep your cloned repo upto date by pulling from upstream (this will also avoid any merge conflicts while committing new changes)
git pull upstream master
- Create your feature branch
git checkout -b <feature-name>
- Commit all the changes
git commit -am "Meaningful commit message"
- Push the changes for review
git push origin <branch-name>
- Create a PR from our repo on Github.
Submit an issue on GitHub and add as much information as you can about the bug, with screenshots of inputs to the bot and bot response if possible (if the issue is regarding bugs).
Note: For more detailed information about how to contribute, please refere to the CONTRIBUTING.md file.
- python 3
- discord(rewrite branch)
- python-dotenv
- requests
- wavelink