Airdate unifies disparate release timelines so planners never reconcile spreadsheets again. Streams, theatrical staggers, hiatus weeks, recap drops, collector editions, dub cycles, rebroadcast arcs — whichever vocabulary the medium uses, ingestion normalizes schedules into timelines users can skim quickly.
Go services aggregate ingestion feeds, hydrate deduplicated Postgres graphs, reconcile regional splits, enqueue notification windows, and deliver Web Push messages tuned for spoiler etiquette.
The Next.js client focuses on skim-friendly grids, playlists for backlog planning, mute windows, timezone-safe reminders, and low-friction opt-in UX without trapping fans inside yet-another walled inbox clone.
Airdate is live at airdatee.me. The source stays private for now — the public GitHub profile is the place to watch for when that changes.
Architecture sketch
Ingest adapters ──► Normalized release graph (Postgres) │ ├► Notification planner (Go) │ └► Web Push bridge ▼ Authenticated subscriptions (Next.js)
Constraints surfaced
Metadata drift between broadcasters demanded deterministic reconciliation pipelines before outbound notifications existed.
Outcome
Shipped and live — the release-tracking product now runs in production at airdatee.me, validating how far Postgres + Go can stretch for conscientious alerting without starving reliability budgets.