This plugin lets you remove items from the "Continue Watching" list in Jellyfin without resetting the watch progress. The plugin can also automatically hide items after a configurable period of inactivity.
It implements this feature request
This plugin works by injecting custom JavaScript into Jellyfin's web interface. It is compatible with:
This plugin requires the following plugins to be installed:
https://raw.githubusercontent.com/jon4hz/jellyfin-plugin-discontinue-watching/main/manifest.json
This plugin has a custom route that simulate the "Resume" endpoints but filters out unwanted items. Configure your reverse proxy accordingly to make every client support this plugin.
---
http:
middlewares:
discontinue-watching:
replacePathRegex:
regex: '^/UserItems/Resume'
replacement: '/DiscontinueWatching/Override/UserItems/Resume'
---
http:
middlewares:
discontinue-watching-old:
replacePathRegex:
regex: '^/Users/([^/]+)/Items/Resume'
replacement: '/DiscontinueWatching/Override/Users/$1/Items/Resume'
location ~ ^/UserItems/Resume {
rewrite ^/UserItems/Resume /DiscontinueWatching/Override/UserItems/Resume break;
proxy_pass http://jellyfin_backend;
}
location ~ ^/Users/([^/]+)/Items/Resume {
rewrite ^/Users/([^/]+)/Items/Resume /DiscontinueWatching/Override/Users/$1/Items/Resume break;
proxy_pass http://jellyfin_backend;
}
This plugin can be easily integrated in other 3rd party clients.
GET /DiscontinueWatching
# returns an array of item ID which should be hidden from Continue Watching for the current user
POST /DiscontinueWatching/{itemId}
# adds the specified item ID to the denylist for the current user
With these routes, other clients can remove items from Continue Watching by calling the POST route. The items returned by the GET route should be hidden from Continue Watching list.
make build
All kind of contributions are welcome! Feel free to open issues or submit pull requests. If you want to contribute code, please make sure to install the pre-commit hooks:
pre-commit install
GPLv3
C#
60.7%
JavaScript
22.7%
HTML
8.1%
Shell
5.6%
Makefile
2.9%
This plugin lets you remove items from the "Continue Watching" list in Jellyfin without resetting the watch progress. The plugin can also automatically hide items after a configurable period of inactivity.
It implements this feature request
This plugin works by injecting custom JavaScript into Jellyfin's web interface. It is compatible with:
This plugin requires the following plugins to be installed:
https://raw.githubusercontent.com/jon4hz/jellyfin-plugin-discontinue-watching/main/manifest.json
This plugin has a custom route that simulate the "Resume" endpoints but filters out unwanted items. Configure your reverse proxy accordingly to make every client support this plugin.
---
http:
middlewares:
discontinue-watching:
replacePathRegex:
regex: '^/UserItems/Resume'
replacement: '/DiscontinueWatching/Override/UserItems/Resume'
---
http:
middlewares:
discontinue-watching-old:
replacePathRegex:
regex: '^/Users/([^/]+)/Items/Resume'
replacement: '/DiscontinueWatching/Override/Users/$1/Items/Resume'
location ~ ^/UserItems/Resume {
rewrite ^/UserItems/Resume /DiscontinueWatching/Override/UserItems/Resume break;
proxy_pass http://jellyfin_backend;
}
location ~ ^/Users/([^/]+)/Items/Resume {
rewrite ^/Users/([^/]+)/Items/Resume /DiscontinueWatching/Override/Users/$1/Items/Resume break;
proxy_pass http://jellyfin_backend;
}
This plugin can be easily integrated in other 3rd party clients.
GET /DiscontinueWatching
# returns an array of item ID which should be hidden from Continue Watching for the current user
POST /DiscontinueWatching/{itemId}
# adds the specified item ID to the denylist for the current user
With these routes, other clients can remove items from Continue Watching by calling the POST route. The items returned by the GET route should be hidden from Continue Watching list.
make build
All kind of contributions are welcome! Feel free to open issues or submit pull requests. If you want to contribute code, please make sure to install the pre-commit hooks:
pre-commit install
GPLv3
C#
60.7%
JavaScript
22.7%
HTML
8.1%
Shell
5.6%
Makefile
2.9%