FoundryCord empowers Discord server administrators with a powerful suite of tools, combining a versatile Discord bot with an intuitive web interface. Visually design and deploy complex server structures, create custom operational dashboards, and streamline your server management all in one place. Built with Python and Docker for robust, extensible control.
- Visual Guild Designer: Envisioned to allow intuitive design, saving, and deployment of complete Discord server layouts (categories, channels, permissions) using templates. The goal is a tool perfect for quickly setting up new servers or standardizing existing ones.
[SCREENSHOT: Guild Designer Interface - Mockup/Early Preview if available]
- Customizable Web Dashboards: Planned to enable building and displaying real-time dashboards with a drag-and-drop interface for monitoring server activity, bot statistics, or any relevant community data. (See Dashboard Builder concept)
- Integrated Discord Bot: Provides access to core management functions and custom commands directly within Discord (core functionality developing).
- Robust Role & Permission System: Designed for fine-grained control over feature access in the web interface and via bot commands (foundational elements in place, evolving).
- Modular & Extensible: Architected with a clear separation of concerns to facilitate the straightforward addition of new capabilities like advanced monitoring, custom game server integrations, or specialized bot commands.
- (Planned Future Feature) Music Bot Integration: Aiming to allow playlist management and audio streaming to voice channels.
- Docker & Docker Compose
- Discord Bot Token
- Python 3.11+ (Check
pyproject.toml
)
-
Prepare Docker Environment:
- Navigate to the
docker/
directory. - Copy the example environment file:
cp .env.example .env
- Crucial: Edit the
.env
file. You must provide yourDISCORD_BOT_TOKEN
. You should also set strong, unique passwords forPOSTGRES_PASSWORD
andAPP_DB_PASSWORD
. Consult the main documentation for details on all available environment variables and their impact.
- Navigate to the
-
Start Services:
- From the project root directory, run:
docker compose up -d --build
- From the project root directory, run:
The web interface should become available at http://localhost:8000
(or the configured port).
This project includes comprehensive documentation within the /docs
directory. Key starting points include:
- Architecture Overview:
docs/3_developer_guides/02_architecture/overview.md
- Understand the high-level system design. - Backend & Frontend Design: See respective files in
docs/3_developer_guides/02_architecture/
for details on backend/frontend structure. - Database Schema:
docs/3_developer_guides/02_architecture/database_schema.md
- Overview of the database structure. - API Specification:
docs/3_developer_guides/02_architecture/api_specification.md
- Details about the REST API. - Coding Conventions:
docs/3_developer_guides/01_getting_started/coding_conventions.md
- Standards for writing code in this project. - Architectural Decisions:
docs/4_project_management/adr/README.md
- Log of important design choices. - Feature Documentation: Specific features are detailed in
docs/2_user_guides/
(e.g., Guild Designer, State Monitor). - Project Management: Roadmap, TODOs, etc., can be found in
docs/4_project_management/
. - Security: Refer to the security policy within the documentation.
- Configuration: Detailed environment variable descriptions are part of the architecture documentation.
Contributions are welcome! Please follow these general steps:
- Fork the repository.
- Create a new branch for your feature or bugfix.
- Make your changes, adhering to the Coding Conventions.
- Ensure necessary documentation is updated.
- Submit a pull request.
Please report security vulnerabilities responsibly. Refer to the security policy in the documentation for details.
Please read our disclaimer for important information about using this software.