No description
  • Python 94.2%
  • Dockerfile 5.8%
Find a file
Max Staff 292e7b9341
All checks were successful
Alpine base images / build-and-push (push) Successful in 16m16s
Container / build-and-push (push) Successful in 5m15s
Keep Kaniko auth in ignored config directory
Assisted-by: GPT-5.5 via pi.dev
2026-06-06 21:18:37 +02:00
.forgejo Keep Kaniko auth in ignored config directory 2026-06-06 21:18:37 +02:00
.env.example Add env example 2026-06-01 21:18:32 +02:00
.gitignore Add container publish workflow 2026-06-01 21:21:36 +02:00
docker-compose.yml Add container publish workflow 2026-06-01 21:21:36 +02:00
Dockerfile Use Alpine image tags in repository package 2026-06-06 20:57:25 +02:00
download.py vibe coded fixes to download.py 2026-05-29 17:21:04 +02:00
main.py Set timezone 2026-06-06 19:34:38 +02:00
Pipfile vibe coded fixes to download.py 2026-05-29 17:21:04 +02:00
Pipfile.lock vibe coded fixes to download.py 2026-05-29 17:21:04 +02:00
pyproject.toml Add formatting config 2026-05-29 18:18:45 +02:00
README.md Add container publish workflow 2026-06-01 21:21:36 +02:00

Feinstaubalarm

Small HTTP service that receives sensor.community-style PM2.5 readings and sends Telegram alerts with a graph when the current value is above 2× the recent average.

Configuration

Copy the example environment file and fill in your Telegram credentials:

cp .env.example .env

Required variables:

  • TELEGRAM_BOT_TOKEN - Telegram bot token from BotFather
  • TELEGRAM_CHAT_ID - chat or group ID for alerts

Run with Docker Compose

docker compose pull
docker compose up -d

The service listens on port 8080.

Endpoints:

  • POST / - submit sensor JSON containing sensordatavalues with SDS_P2
  • GET /alarm - send a manual Telegram graph/check

State is stored in ./data via the compose volume mount.