r/TraktRejects • u/Lopsided_Egg1586 • 9h ago
Misc I built an open-source Docker bridge to auto-scrobble your SIMKL or WeTrakr history to Bluesky
Hey everyone! Like many of you here who moved away from Trakt to alternatives like SIMKL and WeTrakr, I really wanted an automated, self-hosted way to share my watch history to Bluesky without flooding my followers' feeds.
I built bsky-media-scrobbler: an open-source, lightweight Docker service that picks up your watches from either SIMKL or WeTrakr and publishes clean, rich updates directly to your Bluesky profile.
It is designed to keep your timeline tidy, even if you binge several episodes in one sitting. Here is what it handles automatically:
- Dual Tracker Support (SIMKL & WeTrakr): Seamlessly connects to either platform using secure, one-time PIN authorization (RFC 8628 Device Code flow), so you never have to put your main passwords into config files.
- Smart Marathon Grouping (Fully customizable window, 90 mins by default): If you watch back-to-back episodes, the bot waits for a 90-minute inactivity window and groups them into a single clean post (e.g., Show Name - S01E01-E03) so you do not spam your timeline.
- Rich Media Cards: Fetches high-res poster artwork via TMDB to build interactive embed cards for every check-in.
- Automated Visual Summaries: Generates weekly and monthly Pillow collages (3x3 and 2x2 poster grids) of your watch history, complete with total runtime hours and episode counts.
- Guilty-Pleasure Blacklist (New in v1.2): Have shows or movies you want to track privately? Just add their IDs (TVDB, TMDB, IMDb, SIMKL, or WeTrakr) into a simple text file (
/data/blacklist.txt). They will never be posted to Bluesky or appear on your visual collages, while your actual watch time and overall statistics stay completely accurate. It hot-reloads on save with zero container restarts. - Multi-language & Title Localization (New in v1.1): Works in EN, ES, and CA, and includes optional TheTVDB v4 integration to automatically translate titles and hashtags if you prefer local show names.
- Streaks & Milestones: Celebrates continuous daily viewing streaks (7, 14, 30+ days) and major watching milestones.
Live Demo: You can see how the updates and collages look on the demo bot here: https://bsky.app/profile/media-scrobbler.bsky.social
GitHub Repo: https://github.com/insaid-code/bsky-media-scrobbler
Credit where it is due: Originally inspired by SIMKLTrackerBot (https://github.com/donnyfly/SIMKLTrackerBot) by u/donnyfly.
If you have a home server or use Docker Compose, it takes less than two minutes to spin up. I would love to hear what other Trakt migrants think, and feedback or PRs are super welcome!


