Repository navigation
Development and Testing
The project uses Go 1.24 or newer and Godot 4.7.2. The Android SDK and ADB are needed for phone installation. Work intended for the upstream repository starts with an issue and an invitation; see Contributing.
From the monorepo root, run the server and analytics client in separate terminals:
go run ./server
go run ./analyticsRun Godot with the local WebSocket URL:
GRIMREACH_SERVER_URL=ws://127.0.0.1:8081/play godot --path clientThe local server's HTTP health endpoint is http://127.0.0.1:8081/health. For tunnel testing, follow Docker and Tunnel. Compose intentionally has no published port, so use the public route or an internal-network check for the containerized server.
go test ./...
go vet ./...
godot --headless --path client --script res://tests/terrain_smoke.gd
godot --headless --path client --script res://tests/journal_smoke.gd
godot --headless --path client --script res://tests/veins_smoke.gd
godot --headless --path client --script res://tests/explorer_smoke.gd
godot --headless --path client --script res://tests/sites_smoke.gd
godot --headless --path client --script res://tests/world_life_smoke.gd
docker compose config --quiet
docker compose build serverRun checks appropriate to the changed behavior and document what was actually observed. The 0.1.0 work passed these checks, Linux and Android debug exports, private-container health, and a public WebSocket welcome message. It had no CI workflow run. A full physical friend session remains open in issue #26.
The repository has Linux x86_64 and Android arm64 export presets. From the root:
mkdir -p build
godot --headless --path client --export-debug Linux ../build/grimreach-linux.x86_64
godot --headless --path client --export-debug Android ../build/grimreach-android.apkThe generated build/ directory is ignored by Git. Windows and macOS tester builds are planned in issue #27; do not treat those platforms as tested by the current presets.