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)
Performance:
- Optimized with CSS classes instead of inline styles
- Batched DOM visibility changes
- Chunked API requests for parent series
- Cached surface detection
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 (requires Intro Skipper plugin)
- 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
๐ 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
โ๏ธ 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 Enhanced panel โ Settings
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
โญ 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)
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 Play or Transcoding, 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.