mirror of
https://github.com/allthingslinux/tux.git
synced 2024-10-02 16:43:12 +00:00
ad919afc14
docs(CLI.md): provide instructions for installation, development, Docker, linting, formatting, and Git commands docs(COG_STANDARDS.md): outline standards for creating or updating cogs for the Tux Discord bot docs(EMBED_STANDARDS.md): establish standards and best practices for creating and utilizing Discord embeds docs: add EMBED_USAGE.md, EVENT_STANDARDS.md, PROJECT_STRUCTURE.md to provide detailed guidelines and project structure information for contributors feat(README.md): add dynamic permission system to feature list to reflect new functionality docs(README.md): update installation steps to include running the bot docs(PERMISSIONS.md): change permission level 0 from 'Everyone' to 'Member' for clarity chore(docs/resources): remove unused image.png file from resources
4.8 KiB
4.8 KiB
Project Structure
This document outlines the structure of the Discord bot project to help you navigate and understand where different components are located.
Root Directory
- .git/ - Contains Git configuration and history.
- .github/ - Contains GitHub related files including workflows for CI/CD.
- workflows/
- dependency-review.yml - Workflow for dependency review.
- linting.yml - Workflow for linting the codebase.
- workflows/
- .gitignore - Specifies intentionally untracked files to ignore.
- .mise.toml - Configuration file for Mise, a tool to manage tooling environment.
- .pre-commit-config.yaml - Configuration for pre-commit hooks.
- CODE_OF_CONDUCT.md - The code of conduct for contributors.
- LICENSE.md - Project license information.
- README.md - A brief description of the project and how to set it up.
Configuration Files
- config/
- settings.json - JSON file containing configuration parameters.
Documentation
- docs/ - Contains documentation files for the project.
- CLI.md - CLI usage guidelines.
- COG_STANDARDS.md - Standards for cog development.
- EMBED_STANDARDS.md - Standards for embed styles.
- EMBED_USAGE.md - Guidelines on how to use embeds.
- EVENT_STANDARDS.md - Event handling standards.
- PROJECT_STRUCTURE.md - Overview of the project structure.
Example Files
- examples/ - Contains sample code and usage examples.
Dependency Management
- poetry.lock - Lock file for Poetry to ensure reproducible installs.
Database Schema
- prisma/
- database.db - SQLite database file.
- schema.prisma - Prisma schema for database modeling.
Python Project and Dependency Management
- pyproject.toml - Specifies project dependencies and configurations.
Test Files
- tests/ - Contains test scripts and testing resources.
Temporary Files
- tmp/ - Temporary files generated during runtime or testing.
Core Bot Functionality
- tux/
- cog_loader.py - Handles the loading of Cogs.
- cogs/ - Directory containing various categories of bot commands.
- admin/, guild/, logging/, misc/, moderation/, utility/ - Cogs organized by functionality.
- database/
- client.py - Database connection management.
- controllers/ - Database controllers for different entities.
- main.py - Entry point of the Discord bot.
- utils/ - Utility scripts and helper functions.
System Service Configuration
- tux.service - Systemd service unit file to run the bot as a service.
Docker Configuration
- docker-compose.yml - Docker Compose configuration file to manage container deployment.
tux
├─ .git
├─ .github
│ └─ workflows
│ ├─ dependency-review.yml
│ └─ linting.yml
├─ .gitignore
├─ .mise.toml
├─ .pre-commit-config.yaml
├─ CODE_OF_CONDUCT.md
├─ LICENSE.md
├─ README.md
├─ config
│ └─ settings.json
├─ docs
│ ├─ CLI.md
│ ├─ COG_STANDARDS.md
│ ├─ EMBED_STANDARDS.md
│ ├─ EMBED_USAGE.md
│ ├─ EVENT_STANDARDS.md
│ └─ resources
│ ├─ image.png
├─ examples
├─ poetry.lock
├─ prisma
│ ├─ database.db
│ └─ schema.prisma
├─ pyproject.toml
├─ tests
├─ tmp
├─ tux
│ ├─ cog_loader.py
│ ├─ cogs
│ │ ├─ admin
│ │ │ ├─ sync.py
│ │ ├─ error_handler.py
│ │ ├─ guild
│ │ │ └─ roles.py
│ │ ├─ logging
│ │ │ ├─ commands.py
│ │ │ ├─ guild.py
│ │ │ ├─ member.py
│ │ │ ├─ mod.py
│ │ │ └─ voice.py
│ │ ├─ misc
│ │ │ ├─ temp_vc.py
│ │ │ └─ tty_roles.py
│ │ ├─ moderation
│ │ │ ├─ ban.py
│ │ │ ├─ kick.py
│ │ │ ├─ purge.py
│ │ │ ├─ slowmode.py
│ │ │ ├─ unban.py
│ │ │ └─ warn.py
│ │ └─ utility
│ │ ├─ avatar.py
│ │ ├─ guide.py
│ │ ├─ info.py
│ │ ├─ membercount.py
│ │ ├─ ping.py
│ │ ├─ poll.py
│ │ ├─ report.py
│ │ ├─ rolecount.py
│ │ └─ tldr.py
│ ├─ database
│ │ ├─ client.py
│ │ └─ controllers
│ │ ├─ __init__.py
│ │ ├─ infractions.py
│ │ ├─ notes.py
│ │ ├─ reminders.py
│ │ ├─ roles.py
│ │ ├─ snippets.py
│ │ └─ users.py
│ ├─ main.py
│ └─ utils
│ ├─ activities.py
│ ├─ console.py
│ ├─ constants.py
│ ├─ embeds.py
│ ├─ functions.py
│ └─ sentry.py
├─ tux.service
├─ docker-compose.yml