Local quickstart
This gets every service running on your machine. Steam, PSN and Xbox are simulated by WireMock, so you don’t need any real accounts or API keys.
You need: Docker (Docker Desktop or OrbStack) and Git.
-
Clone the repository
Terminal window git clone https://github.com/ivankaizer/playdex.gitcd playdexcp .env.example .env.envholds optional Sentry and Telegram settings. Leave the values as they are for now. -
Point the Web app at your API
The compose file assumes OrbStack domains (
*.playdex.orb.local). Pick your setup:Nothing to change. OrbStack routes
app.playdex.orb.local,ui.playdex.orb.localandadmin.playdex.orb.localfor you.Make the browser app call the API on
localhost:src/Web/wwwroot/appsettings.Development.json {"ApiBaseUrl": "http://localhost:3000/api/"}Allow that origin in
docker-compose.ymlunder theappservice:docker-compose.yml CORS_ORIGINS: "http://localhost:5173,http://ui.playdex.orb.local,https://ui.playdex.orb.local"Don’t commit these two edits.
-
Start everything
Terminal window docker compose up --buildThe first build takes a few minutes. The API creates the database schema on startup. Wait until you see it listening on port 3000.
-
Load demo data
A fresh database has no accounts, not even an admin, so run the seeder once from the command line:
Terminal window DATABASE_URL=postgresql://playdex:playdex@localhost:5432/playdex \dotnet run --project tools/SeederTerminal window docker run --rm --network playdex_default -v "$PWD":/src -w /src \-e DATABASE_URL=postgresql://playdex:playdex@db:5432/playdex \mcr.microsoft.com/dotnet/sdk:10.0 dotnet run --project tools/SeederThe network name is
<folder>_default. Check it withdocker network lsif your clone isn’t calledplaydex.Seeding generates two years of sessions, so give it a minute. After the first run, use Admin → Playground → Reset & seed demo data whenever you want a clean slate.
-
Sign in
App OrbStack Docker Desktop Account Web http://ui.playdex.orb.local http://localhost:5173 user@playdex.dev/passwordAdmin http://admin.playdex.orb.local http://localhost:3100 admin@playdex.dev/passwordAPI docs http://app.playdex.orb.local/swagger http://localhost:3000/swagger — -
Make something happen
In Admin, open Playground and click Steam → Playing Rogue Trader. Within about 10 seconds the poller opens a live session for
user@playdex.dev, and it appears on the Admin dashboard and in the Web app. See the Playground guide for more.