REST API that proxies current weather from Open-Meteo. Kotlin + Ktor.
# With Java 17+
./gradlew run
# With Docker
docker compose up --buildcurl "http://localhost:8080/api/v1/weather/current?lat=52.52&lon=13.41"./gradlew test # Unit tests (mock upstream)
./gradlew integrationTest # Against real Open-MeteoCaching: Per-pod in-memory (Caffeine, 60s TTL). No shared cache — each pod caches independently.
Observability: JSON logs, Prometheus metrics at /metrics, health probes at /health/live and /health/ready.