A lightweight GraphQL API that acts as a proxy to Buienradar's public weather data feed. Provides typed GraphQL schema, CORS support, error handling, and timeout protection for consuming applications.
- 🔄 Proxy Layer — Abstracts upstream API complexities
- 🛡️ Type Safety — Fully typed GraphQL schema
- ⚡ Timeout Protection — Configurable request timeouts
- 🌐 CORS Ready — Pre-configured for web clients
- 📊 Apollo Explorer — Built-in GraphQL playground
- 🪵 Structured Logging — Timestamped error & info logs
Upstream Source: https://data.buienradar.nl/2.0/feed/json
Node.js 20+ recommendednpm installEnvironment variables (all optional):
| Variable | Default | Description |
|---|---|---|
PORT |
4000 |
Server port |
BUIENRADAR_URL |
https://data.buienradar.nl/2.0/feed/json |
Upstream API URL |
REQUEST_TIMEOUT_MS |
8000 |
Request timeout in milliseconds |
npm start🎉 Server ready at http://localhost:4000/ 🔍 Open the URL to access Apollo Explorer
Configured origins:
http://localhost:4200— Local developmenthttps://leoaltemari.github.io— GitHub Pages deployment
weatherData: WeatherDataquery GetWeather {
weatherData {
buienradar {
copyright
terms
}
actual {
sunrise
sunset
stationmeasurements {
stationid
stationname
temperature
windspeed
weatherdescription
}
}
forecast {
weatherreport {
title
summary
}
fivedayforecast {
day
mintemperature
maxtemperature
rainChance
weatherdescription
}
}
}
}