Introduce the ability to select the media server type on the setup page. Users can now choose their preferred media server (e.g., Plex through the Plex sign-in or Emby/Jellyfin sign-in to select either Emby or Jellyfin). The selected media server type is then reflected in the application settings. This enhancement provides users with increased flexibility and customization options during the initial setup process, eliminating the need to rely on environment variables (which cannot be set if using platforms like snaps). Existing Emby users, who use the environment variable, should log out and log back in after updating to set their mediaServerType to Emby. BREAKING CHANGE: This commit deprecates the JELLYFIN_TYPE variable to identify Emby media server and instead rely on the mediaServerType that is set in the `settings.json`. Existing environment variable users can log out and log back in to set the mediaServerType to `3` (Emby).
Jellyseerr is a free and open source software application for managing requests for your media library. It is a a fork of Overseerr built to bring support for Jellyfin & Emby media servers!
The original Overseerr team have been busy and Jellyfin/Emby support aren't on their roadmap, so we started this project as we wanted to bring the Overseerr experience to the Jellyfin/Emby Community!
Current Features
-
Full Jellyfin/Emby/Plex integration. Authenticate and manage user access with Jellyfin/Emby/Plex!
-
Supports Movies, Shows, Mixed Libraries!
-
Ability to change email addresses for smtp purposes
-
Ability to import all jellyfin/emby users
-
Easy integration with your existing services. Currently, Jellyseerr supports Sonarr and Radarr. More to come!
-
Jellyfin/Emby/Plex library scan, to keep track of the titles which are already available.
-
Customizable request system, which allows users to request individual seasons or movies in a friendly, easy-to-use interface.
-
Incredibly simple request management UI. Don't dig through the app to simply approve recent requests!
-
Granular permission system.
-
Support for various notification agents.
-
Mobile-friendly design, for when you need to approve requests on the go!
(Upcoming Features include: Multiple Server Instances, and much more!)
With more features on the way! Check out our issue tracker to see the features which have already been requested.
Getting Started
Pre-requisite (Important)
On Jellyfin/Emby, ensure the settings > Home > Automatically group content from the following folders into views such as 'Movies', 'Music' and 'TV' is turned off
Launching Jellyseerr using Docker (Recommended)
Check out our dockerhub for instructions on how to install and run Jellyseerr: https://hub.docker.com/r/fallenbagel/jellyseerr
Building from source (ADVANCED):
Windows
Pre-requisites:
- Nodejs v18
- Yarn
- Download/git clone the source code from the github (Either develop branch or main for stable)
npm i -g win-node-env
set CYPRESS_INSTALL_BINARY=0
yarn install --frozen-lockfile --network-timeout 1000000
yarn run build
yarn start
(you can use task scheduler to run a bat script with @echo off and yarn start to run jellyseerr in the background)
to set env variables such as JELLYFIN_TYPE=emby create a file called .env in the root directory of jellyseerr
Linux
Pre-requisites:
- Nodejs v18
- Yarn (on debian based distros, the package manager provided
yarnis different and is a package called cmdlet. You can remove that usingapt-remove cmdletthen install yarn usingnpm install -g yarn) - Git
Steps:
- Assuming you want the root folder for the jellyseerr source code to be cloned to
/opt
cd /opt
- Then clone the follow commands to clone and checkout to the stable version
git clone https://github.com/Fallenbagel/jellyseerr.git && cd jellyseerr
git checkout main
- Then install the dependencies and build the dist
CYPRESS_INSTALL_BINARY=0 yarn install --frozen-lockfile --network-timeout 1000000
yarn run build
-
Now you can start jellyseerr using
yarn startand opening http://localhost:5055 in your browser. -
If you want to run jellyseerr as a Systemd-service:
- assuming jellyseerr was cloned to
/opt/ - first create the environmentfile at
/etc/jellyseerr/jellyseerr.conf
Environmentfile:
# Jellyseerr's default port is 5055, if you want to use both, change this.
# specify on which port to listen
PORT=5055
# specify on which interface to listen, by default jellyseerr listens on all interfaces
#HOST=127.0.0.1
# Uncomment if your media server is emby instead of jellyfin.
# JELLYFIN_TYPE=emby
- Then run the command
which nodeto find your node path (assuming it's at/usr/bin/node) - Then create the service file using
sudo systemctl edit jellyseerr.serviceor creating and editing a file at/etc/systemd/system/jellyseerr.service
Service file contents:
[Unit]
Description=Jellyseerr Service
Wants=network-online.target
After=network-online.target
[Service]
EnvironmentFile=/etc/jellyseerr/jellyseerr.conf
Environment=NODE_ENV=production
Type=exec
Restart=on-failure
WorkingDirectory=/opt/jellyseerr
ExecStart=/usr/bin/node dist/index.js
[Install]
WantedBy=multi-user.target
Packages:
Archlinux: AUR Nixpkg: Nixpkg Snap: Snap
Preview
Support
- You can get support on Discord.
- You can ask questions in the Help category of our GitHub Discussions.
- Bug reports and feature requests can be submitted via GitHub Issues.
API Documentation
You can access the API documentation from your local Jellyseerr install at http://localhost:5055/api-docs
Community
You can ask questions, share ideas, and more in GitHub Discussions.
If you would like to chat with other members of our growing community, join the Jellyseerr Discord server!
Our Code of Conduct applies to all Jellyseerr community channels.
Contributing
You can help improve Jellyseerr too! Check out our Contribution Guide to get started.
Contributors ✨
Thanks goes to these wonderful people from Overseerr (emoji key) and all those that contributed directly to Jellyseerr: