From 09e1f767d8eea8337dd2ccca056645df48cf280c Mon Sep 17 00:00:00 2001 From: lobo Date: Mon, 28 Sep 2026 13:07:40 +0200 Subject: [PATCH] docs(readme): describe the local setup --- README.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/README.md b/README.md index 7d084c1..15ee5d0 100644 --- a/README.md +++ b/README.md @@ -130,6 +130,26 @@ Tests sit next to the code they test (`Component.test.jsx`). ## Run locally +### Local development without keys (profile `local`) + +The whole stack runs on your machine with no API keys and no calls to Steam, Twitch/IGDB or speedrun.com. Needs +Java 25, Node 24 and Docker. Clone `ToBePlayed-Auth`, `ToBePlayed-Core` and `ToBePlayed-Frontend` next to each +other, then start them in this order (Core also starts without Auth and finds it later): + +1. **Auth**: in `ToBePlayed-Auth`, `./mvnw spring-boot:run -Dspring-boot.run.profiles=local` + (IDE: active profile `local`). Port 8080. +2. **Core**: in `ToBePlayed-Core`, `./mvnw spring-boot:run -Dspring-boot.run.profiles=local`. Port 8090. +3. **Frontend**: in `ToBePlayed-Frontend`, `npm install`, then `npm run dev`, and open `http://localhost:5173` + (`localhost`, not `127.0.0.1`, so the browser sends the login cookies to every local port). The development + values must be `VITE_API_URL=http://localhost:8080` and `VITE_CORE_API_URL=http://localhost:8090`. +4. **Log in** with `dev@localhost` / `password123`. On the dashboard, start a Steam sync: the library fills with 8 + games, achievements, time to beat, moods, a wishlist and one speedrun game from recorded answers. + +The dev user is `PLATFORM_ADMIN`, so user, auditor and admin pages can all be tried ("View as" in the menu +switches down). What the profile does in Auth and Core: their readmes, "Run locally". + +### Against other services + Needs Node 24 and running Auth and Core services. ```bash