Reading the repo
Opening the box…
Reading the repo
Opening the box…
How to install on Windows
Quake 3 in the browser
GitHub didn't answer, so this is the saved copy from 22 h ago
Will it work on Windows?
make (e.g. winget install GnuWin32.Make) or WSL.Heads-upIt also needs PostgreSQL and 20 settings in .env (8 secret).
Then run powershell -ExecutionPolicy Bypass -File .\setup.ps1. It stops at the first error and is safe to run again. Servers and tests aren't started; it lists them at the end. Read it first.
Needs Git: winget install Git.Git
git clone https://github.com/lklacar/q3js.git cd q3js
Node.js LTS (no version pinned), Docker, make
winget install CoreyButler.NVMforWindows nvm install lts nvm use lts winget install Docker.DockerDesktop winget install GnuWin32.Make # or use WSL
Needs: PostgreSQL
winget install Docker.DockerDesktop docker compose -f compose.yml up -d
corepack enable pnpm install
Makefile targets need make (e.g. winget install GnuWin32.Make) or WSL.
Clone the repository and install the workspace dependencies:
git clone https://github.com/lklacar/q3js.git
cd q3js
pnpm install --frozen-lockfile
Build the WebAssembly client:
make client
Create the website's local configuration:
cp website/.env.example website/.env.local
Set NEXT_PUBLIC_Q3JS_STATIC_URL=http://localhost:8081 in website/.env.local. Then start the stack in separate terminals from the repository root:
# Terminal 1 — PostgreSQL
docker compose up -d database
# Terminal 2 — master API
make master-run
# Terminal 3 — game server and WebSocket gateway
export Q3JS_DATA_DIR=/absolute/path/to/quake3-data
Q3JS_BASEPATH="$Q3JS_DATA_DIR" make server-run
# Terminal 4 — PK3 and manifest server
export Q3JS_DATA_DIR=/absolute/path/to/quake3-data
docker build -f static/Dockerfile -t q3js-static .
docker run --rm -p 8081:8080 -v "$Q3JS_DATA_DIR:/data:ro" q3js-static
# Terminal 5 — website
pnpm --dir website dev
Open http://localhost:3000. The local game server publishes its gateway at ws://localhost:27961/ws and registers itself with the master automatically.
| Port | Protocol | Service |
| --- | --- | --- |
| 3000 | HTTP | Website |
| 5432 | TCP | PostgreSQL |
| 8080 | HTTP | Master API and Swagger UI |
| 8081 | HTTP | Local static asset server |
| 27960 | UDP | Quake III dedicated server |
| 27961 | HTTP / WebSocket | Gateway and health endpoint |
No reports for Windows yet.
GitManual AI Agent reads the 8 key files and writes a step-by-step guide for Windows. Once written, it's saved for everyone.