Files
mixmaker/README.md
lemintare 1239fcee08
Some checks failed
CI / backend (push) Has been cancelled
CI / frontend (push) Has been cancelled
CI / compose (push) Has been cancelled
Initialize project with basic structure, including Docker configuration, backend and frontend setup, environment configuration, and essential files for development.
2026-07-19 00:17:31 +03:00

50 lines
1.5 KiB
Markdown

# Mixmaker
Mixmaker is a full-stack application for organizing Overwatch community scrims: Discord authentication, role ratings and preferences, RU/EN UI, event RSVP, preference-aware balanced 1/2/2 teams, captain assignment, Bo3 drafts and results, and a single-elimination bracket.
## Stack
- Go backend with Clean Architecture
- PostgreSQL
- React, TypeScript, Vite, TanStack Query and Router
- REST + Server-Sent Events
- Docker Compose for local PostgreSQL and Coolify production deployment
## Local development
Requirements: Go, Node.js/npm, Docker with Compose.
```bash
cp .env.example .env
make dev-db
make migrate
# Terminal 1
make backend
# Terminal 2
make frontend
```
The frontend runs at `http://localhost:5173`; API requests are proxied to the backend. To use the real API locally, copy `frontend/.env.example` to `frontend/.env` and set `VITE_DEMO_MODE=false`.
Create a Discord application, add the callback URL from `DISCORD_REDIRECT_URL`, and fill in `DISCORD_CLIENT_ID`, `DISCORD_CLIENT_SECRET`, and `ADMIN_DISCORD_IDS`.
## Checks
```bash
make test
make lint
make compose-check
```
## Production
The root `compose.yaml` is designed for a single Coolify Docker Compose resource. Coolify owns routing and networking; the file intentionally does not declare custom networks or publish PostgreSQL.
See [deployments/coolify.md](deployments/coolify.md) for setup, secrets, storage, and backup requirements.
## Product documentation
Current decisions and domain rules live in [`memory_bank/`](memory_bank/).