Jaybot is a purpose-built Discord bot designed for community management and server integration. It features a sophisticated ranking system and real-time Minecraft server statistics, all built on a modern TypeScript stack.
Key Features
- Dynamic Ranking System: XP rewards for active members with a web-based React leaderboard and spam prevention.
- Minecraft Integration: Automatic updates for player counts and server status displayed directly in Discord channels.
- Community Automation: Reaction roles, automated suggestion voting systems, and rule-acceptance workflows.
- Modern Architecture: Built with TypeScript and the Bun runtime, fully containerized with Docker for easy deployment.
Technology Stack
- Backend: TypeScript, Discord.js, Express, Bun
- Frontend: React
- Database: MongoDB
- Infrastructure: Docker, ElvenOps CI/CD
Local Setup
Jaybot is designed to run in a Docker environment:
-
Prerequisites: Ensure you have Docker, Bun, and a MongoDB instance available.
-
Clone the Repository:
git clone https://github.com/Elvenide/jaybot.git cd jaybot -
Configuration: Rename
sample.envto.envand fill in your credentials:DISCORD_TOKEN=your_token MONGO_URI=your_mongodb_uri -
Run with Docker:
docker compose up -dTo rebuild after changes:
docker compose up --build -d