Skip to content

taichikuji/Ui-Py

Repository files navigation

Ui-Py

Who is Ui?

Ui is a bot written in Python, inspired by the character Ui Hirasawa from the K-On! show.


Why Python?

Because this is a rewrite and retry at writing best practices code in Python, keeping modularity as it was with my previous projects.

How do I make it work?

Check our setup guide in the wiki

To deploy, you have the following options:

  1. Using Docker-Compose
    Pass the variable into your docker-compose.yml file or export it:

    export TOKEN='TOKEN'

    Afterwards, deploy easily with:

    ./deploy-dc.sh
  2. Using Docker Build and Run
    Build the image:

    docker build -t ui:latest .

    Run the container with the TOKEN environment variable:

    docker run -e TOKEN="TOKEN" ui:latest

Note: If you plan on also using a Cog / Module that requires an additional API Token, check the wiki's specific entry for additional token requirements here: Setting environment variables

3. Using ghcr.io

You can now deploy using GitHub Packages without building the Dockerfile yourself!

Simply pull the image with the following command:

docker pull ghcr.io/taichikuji/ui-py:latest

This image can even be used in your Kubernetes cluster!

We don't have a Kubernetes deployment YAML at the moment, but one may be provided in the future.

Auto-Updater

To enable automatic updates, uncomment the updater service and the labels section in docker-compose.yml. You can change the update frequency by modifying the CRON_SCHEDULE environment variable (default: 0 0 * * * for daily checks).

Contributing

The project follows a modular architecture, making it easy to add new features. New functionality can be added by creating new Python files in the appropriate directories under functions/.

We welcome contributions from the community! When contributing, GitHub will automatically provide:

  • Bug report template when reporting bugs
  • Feature request template when suggesting features
  • Pull request template when submitting code changes

For detailed contribution guidelines, see our contribution guide. For detailed project documentation, visit our wiki.

Uses:

Dependencies

Packages

 
 
 

Contributors 5