## 🧪 Installation ### Download and install dependencies Clone the repo ```sh git clone https://git.waifuism.life/waifu/kemoverse.git cd kemoverse ``` Setup a virtual environment (Optional, recommended) ```sh python3 -m venv venv source venv/bin/activate ``` Install project dependencies via pip ```sh python3 -m pip install -r requirements.txt ``` ### Setup config file A sample config file is included with the project as a template: `example_config.ini` Create a copy of this file and replace its' values with your own. Consult the template for more information about individual config values and their meaning. Config files are environment-specific. Use `config_dev.ini` for development and `config_prod.ini` for production. Switch between environments using the `KEMOVERSE_ENV` environment variable. ```sh cp example_config.ini config_dev.ini # Edit config_dev.ini ``` ### Setup database To set up the database, run: ```sh KEMOVERSE_ENV=dev python3 setup_db.py ``` ### Run the bot ```sh KEMOVERSE_ENV=dev ./startup.sh ``` If all goes well, you should now be able to interact with the bot. ### Running in production To run the the in a production environment, use `KEMOVERSE_ENV=prod`. You will also need to create a `config_prod.ini` file and run the database setup step again if pointing prod to a different database. (you are pointing dev and prod to different databases, right? 🤨) ### Updating To update the bot, first pull new changes from upstream: ```sh git pull ``` Then run any database migrations. We recommend testing in dev beforehand to make sure nothing breaks in the update process. **Always backup your prod database before running any migrations!** ```sh # Backup database file cp gacha_game_dev.db gacha_game_dev.db.bak # Run migrations KEMOVERSE_ENV=dev python3 setup_db.py ```