Personal tracker for upcoming movies, TV seasons, and games. Search TMDB (movies/TV) and RAWG (games) to build a watchlist, then get notified two ways:
/ics serves a live calendar feed. Subscribe to it in
Google Calendar (Settings → Add calendar → From URL) or any calendar app, and
each release shows up as an all-day event on its date.Items auto-remove from the watchlist (and therefore the calendar/digests) 3 days after their release date, so it stays a list of what's still coming rather than everything that ever was.
backend/index.ts — HTTP val (Hono). Serves the web UI, the /ics feed, and the
/api/* endpoints used by the frontend to search and manage the watchlist.backend/sync.ts — daily cron (06:00 UTC). Re-fetches release/air dates for
everything on the watchlist, sends the day-of Discord ping if anything releases
today, then drops items more than 3 days past their release date.backend/digest.ts — monthly cron (1st, 08:00 UTC, after that day's sync). Posts
the Discord digest for the current month.shared/db.ts — SQLite watchlist table (val-scoped).shared/tmdb.ts / shared/rawg.ts — API clients.shared/ics.ts / shared/discord.ts — output formatters.frontend/ — React UI for searching and managing the watchlist.TMDB_API_KEYRAWG_API_KEYDISCORD_WEBHOOK_URL👉 Manage them here: https://www.val.town/x/CAS98/release-radar/environment-variables
Open the web UI, search by title (pick Movie/TV Show/Game first), and hit + Add. TV shows track the next known episode/season air date — renewals get picked up automatically by the daily sync once TMDB has a date for them.