WatchState
Instead of relying on third-party cloud trackers to keep watched history aligned across Plex, Jellyfin, and Emby, WatchState synchronizes playback state and watch progress directly between your own self-hosted media servers. Household administrators can map multiple family members across independent backend accounts using isolated user identities, configuring either one-way mirroring from a primary server or full many-to-many synchronization across every connected instance. A unified generic webhook endpoint captures play, pause, stop, and watched events from Plex, Tautulli, Jellyfin, and Emby for near-instant state propagation, while scheduled background import and export tasks reconcile any missed updates automatically. When libraries grow across multiple servers, the built-in Media Health diagnostic engine audits the database for external GUID conflicts, duplicate file references, metadata disagreements, weak matches, and missing local files, complete with exportable reports and per-record action hints. Users can also search backend metadata, inspect detailed item event logs, and export portable JSON backups of their entire watch history for safe server migrations. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.
Deploy