Table of Contents
This is a Multi-Purpose Bot written in Python and built with Hikari and Lightbulb. A project that serves as a way for me to learn Python Programming. Feel free to explore it by yourself!
hikari
- An opinionated, static typed Discord microframework for Python3 and asyncio that supports Discord's V10 REST API and Gateway.Lightbulb
- A flexible command framework designed to extend Hikari.
To get the bot up and running, there are few steps that are need to be taken. Please follow these steps below carefully.
- You will need Python >= 3.8 so install it first!
- Install
screen
withsudo apt install screen
orsudo pacman -S screen
depending on your distro.
You will need to configure the bot with the .env
file. This is needed to store some configuration data that are needed by the bot.
-
As the bot uses few publicly available API (and Discord itself!), it needs a token to access them and you will have to provide them yourself, get the keys here:
-
You will also need a Lavalink nodes for music functionality. There are 2 options, either you self-host your own or you use the readily available Free Lavalink Nodes. Here are some recommendation:
-
Configure your
.env
as you please and put your token here.cd XJ9/ cp .env.example .env nano .env
Further configuration can also be found at
utils/const.py
-
Clone the repository
git clone https://github.com/kamfretoz/XJ9.git cd XJ9/
-
Create a Virtual Enviroment and activate it
python3 -m venv .venv source .venv/bin/activate
-
Follow the steps from Prerequisites
-
Install the required dependencies
python3 -m pip install -r requirements.txt
-
Run the bot
chmod +x run.sh ./run.sh
There are few notes in regards to run the bot:
- If you'd like to run the bot (Or when you want to restart it), you will have to re-activate the Virtual Environment if you haven't done so:
source .venv/bin/activate ./run.sh
- After you have successfully run the bot, you will have to Minimize the "screen" to let the bot run in the background.
- Press
CTRL + A, D
to Minimize the screen - Type in
screen -r bot
to restore the screen
- Press