- πΎ Database - Dockerized Databases Enviroment for the Jasper Bot
- π€ Bot - The main Discord bot (Node.js)
- π Webserver - Spring Boot server providing web functionality
- π WebserverGo - Go-based webserver (remake of the Java SpringBoot webserver)
.
βββ apps/
β βββ bot/ # Discord bot application
| βββ databases/ # MongoDB and Redis Docker Containers
β βββ webserver/ # Spring Boot server
β βββ webserverGo/ # Go-based webserver (remake of the Java SpringBoot webserver)
βββ compose.yml # Docker Compose configuration
βββ .env # Environment variables
- Clone the repository
- Copy
.env.example
to.env
and fill in required values - Choose your preferred setup method:
Each application can be run locally:
cd apps/bot
yarn install
yarn dev
Follow the setup instructions in apps/databases/README.md to configure and start MongoDB and Redis services.
cd apps/webserver
./gradlew bootRun
cd apps/webserverGo
make build
make run
For more details, see the WebserverGo Documentation.
The entire ecosystem can be run using Docker Compose:
# Build all containers
docker-compose build
# Start all services
docker-compose up -d
# View logs
docker-compose logs -f
# Stop all services
docker-compose down
Individual services can be managed with:
# Start/stop specific service
docker-compose up -d [bot|webserver]
docker-compose stop [bot|webserver]
See the individual README files in each application directory for details on required environment variables:
- Bot Environment Variables
- Databases Instances Variables
- Webserver Environment Variables
- WebserverGo Environment Variables
Each application has its own README with detailed documentation:
- Bot Documentation
- Databases Instances Documentation
- Webserver Documentation
- WebserverGo Documentation
See CONTRIBUTING.md for details on how to contribute to this project.
This project is licensed under the MIT License - see LICENSE for details.