-
Notifications
You must be signed in to change notification settings - Fork 0
Calendar
🌐 English · Deutsch
The Calendar (/calendar) shows upcoming episode air dates and movie releases for the titles you care about, based on TMDB metadata. It is an optional view that is enabled via CineInfo and powered by a background watcher that caches the schedule data locally.

- A TMDB API key must be configured under Integrations → CineInfo. Without a key the calendar shows a corresponding hint.
- The calendar must be enabled (see below). The sidebar entry Calendar only appears when it is on.
All options live under Integrations → CineInfo, directly below the Advanced TMDB Search toggle:
| Option | Setting key | Description |
|---|---|---|
| Calendar View | cineinfo_calendar |
Master switch. Shows the Calendar entry in the sidebar (placed right after Advanced Search, or after Upscaling when Advanced Search is off). |
| ↳ Show Seerr requests in calendar | cineinfo_calendar_seerr |
Overlays your open Seerr requests. Only changeable when the calendar is on and a Seerr integration is configured. |
| ↳ Show Media Library series in calendar | cineinfo_calendar_mediathek |
Overlays series found by MediaScan. Only changeable when the calendar is on. |
| ↳ Calendar refresh interval | cineinfo_calendar_refresh_interval |
How often already-cached titles are refreshed from TMDB (8 / 12 / 16 / 24 hours, default 24). |
The three sources are independent: Seerr works whether or not the Media Library overlay is enabled, and vice versa.
The toolbar offers two independent toggles plus navigation:
- Range: Month or Week.
-
Layout: Grid (poster tiles) or List (compact rows). Both choices are remembered in your browser (
localStorage). - Navigation: previous / Today / next, with the current period label. In month view, days with more entries than fit show a “+N more” chip that opens a popover (or jumps to that week).
The calendar is fully responsive: on narrow screens the month grid condenses and the toolbar wraps.
An entry can come from up to four sources, shown with a small coloured tag:
| Source | Where it comes from | Shown on |
|---|---|---|
| AutoSync | Enabled AutoSync jobs (resolved to a TMDB series) | Air dates of the currently airing season |
| Seerr | Open/approved Seerr requests | Series → upcoming episode dates · Movies → release date |
| Media Library | Series from the MediaScan cache | Air dates of the currently airing season |
| Crunchyroll | Weekly Crunchyroll simulcast schedule and your Crunchyroll watchlist | Concrete release dates (best effort); watchlist entries are highlighted |
Filter chips above the grid let you toggle each source on/off; a Watchlist only chip narrows the Crunchyroll entries to titles on your watchlist. Your selection is remembered.
Only dated entries are shown. Series that have ended (no upcoming episodes) and movies whose release lies in the past (visible only when you navigate to that month) won't appear in the default view — that is expected, not a bug.
To stay fast and gentle on the TMDB rate limit, the calendar does not fetch from TMDB on every page load. A background watcher thread keeps a local cache (calendar_media / calendar_episodes tables) up to date:
- It runs while the calendar is enabled and a TMDB key is set, checking every 10 seconds.
- Priority targets (AutoSync jobs + Seerr requests) are synced first; Media Library series are treated as lower priority and only processed once the priority list has been idle for ~15 minutes.
- New titles missing from the cache are added one at a time (rate-limit friendly); existing entries are refreshed according to the refresh interval.
- Data is cached bilingually (German + English), so the calendar shows titles and episode names in your current UI language without re-fetching.
- Seerr requests are also synced on demand inside the page request itself — so they appear immediately even if the watcher hasn't reached them yet (or isn't running).
The page header shows a small watcher status:
- A green dot — Watcher active; grey — Watcher inactive.
- A Scanning… badge while the watcher is currently fetching a title.
When the calendar is still empty during the very first population, a reassuring note is shown: “The first synchronization may take a while — your calendar is being filled in the background.” If the calendar is empty but Seerr is active with open requests that simply have no dated entries, a separate hint clarifies that this is expected.
- Integrations — TMDB/CineInfo, Seerr and MediaScan setup
- AutoSync — the main source of calendar entries
- Web UI — navigation overview
🇬🇧 English
Users
- Installation
- Getting Started
- Configuration
- Web UI
- Download System
- Download History
- AutoSync
- Calendar
- Library
- Authentication
- Notifications
- Integrations
- SyncPlay
- Anime4K Upscaling
- Encoding
- Docker
- Supported Sites
Developers