A Steam player and game tracker powered by Spring Boot.
- Leverages microservice architecture
- Easy deploying as images with Docker
- Automatic player updating
- Pages for tracked games and players for detailed statistics
First, fork and/or clone the project
git clone git@github.com:cubeee/steamtracker.git
SteamTracker comes with templates for files that may contain sensitive information.
Copy these files and remove the .dist-extension, then fill with your information:
- backend/src/main/resources/application-development.yml.dist
- backend/src/main/resources/application-production.yml.dist
- updater/src/main/resources/application-development.yml.dist
- updater/src/main/resources/application-production.yml.dist
- shared/src/main/resources/application.yml.dist
Note: the contents of these template files will always contain the minimum required properties. Keep your private versions up-to-date to avoid any problems caused by configuration mismatches.
SteamTracker uses a Gradle wrapper to ensure all contributors are on the same version.
The wrapper can be downloaded and updated with the following command:
./gradlew wrapper
The following are some common commands for each module:
# Backend:
./gradlew :backend:bootRun # Run the web application
# Updater:
./gradlew :updater:bootRun # Run the player updater
# Frontend:
./gradlew :frontend:build # Build and package the frontend assets
./gradlew :frontend:webpack # Build the frontend assets
./gradlew :frontend:webpackWatch # Watch for frontend changes
SteamTracker in production is easiest to run as a Docker container. backend
and updater
modules have Dockerfiles and buildDockerImage
tasks that can be used to build their respective images.
You should make sure that there is a database and its user set up for SteamTracker prior to running the containers, Flyway will handle the migrations on start.
Example run command:
docker run -p 8891:8891 --link postgres:postgres --name steamtracker-backend steamtracker
for now: fork, code, submit pull requests, make issues