Warning
This bot is still a work in progress and issues are expected. If you self-host our bot please join our support server here for announcements and support.
Tux is an all-in-one Discord bot originally designed for the All Things Linux Discord server.
It is designed to provide a variety of features to the server, including moderation, support, utility, and various fun commands.
- Python 3.13+ alongside the
discord.py
library - Poetry for dependency management
- Docker and Docker Compose for optional containerized environments
- Strict typing with
pyright
and type hints - Type safe ORM using
prisma
- Linting and formatting via
ruff
- Custom CLI via
click
andpoetry
scripts - Rich logging with
loguru
- Exception handling with
sentry-sdk
- Request handling with
httpx
- Custom dynamic environment management with
python-dotenv
- Asynchronous codebase
- Hybrid command system with both slash commands and traditional commands
- Automatic cog loading system
- Hot-reloading for local development changes
- Branded embeds and messages
- Robust error handling
- Activity rotation
- Custom help command
- Configuration system (
config/settings.yml.example
) - Dynamic role-based (access level) permission system
- Python 3.13+
- Poetry
- A PostgreSQL database (e.g. via Supabase or local installation)
- Optional: Docker & Docker Compose
-
Clone the repository:
git clone https://github.com/allthingslinux/tux && cd tux
-
Follow the Developer Guide:
For detailed instructions on setting up:
- your environment (local or Docker)
- installing dependencies
- configuring
.env
andsettings.yml
- managing the database
- running the bot
- using hot-reloading
- linting/formatting
- understanding the
tux
CLI commands
Please refer to the DEVELOPER.md guide
Any documentation found in the
docs
directory is currently outdated and will be updated soon.
This project is licensed under the GNU General Public License v3.0.
See LICENSE for details.
Made with Repobeats.
Made with contrib.rocks.