Watcharr
Self-hosted watched list for movies, TV shows, anime, and games
Alternative to: trakt, letterboxd, imdb, simkl

v2.0.0
2025-01-23[!NOTE]
The next release is finally here! Don’t worry about the major version bump though, there’s nothing for you to do, other than update your server as usual (more details here).It is still recommended that you perform a backup before updating!
New
- Trusted header authentication by @lufixSch & @IRHM in https://github.com/sbondCo/Watcharr/pull/736
- Person: Ability to sort items in people view by @AlexPerathoner in https://github.com/sbondCo/Watcharr/pull/670
- Person: ‘On my list’ filter support by @AlexPerathoner & @IRHM in https://github.com/sbondCo/Watcharr/pull/704
- Person: show message when no credits to show by @IRHM in https://github.com/sbondCo/Watcharr/pull/705
- Search by external id (with this format:
provider:id, example:imdb:tt15435876) by @IRHM in https://github.com/sbondCo/Watcharr/pull/709- imdb (aliases:
i,imd) - tvdb (aliases:
thetvdb) - youtube (aliases:
yt) - wikidata (aliases:
wd,wdt) - tiktok
- imdb (aliases:
- Search: Support special characters (technically breaking, but only for frontend url, not api) by @IRHM in https://github.com/sbondCo/Watcharr/pull/713
- Imdb import (for movies & tv) by @IRHM in https://github.com/sbondCo/Watcharr/pull/726
- Imdb episodes import support (only if show is imported too from list) by @IRHM in https://github.com/sbondCo/Watcharr/pull/728
- Create a default error page by @IRHM in https://github.com/sbondCo/Watcharr/pull/738
- manage_users: Support swapping users between Watcharr/Proxy user types (which enabled a migration path for existing users over to becoming a trusted header user) by @IRHM in https://github.com/sbondCo/Watcharr/pull/747
Changed
- Migration to Svelte 5, new code format rules for frontend, some general overdue refactoring by @IRHM in https://github.com/sbondCo/Watcharr/pull/762
- Full migration to Svelte 5 (instead of slowly migrating, everything has been moved over to use Svelte 5 features now)
- The store is now an object using the $state rune, instead of using a svelte store. All uses have been updated, looks a lot cleaner now!
- Edited prettierrc: Use default
printWidthof 80, Always leave trailing,, use tabs. - All code reformatted to use Tabs instead of Spaces (have been meaning to fix this for a while, all the code being changed in this pr was a good excuse to get it done).
- Code makeover: A lot of stuff has been refactored to be (more) pleasing to the eyes.
- Full migration to Svelte 5 (instead of slowly migrating, everything has been moved over to use Svelte 5 features now)
Fixed
- import: Disable ‘change statuses’ button while importing by @IRHM in https://github.com/sbondCo/Watcharr/pull/727
- Fix search debounce and styling by @IRHM in https://github.com/sbondCo/Watcharr/pull/770
- Fix importing state error by @IRHM in https://github.com/sbondCo/Watcharr/pull/781
Documentation
- New screenshots for readme/doc site by @IRHM in https://github.com/sbondCo/Watcharr/pull/771
Maintenance
- ui: bump @sveltejs/kit from 2.5.27 to 2.15.1 by @dependabot in https://github.com/sbondCo/Watcharr/pull/737
- ui: bump @typescript-eslint/eslint-plugin from 7.14.1 to 8.18.2 by @dependabot in https://github.com/sbondCo/Watcharr/pull/733
- ui: bump typescript from 5.5.4 to 5.7.2 by @dependabot in https://github.com/sbondCo/Watcharr/pull/703
- ui: bump @vite-pwa/sveltekit from 0.5.0 to 0.6.6 by @dependabot in https://github.com/sbondCo/Watcharr/pull/669
- ui: bump prettier from 3.3.2 to 3.4.2 by @dependabot in https://github.com/sbondCo/Watcharr/pull/714
- server: bump github.com/go-co-op/gocron/v2 from 2.11.0 to 2.14.0 in /server by @dependabot in https://github.com/sbondCo/Watcharr/pull/731
- server: bump gorm.io/driver/sqlite from 1.5.6 to 1.5.7 in /server by @dependabot in https://github.com/sbondCo/Watcharr/pull/723
- server: bump golang.org/x/crypto from 0.27.0 to 0.31.0 in /server by @dependabot in https://github.com/sbondCo/Watcharr/pull/717
- ui: bump @types/papaparse from 5.3.14 to 5.3.15 by @dependabot in https://github.com/sbondCo/Watcharr/pull/742
- server: bump github.com/gin-contrib/cors from 1.7.2 to 1.7.3 in /server by @dependabot in https://github.com/sbondCo/Watcharr/pull/745
- server: bump golang.org/x/crypto from 0.31.0 to 0.32.0 in /server by @dependabot in https://github.com/sbondCo/Watcharr/pull/748
- server: bump github.com/gin-contrib/cache from 1.3.0 to 1.3.1 in /server by @dependabot in https://github.com/sbondCo/Watcharr/pull/746
- server: bump github.com/go-co-op/gocron/v2 from 2.14.0 to 2.14.2 in /server by @dependabot in https://github.com/sbondCo/Watcharr/pull/761
- ui: bump @sveltejs/adapter-node from 5.2.11 to 5.2.12 by @dependabot in https://github.com/sbondCo/Watcharr/pull/763
- ui: bump @sveltejs/kit from 2.15.1 to 2.16.0 by @dependabot in https://github.com/sbondCo/Watcharr/pull/764
Thanks
- @lufixSch For getting the base work done for the trusted header authentication support.
- @christaikobo For providing valuable feedback on trusted header authentication implementation.
- @AlexPerathoner For continued work on improving quality of life for the frontend.
🆘 Getting Help
If you need help, encounter an issue or find a bug please create an issue or join our space on Matrix for support. Always happy to help!
Package: https://github.com/sbondCo/Watcharr/pkgs/container/watcharr/342565711?tag=v2.0.0 or on docker hub Full Changelog: https://github.com/sbondCo/Watcharr/compare/v1.44.2…v2.0.0