diff --git a/README.md b/README.md index 6069f3c..9b38e38 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,11 @@ # devict-events -A small TypeScript/Node service that polls the [OpenMeet](https://openmeet.net) API for upcoming devict events and notifies a set of channels when new ones are posted, plus a weekly digest of the upcoming week on a configured day and time. +A small project for devICT event-related things. -A TypeScript port of the Go version, with zero runtime dependencies: native `fetch`, native `Temporal` for timezone math, and Node's type-stripping to run `.ts` files directly. Requires Node >= 24. +- A process that polls the [OpenMeet](https://openmeet.net) API for upcoming events and sends slack notifications about them. +- An API for more easily interacting with devICT event data. -## How it works +## Event Notifier On a configurable interval the loop: @@ -12,6 +13,10 @@ On a configurable interval the loop: 2. Diffs the response against the slugs seen on the previous fetch to find new events, then notifies every configured channel about each one. 3. On the configured day-of-week and time-of-day (in `America/Chicago`), sends a digest of the upcoming week to every channel. +## Events API + +A simple fastify API, with an OpenAPI spec generated from JSON schemas attached to the routes directly. + ## Configuration Available config can be seen in `.env.example`, with more details in `src/config.ts`.