SteamSalty notifies you on Telegram about new comments on any Steam Profile, with built in auto-translation.
  • Go 94%
  • Shell 3.8%
  • Dockerfile 2.2%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-10-26 00:13:05 +01:00
botIO feat: Release v1.0.0 2026-05-05 01:11:23 +02:00
commands feat: add unit tests 2026-10-15 05:13:31 +02:00
config chore: Prepare Release v2.0.0 2026-10-15 06:50:45 +02:00
deepL refactor!: group config and env vars by service 2026-10-15 05:11:39 +02:00
steam feat: add unit tests 2026-10-15 05:13:31 +02:00
.env.example fix: use defaults for empty env vars and require a sleep interval of at least 1 2026-10-15 06:43:15 +02:00
.gitignore feat: Release v1.0.0 2026-05-05 01:11:23 +02:00
bot.go feat: Release v1.0.0 2026-05-05 01:11:23 +02:00
build.sh chore: update build script 2026-05-05 05:50:27 +02:00
Dockerfile fix: Bump Go version in Dockerfie 2026-10-15 07:09:17 +02:00
go.mod chore: Prepare Release v2.0.0 2026-10-15 06:50:45 +02:00
go.sum chore: Prepare Release v2.0.0 2026-10-15 06:50:45 +02:00
LICENSE feat: Release v1.0.0 2026-05-05 01:11:23 +02:00
main.go refactor!: group config and env vars by service 2026-10-15 05:11:39 +02:00
README.md chore: Prepare Release v2.0.1 2026-10-15 07:09:56 +02:00
renovate.json Update renovate.json 2026-10-26 00:13:05 +01:00

SteamSalty

SteamSalty notifies you on telegram about new comments on any steam profile with built in auto translation.

Important

The version of this repository you are seeing is likely a mirror.

If you want to contribute any changes please head over to git.watn3y.de and register an account.

Running with Docker Compose

The Docker image is available on these registries.

Example compose file:

services:
  steamsalty:
    image: watn3y/steamsalty:v2.0.1
    # image: git.watn3y.de/watn3y/steamsalty:latest # Use this to be up to date with the master branch on git
    container_name: steamsalty
    restart: unless-stopped
    volumes:
      - /etc/localtime:/etc/localtime:ro
    environment:
      #STEAMSALTY_LOGLEVEL: 
      STEAMSALTY_TELEGRAM_APITOKEN: 
      STEAMSALTY_TELEGRAM_CHATID: 
      STEAMSALTY_STEAM_APIKEY:
      STEAMSALTY_STEAM_WATCHEDPROFILES:
      #STEAMSALTY_STEAM_SLEEPINTERVAL:
      #STEAMSALTY_DEEPL_ENABLED:
      #STEAMSALTY_DEEPL_TARGETLANGUAGE:
      #STEAMSALTY_DEEPL_APIKEY:
      #STEAMSALTY_DEEPL_FREETIER:

Running on Linux

Grab a release from the releases page. Make sure to set your environment variables accordingly.

Environment Variables

Note

For development purposes, SteamSalty supports loading environment variables from a .env file placed in the project root directory.

Optional variables that are unset or empty use their default.

Variable Description Default Required Example
STEAMSALTY_LOGLEVEL LogLevel as described in the zerolog documentation 1 (Info) ❌ 1
STEAMSALTY_TELEGRAM_APITOKEN Telegram BotToken, get it from @BotFather on Telegram None ✅ 1234567890:AAHdqTcvCH1vGWJxfSeofSAs0K5PALDsaw
STEAMSALTY_TELEGRAM_CHATID Chat to notify about new comments None ✅ -1001234567890
STEAMSALTY_STEAM_APIKEY Steam API Key, get it from steamcommunity.com/dev/apikey None ✅ A7B3C9D2E5F1A4B8C6D9E2F5A8B1C4D7E0F3A6B9
STEAMSALTY_STEAM_WATCHEDPROFILES SteamIDs (in SteamID64 format) to check for new profile comments None ✅ 76561198012345678,76561198087654321
STEAMSALTY_STEAM_SLEEPINTERVAL Amount of time to wait between requests to Steam in seconds, at least 1 60 ❌ 60
STEAMSALTY_DEEPL_ENABLED Whether to enable translation of comments False ❌ True, False
STEAMSALTY_DEEPL_TARGETLANGUAGE Language to translate to, as described in the DeepL API documentation EN-US ❌ EN-US, DE
STEAMSALTY_DEEPL_APIKEY DeepL API Key, get it from deepl.com/en/your-account/keys. Required if STEAMSALTY_DEEPL_ENABLED is True None ❌ a1b2c3d4-56e7-89f0-a1b2-c3d4e5f6a7b8:fx
STEAMSALTY_DEEPL_FREETIER Whether you are using the DeepL Free Tier True ❌ True, False

Nice to know

Semantic Versioning

This project does it's best to follow Semantic Versioning, however I can't guarantee anything.

AI Disclosure

AI was used in the process of creating this project. Mainly for the Go unit tests.