Features Guide
Jellyfin Enhanced bundles dozens of features into one convenient plugin. This guide covers all available features and how to use them.
Content Management
Hidden Content System

Per-user content hiding with server-side storage and granular filtering controls.
Features:
- Hide specific movies/series from all browsing surfaces
- Hidden state stored server-side per-user
- Survives browser/device changes
- Management panel with search and bulk operations
- Granular filter toggles for different surfaces
- Undo functionality with toast notifications
Surfaces with Filtering:
- Library views
- Discovery pages
- Search results
- Calendar view
- Next Up section
- Continue Watching section
- Recommendations
- Requests page
How to Hide Content:
- Navigate to any item detail page
- Click the hide button (visibility_off icon)
- Choose hide scope:
- Global - Hide everywhere
- Episode - Hide this episode only
- Show - Hide entire series
- Next Up - Hide from Next Up only
- Continue Watching - Hide from Continue Watching only
- Confirm the action
Management Panel:
Access via: - Enhanced panel โ Settings โ Hidden Content - Sidebar navigation (if enabled) - Custom tab (if configured)
Management Features:
- View all hidden items
- Search hidden content
- Unhide individual items
- Unhide all items at once
- Group by series/movies
- Filter by scope
Configuration:
- Open Enhanced panel (press
?) - Go to Settings tab
- Find Hidden Content section
- Enable/disable the feature
- Configure filter toggles:
- Show hide buttons on Seerr items
- Show hide buttons in library views
- Show hide buttons on detail pages
- Filter library views
- Filter discovery pages
- Filter search results
- Filter calendar
- Filter Next Up
- Filter Continue Watching
- Filter recommendations
- Filter requests page
- Choose integration method:
- Plugin Pages (requires Plugin Pages plugin)
- Custom Tabs (requires Custom Tabs plugin)
Remove from Continue Watching / Next Up
A lightweight, non-destructive way to tidy the home screen. It adds a Remove option to an item's "โฏ" action-sheet menu for items in the Continue Watching and Next Up rows, hiding the item from that row without touching your playback position or watched state.

How It Works:
- Open an item's "โฏ" menu in the Continue Watching or Next Up row
- Click Remove from Continue Watching / Remove from Next Up
- The item disappears from that row โ your progress is left untouched
Highlights:
- Works on both Continue Watching and Next Up items, each removed from its own row
- Also appears in Jellyfin's long-press / multi-select menu, so touch devices with no "โฏ" button can remove items. Selecting a mix of rows (and other items) only ever removes the Continue Watching / Next Up ones
- Removing several at once shows a confirmation listing each item and the row it will be removed from
- Hidden state is stored server-side, per-user, so it applies across all your devices and survives reloads
- Undoable: removed items appear in the Hidden Content management page with an "Add back" button, and simply resuming a hidden item unhides it automatically
- Works on its own โ it does not require the full Hidden Content feature to be enabled
- Also applies to home screens rendered by the Home Screen Sections plugin, including its combined Continue Watching / Next Up row

Enable it:
- Open the Enhanced panel (press
?) โ Settings โ Add Remove from Continue Watching & Next Up Buttons
Admin: Other Users' Hidden Content

Administrators can review (and optionally manage) what other users have hidden, from the same Hidden Content page. Admin-only and enforced server-side; regular users never see it.
Features:
- User-filter dropdown to switch between My hidden content and any user who has hidden something
- Another user's list is read-only by default, with a "Viewing: OtherUser" badge
- An Edit toggle (when enabled) to unhide items for that user, or add new ones
- Add items by searching the library and Seerr, so you can hide titles that aren't in the library yet
- An admin never overwrites an item the user hid themselves
Configuration:
In Dashboard โ Plugins โ Jellyfin Enhanced โ Pages โ Hidden Content โ Admin Controls, the Let admins view and manage other users' hidden content toggle enables the whole feature (the user-filter dropdown and the Edit toggle). On by default; turn it off to keep hidden lists private.
Playback & Controls
Advanced Keyboard Shortcuts
Comprehensive hotkeys for navigation, playback control, and more.

Default Shortcuts:
Global:
/- Open SearchShift+H- Go to HomeD- Go to DashboardQ- Quick ConnectR- Play Random Item
Player:
A- Cycle Aspect RatioI- Show Playback InfoS- Subtitle MenuC- Cycle Subtitle TracksV- Cycle Audio Tracks+- Increase Playback Speed-- Decrease Playback SpeedR- Reset Playback SpeedB- Bookmark Current TimeP- Open Episode PreviewO- Skip Intro/Outro
Customization:
- Press
?to open the Enhanced panel - Go to Shortcuts tab
- Click on any key to set a custom shortcut
- Changes save automatically per user
Smart Bookmarks

Save timestamps and jump to specific moments with visual timeline markers.
Features:
- Create bookmarks during playback with
Bkey - Visual markers on video timeline
- Add custom labels to bookmarks
- Sync bookmarks across duplicate items (same TMDB/TVDB ID)
- Manage all bookmarks from Custom Tabs interface
- Export/import bookmark data
Usage:
- While watching, press
Bat any moment - Add an optional label (e.g., "Epic scene")
- Bookmark appears as marker on timeline
- Click marker to jump to that timestamp
Bookmark Management:
- Access via Custom Tabs plugin
- View all bookmarks across library
- Clean up orphaned bookmarks
- Detect and merge duplicates
- Adjust time offsets for synced bookmarks
Custom Pause Screen
Beautiful overlay with media info when you pause a video.

Displays:
- Media title and logo
- Year, rating, runtime
- Plot/description
- Current progress with time remaining
- Spinning disc animation
- Blurred backdrop
Smart Playback
Intelligent playback features for better viewing experience.
Features:
- Auto-pause - Pause when switching browser tabs
- Auto-resume - Resume when returning to tab
- Auto-skip intros/outros - Seamless binge-watching, driven by Jellyfin's own media segments (requires a segment provider such as Intro Skipper)
- Playback speed control - Adjust speed with keyboard shortcuts
- Auto Picture-in-Picture - Enter PiP mode when switching tabs
Configuration: Enable/disable in Enhanced panel โ Settings tab
How auto-skip works:
Auto-skip reads the media segments Jellyfin already stores for the item (the same data the native Skip Intro button uses) and seeks straight to the segment's end boundary.
- It skips to the exact end of the intro/outro segment, honouring the offsets the segment provider detected.
- It works in every language โ nothing depends on the skip button's English label.
- It works even with Jellyfin's own media-segment action set to None, where no skip button ever appears.
- If you seek back into an intro you just skipped, it stays put instead of yanking you forward again. Rewind to before the segment and play through it and it skips again, matching Jellyfin's native behaviour.
Note
Recap, Preview and Commercial segments are left to Jellyfin's own per-segment-type actions (Playback settings), which can prompt or skip them independently. The Enhanced toggles only cover intros and outros. Jellyfin stores media segments per item, not per version, so an item with multiple versions whose timings differ may see boundaries taken from the primary version.
Customizable Subtitles
Fine-tune subtitle appearance with presets and custom colors.
Presets:
- Multiple font families
- Size options (small, medium, large, extra large)
- Background opacity
- Text shadow options
- Position adjustments
Custom Colors:
- User-configurable text color with alpha support
- User-configurable background color with alpha support
- Live preview in settings
- Computed text shadow for transparent/black backgrounds
- Per-user customization
Usage:
- Open Enhanced panel โ Settings
- Find Subtitle Presets section
- Select your preferred preset options
- Or use Custom Colors section:
- Choose text color
- Adjust text alpha
- Choose background color
- Adjust background alpha
- Preview changes live
- Changes apply immediately
Discovery & Integration
Seerr Search Integration
Search, request, and discover media directly from Jellyfin's search interface.

Features:
- Search Seerr from Jellyfin search bar
- Request movies and TV shows
- View request status (pending, approved, available)
- Auto-add requested media to watchlist
- Sync Seerr watchlist to Jellyfin
Setup:
- Open plugin settings โ Seerr tab
- Check "Show Seerr Results in Search"
- Enter Seerr URL(s) (one per line)
- Enter Seerr API Key (from Seerr Settings โ General)
- Click "Test Connection"
- Enable optional features:
- Add Requested Media to Watchlist
- Sync Seerr Watchlist to Jellyfin
- Click Save
Requirements:
- Seerr instance with API access
- "Enable Jellyfin Sign-In" enabled in Seerr
- Jellyfin users imported into Seerr

Icon States:
| Icon | State | Description |
|---|---|---|
| Active | Seerr is successfully connected, and the current Jellyfin user is correctly linked to a Seerr user. Results from Seerr will load along with Jellyfin and requests can be made. |
|
| User Not Found | Seerr is successfully connected, but the current Jellyfin user is not linked to a Seerr account. Ensure the user has been imported into Seerr from Jellyfin. Results will not load. |
|
| Offline | The plugin could not connect to any of the configured Seerr URLs. Check your plugin settings and ensure Seerr is running and accessible. Results will not load. |
Seerr Item Details

View recommendations and similar items on detail pages.
Features:
- Recommended items section
- Similar items section
- Request directly from recommendations
- Exclude items already in library
- Real-time request status indicators
- Support for 4K requests
- TV season selection
Setup:
- Configure Seerr integration (see above)
- Check "Show Seerr Recommendations and Similar items"
- Optional: Enable "Exclude already in library items"
- Click Save
Discovery Pages:
- Genre-based discovery
- Network-based discovery
- Person-based discovery (actors, directors)
- Tag-based discovery
- All with TV/Movies/All filtering
.arr Links Integration

Quick access to Sonarr, Radarr, and Bazarr (admin only).
Features:
- Direct links to item pages in Sonarr/Radarr
- Bazarr subtitle management links
- Display *arr tags as clickable links
- Filter and customize tag display
Streaming Provider Lookup
See where else your media is available to stream.

Features:
- Multi-region support
- Buy, rent, and stream options
- Provider logos and links
- Powered by TMDB data
Usage:
- Enable in Enhanced panel โ Settings
- Select your region
- View providers on item detail pages
User Reviews

Jellyfin users can write their own reviews for movies, series, seasons, and episodes. Reviews are stored server-side and visible to all users.
Features:
- Write a review with a star rating (1-5) and optional text, or just a rating with no text
- Reviews appear in a dedicated "Reviews" section on item detail pages, listed before TMDB reviews
- Edit or delete your own review at any time
- Average user rating chip displayed next to TMDB/RT ratings in the item media info bar
- Average user rating also shown as a poster tag (
person_hearticon) on library cards when rating tags are enabled - Admin moderation โ admins can delete any user's review
How to write a review:
- Open any movie, series, season, or episode detail page
- Scroll to the Reviews section
- Click Add Review
- Select a star rating (optional) and write your review text (optional โ a rating alone is valid)
- Click the save icon
Setup (admin):
- Go to Dashboard โ Plugins โ Jellyfin Enhanced
- Navigate to the Enhanced Settings tab
- Enable "Show User Reviews"
- Optionally enable "Show User Rating on Posters" to display the average rating as a poster tag
- Optionally disable "Show User Rating Dash" to hide the
โplaceholder on posters when no ratings exist yet - Click Save
Note
The poster tag requires the user to also have Rating Tags enabled in the Enhanced panel (Settings tab).
Admin moderation:
Admins see a delete button on all reviews, not just their own. A confirmation dialog is shown before deletion. The action is logged and the section refreshes automatically.
Activity Feed
Shows recently watched, favorited, and reviewed titles across the server, so users can see what others are up to. Each viewer only ever sees activity for items they themselves have library access to - someone else's activity on a library you can't see never appears.
Features:
- Recently watched (full playback completions)
- Recently favorited
- Recently reviewed (see User Reviews above)
- Optional live "who's watching now" section, powered by the same data as the Active Streams Widget
- Per-viewer filtering: hidden or disabled review authors are excluded the same way they are in the Reviews section
- Reachable as a sidebar page (Plugin Pages), a home-page tab (native or Custom Tabs), or both
Setup:
- Go to Dashboard โ Plugins โ Jellyfin Enhanced
- Navigate to the Extras tab
- Enable "Enable Activity Feed"
- Choose what to show: Show recently watched, Show recently favorited, Show recently reviewed, Show Active Streams section
- Choose how it's reachable - pick one or more:
- Add Activity as a native Home tab - no external plugin needed
- Use Plugin Pages - adds a sidebar link (requires Plugin Pages)
- Use Custom Tabs - adds a home-page tab via Custom Tabs instead of the native one
- Click Save
Note
Turning the feature off does not delete any recorded activity - it just stops recording and stops showing the feed. Turning it back on picks up from where it left off.
TMDB Reviews
Display user reviews from TMDB on item pages.
Features:
- Full review text
- Author information
- Rating scores
- Review dates
- Expandable/collapsible reviews
Setup: Enable "Show TMDB Reviews" in Dashboard โ Plugins โ Jellyfin Enhanced โ Elsewhere Settings tab.
See Elsewhere Features for full details.
Visual Enhancements
Quality Tags
Display quality information (4K, HDR, Atmos) directly on posters.
Supported Tags:
- Resolution: 8K, 4K, 1080p, 720p, 480p, LOW-RES
- Video Format: AV1, HEVC, H265, VP9, H264
- Video Features: HDR, Dolby Vision, HDR10+, 3D
- Audio: ATMOS, DTS-X, TRUEHD, DTS, Dolby Digital+, 7.1, 5.1
- Media Stubs: BluRay, HD DVD, DVD, VHS, HDTV, Physical (for physical media files)
Genre Tags

Identify genres with themed icons on posters.
Features:
- Material Design icons for each genre
- Circular badges that expand on hover
- Show up to 3 genres per item
- Customizable position
Language Tags

Display available audio languages as country flags on posters.
Features:
- Country flag icons from flagcdn.com
- Show up to 3 unique languages
- Positioned bottom-left by default
- Also displays on item detail pages
- Regional variants get their own flag when the audio track is explicitly
tagged with a region:
pt-BRshows the Brazilian flag whilept/pt-PTkeep the Portuguese one,es-419/es-MX(Latin-American Spanish) show the Mexican flag,zh-Hantmaps to the Taiwanese flag, and so on. Media tagged with just a base language (pt,es,zh) keeps its default flag โ a regional variant is never guessed
Tagging matters
Region detection relies on the language tag stored in your media file
(pt-BR, es-MX, pobโฆ). Tracks tagged with only a base language code
can't be told apart, so they show the language's default flag.
Rating Tags
Show TMDB and Rotten Tomatoes ratings on posters and in player.

Features:
- TMDB star ratings
- Rotten Tomatoes critic scores (fresh/rotten icons)
- Stacked vertically on posters
- Optional OSD display during playback
- Color-coded by rating value
People Tags

Display age and birthplace information for cast members.
Features:
- Current age or age at death
- Age at item release
- Birthplace with country flag
- Deceased indicator (grayscale + cross)
- Caching for performance
Displays:
- Age chips (top-left of cast cards)
- Birthplace banner (bottom of cast cards)
- Deceased styling (grayscale filter)
Awards
Show award wins and nominations on item detail pages and person pages, sourced from Wikidata by TMDB id.
Features:
- Expandable banner below the Reviews section, showing total wins and nominations
- Full per-category breakdown when expanded: award name, Won/Nominated, year, and who it went to (or which title it was for, on a person's page)
- Recognized award-body icons (Oscars, Golden Globes, BAFTA, Emmys, SAG, Critics' Choice, National Board of Review, Saturn Award, Kids' Choice Awards, Toronto Film Critics, Cannes/Palme d'Or) shown next to each entry โ anything not in that list still shows correctly, just without a logo
- Works on movies, TV shows, and person (cast/crew) pages โ a person's page shows their full career award history, not just one title's
- No API key required โ Wikidata's public data endpoint is free and keyless
Setup:
- Go to Dashboard โ Plugins โ Jellyfin Enhanced
- Navigate to the Display tab
- Enable "Show Awards Banner"
- Click Save
Note
Coverage depends entirely on what's recorded in Wikidata for that title or person โ very well-covered for major releases and prestige awards, thinner for obscure titles or lesser-known award bodies. A title/person with no award data on Wikidata simply shows no banner.
Personal Scripts
These are optional scripts from the developer's personal collection.
๐ก Active Streams Widget
A live stream counter in the Jellyfin header that shows who is currently playing and what they're watching.
Features:
- Stream counter icon in the header, colour-coded by state
- Click to open a panel listing every active session
- Poster thumbnails and user avatars per session
- Direct Play vs Transcoding badges with codec and bitrate details
- Playback progress bar with current position and total duration
- Playing / Paused state badge per session
- Clickable title links to the item detail page
- Admin-only broadcast button to message all active sessions
- Polls every 15 seconds; updates automatically while the panel is open
Header icon states:
| Icon | State |
|---|---|
play_circle (no badge) |
No active streams |
person + badge 1 |
One stream playing |
group + badge count |
Multiple streams |
pause_circle + badge count |
All streams paused |
| Red icon | Failed to fetch sessions |
Session card details:
Each card in the panel shows:
- Poster thumbnail (series poster for episodes, movie poster for films)
- Title and episode info (S01E01 ยท Episode Name)
- Playing / Paused badge
- Progress bar with elapsed / total time
- Playback badges:
Direct PlayorTranscoding, video codec, bitrate, resolution, framerate - Transcode reason (e.g., "Video Codec Not Supported") when applicable
- User avatar, username, client name, and device name
- IP address (admins only)
Broadcast (admin only):
Admins see a megaphone icon (๐ฃ) in the panel header. Click it to open the broadcast form:
| Field | Required | Notes |
|---|---|---|
| Title | No | May not display on all clients (web UI typically ignores it) |
| Message | Yes | Always visible; sent to every active session |
| Timeout | Yes | Seconds before the notification auto-dismisses (default: 10) |
Setup:
- Go to Dashboard โ Plugins โ Jellyfin Enhanced
- Navigate to the Other Settings tab
- Enable "Active Streams Widget"
- Optional: Enable "Show to all users" to make the widget visible to non-admin users
Note
By default the widget is admin-only. Non-admin users see a read-only view (no broadcast button, no IP addresses) when "Show to all users" is enabled.
๐จ Colored Activity Icons
Replace default activity icons with Material Design icons.
![]()
Features:
- Custom colors for each activity type
- Material Design icon set
- Better visual distinction
Configuration:
Enable in Enhanced panel โ Settings โ Extras
๐ช Colored Ratings
Color-coded backgrounds for ratings on detail pages.

Features:
- Different colors per rating type
- Value-based color gradients
- Supports TMDB, IMDb, Rotten Tomatoes
Configuration: Enable in Enhanced panel โ Settings โ Extras
๐ผ๏ธ Login Image Display
Show user profile images on manual login page.

Features:
- Display user avatars
- Cleaner login interface
- Automatic fallback to text
Configuration:
Enable in Enhanced panel โ Settings โ Extras
๐งฉ Plugin Icons
Replace default plugin icons with Material Design icons.
![]()
Features:
- Custom icons for popular plugins
- Add custom config page links
- Improved dashboard aesthetics
Configuration: Enable in Enhanced panel โ Settings โ Extras
๐ญ Theme Selector
Choose from multiple Jellyfin theme color variants.

Features:
- Multiple color palettes (Aurora, Jellyblue, Ocean, etc.)
- Randomize theme daily option
- Quick theme switching
Configuration:
- Enable in Enhanced panel โ Settings โ Extras
- Select theme from dropdown
- Optional: Enable "Randomize Daily"
Customization
๐จ Custom Styling with CSS
Extensive CSS customization options. See CSS Customization Guide for more details.
Available Customizations:
- Pause Screen CSS
- Quality Tags CSS
- Genre Tags CSS
- Language Tags CSS
- Rating Tags CSS
- Rating Tag OSD CSS
- People Tags CSS
- ARR Tag Links CSS
- Enhanced Panel CSS
๐ผ๏ธ Custom Branding
Upload your own logos, banners, and favicon.
Features:
- Custom Jellyfin logo (header)
- Custom splash banners (light/dark themes)
- Custom favicon (browser tab icon)
- Files stored in plugin config folder
- Survives Jellyfin updates
Setup:
- Go to Dashboard โ Plugins โ Jellyfin Enhanced
- Navigate to Other Settings tab
- Find Custom Branding section
- Upload your custom images:
- Icon Transparent (header logo)
- Banner Light (dark theme splash)
- Banner Dark (light theme splash)
- Favicon (browser icon)
- Click Save
- Force refresh browser Ctrl+F5
Requirements:
- Requires file-transformation plugin
- Recommended image formats: PNG, SVG
- Files stored in:
/plugins/configurations/Jellyfin.Plugin.JellyfinEnhanced/custom_branding/
๐ Internationalization
Multi-language support with community translations and automatic caching.
Supported Languages:
How It Works:
- Automatically detects Jellyfin user profile language
- Fetches latest translations from GitHub on first load
- Caches translations for 24 hours in localStorage
- Per-version caching with automatic cleanup
- Falls back to bundled translations if offline
- Language code normalization (including region variants)
Translation Cache Refresh:
- Server-side scheduled task runs on plugin startup
- Automatically signals all clients to clear cached translations
- Ensures fresh translations after plugin updates
- No manual intervention required
Manual Cache Refresh:
- Open Enhanced panel (press
?) - Go to Settings tab
- Find translation settings
- Click "Refresh Translation Cache" button
Contributing Translations:
See the Contributing Translations section for details.