The CORE Game website built with Next.js, NestJS, and Go microservices for managing tournaments, teams, and game execution.
This project consists of multiple microservices:
- Frontend - Next.js web application
- API Service - Main backend API (NestJS + PostgreSQL)
- GitHub Service - Repository management microservice
- K8s Service - Game execution in Kubernetes clusters
The easiest way to get started is using the provided DevContainer:
- Open the project in VS Code
- Install the "Dev Containers" extension
- Press
Ctrl+Shift+P→ "Dev Containers: Reopen in Container" - Wait for the container to build and start
The DevContainer includes all necessary tools and services pre-configured.
If you prefer to install everything locally:
- Node.js 18+ with pnpm
- Go 1.25+
- PostgreSQL (or use Docker Compose)
- RabbitMQ (or use Docker Compose)
- Kubernetes cluster (for game execution)
- S3-compatible storage (for replay storage)
For PostgreSQL and RabbitMQ, you can use the provided Docker Compose:
cd .devcontainer && docker compose up -d postgres rabbitmqThis starts:
- PostgreSQL on
localhost:5432(user:postgres, password:postgres, db:postgres) - RabbitMQ on
localhost:5672(management UI:http://localhost:15672, user:guest, password:guest)
The default environment variables in each service are configured to work with these settings.
For basic website functionality:
- Start infrastructure (PostgreSQL + RabbitMQ)
- Configure Frontend - See frontend/README.md
- Configure API - See api/README.md
- Start services: - See individual READMEs for details
For complete functionality including GitHub integration and game execution:
- Start PostgreSQL
- Start RabbitMQ
- Set up Kubernetes cluster (recommended: kind)
- Configure S3 storage for replay storage
- Configure all services:
- Frontend - Web interface
- API Service - Main backend
- GitHub Service - Repository management
- K8s Service - Game execution
- Start all services
- Frontend ← API Service ← PostgreSQL
- GitHub Integration requires RabbitMQ + GitHub Service
- Game Execution requires Kubernetes + K8s Service + S3 Storage
- Fork the repository
- Create a feature branch
- Make your changes
- Test locally using the DevContainer or manual setup
- Submit a pull request
For issues and questions:
- Check individual service READMEs for specific setup issues
- Open an issue in this repository