Skip to content

jon4hz/jellyfin-plugin-jellysleep

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

56 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŒ™ Jellysleep

Sleep timer plugin for Jellyfin that automatically stops playback after a specified time or episodes.

Jellysleep Plugin Logo

โœจ Features

  • Timer-based Sleep: Set sleep timers for 15 minutes, 30 minutes, 1 hour, or 2 hours
  • Episode-based Sleep: Stop playback after the current episode ends
  • Per-user, Per-device: Each user session can have its own independent sleep timer
  • Auto-pause: Automatically pauses playback when the timer expires
  • Web Interface: Easy-to-use sleep timer controls directly in the Jellyfin web player

๐Ÿ“‹ Table of Contents

๐Ÿ“ฑ Supported Devices

This plugin works by injecting custom JavaScript into Jellyfin's web interface. It is compatible with:

  • โœ… Jellyfin Web UI (browser access)
  • โœ… Jellyfin Android App (uses embedded web UI)
  • โœ… Jellyfin iOS App (uses embedded web UI)
  • โœ… Jellyfin Desktop Apps (Flatpak, etc. - uses embedded web UI)
  • โณ๏ธ Streamyfin (work in progress)
  • โŒ Android TV App (uses native interface, cannot be modified)
  • โŒ Other native apps that don't use the web interface

๐Ÿ“ฆ Installation

Requirements

This plugin requires the following plugins to be installed as well:

Install Plugin

  1. Open your Jellyfin server's admin dashboard
  2. Navigate to Plugins โ†’ Catalog
  3. Click the Add Repository button
  4. Add this repository URL:
    https://raw.githubusercontent.com/jon4hz/jellyfin-plugin-jellysleep/main/manifest.json
    
  5. Find Jellysleep in the plugin catalog and install it
  6. Restart your Jellyfin server
  7. Enable the plugin in Plugins โ†’ My Plugins

๐Ÿš€ Usage

Once installed and enabled, you'll see a sleep timer button (moon icon) in the Jellyfin web player controls. Click it to:

  • Set a duration-based timer (15min, 30min, 1h, 2h)
  • Set an episode-based timer (stops after current episode)
  • Cancel active timers

๐Ÿ› ๏ธ Development

Building

dotnet build

Packaging

make package

The plugin follows Jellyfin's plugin architecture and integrates with the session management system to track playback state and automatically pause content when timers expire.

๐Ÿ“œ License

GPLv3

About

๐ŸŒ™ A sleep timer plugin for Jellyfin.

Topics

Resources

License

Stars

Watchers

Forks

Contributors

โšก