
# `wed`: Weather on the Event Day
`wed`'s idea is to automate something I do pretty often: once I register for a triathlon race, I frequently check the venue's weather forecast for the race's date and time _too many times_ in the previous days.
`wed` offers a CLI to automate that and, if you are into [AT Protocol](https://atproto.com), a web app and [Bluesky](https://bsky.app) bot for that.
### In this repository
| Directory | Description | Documentation |
|---|---|---|
| `cli` | The command-line interface | [Using the CLI](docs/cli.md) |
| `spa` | Frontend web application | [Using the web app](docs/spa.md) |
| `server` | AT Protocol AppView | [Getting notified on Bluesky](docs/bot.md) |
| `releases` | Release page | |
## Data
### Sources
* Conversion of location (city/country) to a latitude and longitude: [Nominatim](https://wiki.openstreetmap.org/wiki/Nominatim)
* Weather forecast, only when _t - 16 days_: [hourly from Open Meteo](https://open-meteo.com/en/docs)
### Persistence
* Events are stored in `~/.wed.json` or in your [PDS](https://atproto.com/guides/self-hosting#pds)
* Always on the PDS when using the web app
* On the CLI you can choose by using or skipping the `--atproto` flag
* The app automatically prunes past events (both, locally and from your PDS
* Events more than 16 days ahead are ignored when fetching forecasts
* Optional credentials for the PDS are stored in `~/.wed.json`