A simple Steam hour booster with a real-time web dashboard and container-first deployment workflow.
- Steam accounts exported from S.A.G.E. in Raw JSON format saved to
sage-accounts.json. - Game sub IDs listed in
config.json.
Prebuilt multi-architecture images are published to the GitHub Container Registry via the included GitHub Actions workflow.
-
Authenticate to GHCR once on your machine (replace
USERNAMEwith your GitHub username):echo "<PAT>" | docker login ghcr.io -u USERNAME --password-stdin
The PAT needs the
read:packagesscope. -
Pull and start the dashboard using Docker Compose. Override
HOURBOOSTER_IMAGEif you fork the repo or publish under a different namespace:export HOURBOOSTER_IMAGE=ghcr.io/<owner>/hourbooster:latest docker compose up -d
-
Open http://localhost:3000 to manage your boosting sessions.
Configuration files are mounted into the container, so edits on the host are picked up automatically. Restart the container if you change account credentials while it is running.
If you need to test local changes, extend the default Compose file with the provided build override:
docker compose -f docker-compose.yml -f docker-compose.build.yml up --build- Install dependencies with
npm install. - Start the dashboard with
npm start. - Visit http://localhost:3000 in your browser.
.github/workflows/docker.ymlrunsnpm ciandnpm auditto fail fast on dependency vulnerabilities.- On every push to
main, release publication, or manual dispatch, Docker Buildx creates multi-architecture images (linux/amd64, linux/arm64) and publishes them toghcr.io/<owner>/hourbooster.
- Start and stop boosting for each configured account.
- Automatic SteamGuard mobile code entry when shared secrets are present.
- Manual SteamGuard code prompts delivered directly in the browser.
- Live log stream with color-coded severity for quick troubleshooting.
- Leave
sage-accounts.jsonempty ([]) until you are ready to paste your export. - For new games, append the app IDs to the
gamesarray inconfig.json.