Community Apps

Browse our large and growing catalog of applications to run in your Unraid server. 

Download the Plugin  |  Become a Community Developer


Community-built

All the applications you love—built and maintained by a community member who understands what you need on Unraid. Love a particular app or plugin? Donate directly to the developer to support their work.

Created by a Legend

Andrew (aka Squid) has worked tirelessly to build and enhance the experience of Community Apps for users like you.

Moderated and Vetted

Moderators ensure that apps listed in the store offer a safe, compatible, and consistent experience. 


Plex-Auto-Languages's Icon

Plex Auto Languages enhances your Plex experience by automatically updating the audio and subtitle settings of TV shows based on your preferences. Similar to Netflix, it remembers your language preferences for each TV show without interfering with your global settings or other users preferences.

PlexAniBridge's Icon

PlexAniBridge is a tool designed to keep your AniList profile automatically synced with your Plex activity. Whether you're tracking your watch progress, ratings, or reviews, PlexAniBridge has you covered.

PlexAniSync's Icon

Plexanisync lets you synchronize your plex library with anilist, plugin from RickDB, Docker-Hub version maintained by Mizz141. A premade custom_mappings.yaml file is available on github: https://github.com/mizz141/PlexAniSync-Mappings along with additional installation instructions (Highly Recommended)

post-recording's Icon

Watches for .ts files made by Live TV recordings, convert them to a friendly format, extract .srt file, add chapters with comchap or remove them with comcut. Tested with Emby recordings. Nvidia GPU Use Using the Unraid Nvidia Plugin to install a version of Unraid with the Nvidia Drivers installed and add --runtime=nvidia to "extra parameters" (switch on advanced view) and copy your GPU UUID to NVIDIA_VISIBLE_DEVICES --------New Variable added --- verify your old custom.sh--------

Preroll-Plus's Icon

Preroll Plus is a dynamic preroll updater and scheduler. This app bypasses the limitations Plex has for combining random and sequential prerolls (using the "," and ";" delimiters). It works by using Plex webhooks to update the preroll string in Plex whenever a movie is started, allowing file sets that require randomization to remain randomized while maintaining a broader sequence.

RejettoHFS3's Icon

Rejeto HFS Http File Server YOU MUST ASSIGN A STATIC IP TO THE DOCKER FOR HFS3 TO WORK. Please Read: https://raw.githubusercontent.com/bmartino1/unraid-docker-templates/refs/heads/main/Guides/Quick%20Start%20Guide%20For%20Rejeto%20HFS.txt Access via web your files directly from your disk You be the server! Share files fresh from your disk, with unlimited space and bandwidth. Fast! Try zipping 100GB, downloads starts immediately! Share even a single file with our virtual file system, even with a different name, all without touching the real file. Present things the way you want! Watch all activities in real-time. Control bandwidth: decide how much to give. No intermediaries: give a huge file to your friend without waiting for it to be uploaded on a server first. Intelligent: HFS tries to detect problems and suggest solutions. Expandable: find the right plugin, or make you own Easily run a web page, mange users groups and share a file thorugh your Web Browser. Docker Compose Varient https://github.com/bmartino1/hfs-docker Other Environment HFS Variables This docker image doesn't have any specific env. Every env starting with HFS_ will be passed to HFS. Read (https://github.com/rejetto/hfs/blob/main/config.md#how-to-modify-configuration) page to learn more about how envs work. Docker Volumes and Mounts You can mount as many volumes as you wish in docker to persist the file storage, but keep in mind that if you want to persist HFS configurations as well you must mount a volume that points to the cwd of HFS (which you can override with HFS_CWD env). The default hfs cwd of the container is /home/hfs/.hfs HTTPS make certs Recommend to use admin interface... openssl req -x509 -newkey rsa:4096 -keyout /mnt/user/appdata/hfs/certificate/privkey.key -out /mnt/user/appdata/hfs/certificate/cert.pem -days 365 -nodes

sagetvopen-sagetv-server-java11's Icon

sagetvopen-sagetv-server-java11

Media ApplicationsMusic, Photos, Video, Media ServersMusic, Photos, Video

SageTV is an Open Source PVR and Media Player Configuration /opt/sagetv - This is the base directory for the server and other sagetv related files. Under this location there can be a 'server' directory and if the existing 'server' directory exists it will be upgraded. /var/media - Path for sagetv recordings and videos. Under this directory there should be (or will be created) a 'tv' directory where SageTV recordings will get recorded. /var/tv - Path for tv recordings if you want to store those in an alternate location. /var/mediaext - Path for extra media files. This can be whatever you want, but you will configure SageTV to look for videos, music, pictures, etc from this location. Permissions PUID - Should be the 'nobody' user for unRAID PGID - Should be the 'users' group for unRAID VIDEO_GUID - Should be the 'video' group for unRAID (used if you use PCI/USB video capture devices) Notes SageTV will need to use 'host' or 'br0' (set a unique IP) networking, so while the ports are defined, they are not required to be edited. Without 'host' or 'br0', sagetv will think your network clients are connecting as remote placeshifters, and present the placeshifter login. If using br0 mode (preferred) as the IP is unique the WebUI port of 8080 will not have any issues. If running in host mode, make sure you don't have other docker containers that are using port 8080. If you do, then EITHER change SageTV Jetty Port (in plugin configuration) after install, or, update the other docker containers to NOT use port 8080. On every Docker start, it will check for a new version of SageTV and install it, if it exists. You can force it to stay on a sepcific version by setting the Version in the template. The Version must match exactly the version tag from the github releases. There are Java 8, 11, and 16 version of these containers. Java 8 will be the default moving forward, but it currently has issues with the the /apps/ path in the Jetty Web UI. Container version: 2.0.7

sagetvopen-sagetv-server-java16's Icon

sagetvopen-sagetv-server-java16

Media ApplicationsMusic, Photos, Video, Media ServersMusic, Photos, Video

SageTV is an Open Source PVR and Media Player Configuration /opt/sagetv - This is the base directory for the server and other sagetv related files. Under this location there can be a 'server' directory and if the existing 'server' directory exists it will be upgraded. /var/media - Path for sagetv recordings and videos. Under this directory there should be (or will be created) a 'tv' directory where SageTV recordings will get recorded. /var/tv - Path for tv recordings if you want to store those in an alternate location. /var/mediaext - Path for extra media files. This can be whatever you want, but you will configure SageTV to look for videos, music, pictures, etc from this location. Permissions PUID - Should be the 'nobody' user for unRAID PGID - Should be the 'users' group for unRAID VIDEO_GUID - Should be the 'video' group for unRAID (used if you use PCI/USB video capture devices) Notes SageTV will need to use 'host' or 'br0' (set a unique IP) networking, so while the ports are defined, they are not required to be edited. Without 'host' or 'br0', sagetv will think your network clients are connecting as remote placeshifters, and present the placeshifter login. If using br0 mode (preferred) as the IP is unique the WebUI port of 8080 will not have any issues. If running in host mode, make sure you don't have other docker containers that are using port 8080. If you do, then EITHER change SageTV Jetty Port (in plugin configuration) after install, or, update the other docker containers to NOT use port 8080. On every Docker start, it will check for a new version of SageTV and install it, if it exists. You can force it to stay on a sepcific version by setting the Version in the template. The Version must match exactly the version tag from the github releases. There are Java 8, 11, and 16 version of these containers. Java 8 will be the default moving forward, but it currently has issues with the the /apps/ path in the Jetty Web UI. Container version: 2.0.7

sagetvopen-sagetv-server-java8's Icon

sagetvopen-sagetv-server-java8

Media ApplicationsMusic, Photos, Video, Media ServersMusic, Photos, Video

SageTV is an Open Source PVR and Media Player Configuration /opt/sagetv - This is the base directory for the server and other sagetv related files. Under this location there can be a 'server' directory and if the existing 'server' directory exists it will be upgraded. /var/media - Path for sagetv recordings and videos. Under this directory there should be (or will be created) a 'tv' directory where SageTV recordings will get recorded. /var/tv - Path for tv recordings if you want to store those in an alternate location. /var/mediaext - Path for extra media files. This can be whatever you want, but you will configure SageTV to look for videos, music, pictures, etc from this location. Permissions PUID - Should be the 'nobody' user for unRAID PGID - Should be the 'users' group for unRAID VIDEO_GUID - Should be the 'video' group for unRAID (used if you use PCI/USB video capture devices) Notes SageTV will need to use 'host' or 'br0' (set a unique IP) networking, so while the ports are defined, they are not required to be edited. Without 'host' or 'br0', sagetv will think your network clients are connecting as remote placeshifters, and present the placeshifter login. If using br0 mode (preferred) as the IP is unique the WebUI port of 8080 will not have any issues. If running in host mode, make sure you don't have other docker containers that are using port 8080. If you do, then EITHER change SageTV Jetty Port (in plugin configuration) after install, or, update the other docker containers to NOT use port 8080. On every Docker start, it will check for a new version of SageTV and install it, if it exists. You can force it to stay on a sepcific version by setting the Version in the template. The Version must match exactly the version tag from the github releases. There are Java 8, 11, and 16 version of these containers. Java 8 will be the default moving forward, but it currently has issues with the the /apps/ path in the Jetty Web UI. Container version: 2.0.7

sagetvopen-sagetv-server-opendct-java11's Icon

sagetvopen-sagetv-server-opendct-java11

Media ApplicationsMusic, Photos, Video, Media ServersMusic, Photos, Video

SageTV is an Open Source PVR and Media Player including OpenDCT: An open source digital cable tuner network encoder for SageTV Configuration /opt/sagetv - This is the base directory for the server and other sagetv related files. Under this location there can be a 'server' directory and if the existing 'server' directory exists it will be upgraded. /var/media - Path for sagetv recordings and videos. Under this directory there should be (or will be created) a 'tv' directory where SageTV recordings will get recorded. /var/tv - Path for tv recordings if you want to store those in an alternate location. /var/mediaext - Path for extra media files. This can be whatever you want, but you will configure SageTV to look for videos, music, pictures, etc from this location. Permissions PUID - Should be the 'nobody' user for unRAID PGID - Should be the 'users' group for unRAID VIDEO_GUID - Should be the 'video' group for unRAID (used if you use PCI/USB video capture devices) Notes SageTV will need to use 'host' or 'br0' (set a unique IP) networking, so while the ports are defined, they are not required to be edited. Without 'host' or 'br0', sagetv will think your network clients are connecting as remote placeshifters, and present the placeshifter login. If using br0 mode (preferred) as the IP is unique the WebUI port of 8080 will not have any issues. If running in host mode, make sure you don't have other docker containers that are using port 8080. If you do, then EITHER change SageTV Jetty Port (in plugin configuration) after install, or, update the other docker containers to NOT use port 8080. On every Docker start, it will check for a new version of SageTV and install it, if it exists. You can force it to stay on a sepcific version by setting the Version in the template. The Version must match exactly the version tag from the github releases. There are Java 8, 11, and 16 version of these containers. Java 8 will be the default moving forward, but it currently has issues with the the /apps/ path in the Jetty Web UI. Container version: 2.0.7

sagetvopen-sagetv-server-opendct-java16's Icon

sagetvopen-sagetv-server-opendct-java16

Media ApplicationsMusic, Photos, Video, Media ServersMusic, Photos, Video

SageTV is an Open Source PVR and Media Player including OpenDCT: An open source digital cable tuner network encoder for SageTV Configuration /opt/sagetv - This is the base directory for the server and other sagetv related files. Under this location there can be a 'server' directory and if the existing 'server' directory exists it will be upgraded. /var/media - Path for sagetv recordings and videos. Under this directory there should be (or will be created) a 'tv' directory where SageTV recordings will get recorded. /var/tv - Path for tv recordings if you want to store those in an alternate location. /var/mediaext - Path for extra media files. This can be whatever you want, but you will configure SageTV to look for videos, music, pictures, etc from this location. Permissions PUID - Should be the 'nobody' user for unRAID PGID - Should be the 'users' group for unRAID VIDEO_GUID - Should be the 'video' group for unRAID (used if you use PCI/USB video capture devices) Notes SageTV will need to use 'host' or 'br0' (set a unique IP) networking, so while the ports are defined, they are not required to be edited. Without 'host' or 'br0', sagetv will think your network clients are connecting as remote placeshifters, and present the placeshifter login. If using br0 mode (preferred) as the IP is unique the WebUI port of 8080 will not have any issues. If running in host mode, make sure you don't have other docker containers that are using port 8080. If you do, then EITHER change SageTV Jetty Port (in plugin configuration) after install, or, update the other docker containers to NOT use port 8080. On every Docker start, it will check for a new version of SageTV and install it, if it exists. You can force it to stay on a sepcific version by setting the Version in the template. The Version must match exactly the version tag from the github releases. There are Java 8, 11, and 16 version of these containers. Java 8 will be the default moving forward, but it currently has issues with the the /apps/ path in the Jetty Web UI. Container version: 2.0.7

sagetvopen-sagetv-server-opendct-java8's Icon

sagetvopen-sagetv-server-opendct-java8

Media ApplicationsMusic, Photos, Video, Media ServersMusic, Photos, Video

SageTV is an Open Source PVR and Media Player including OpenDCT: An open source digital cable tuner network encoder for SageTV Configuration /opt/sagetv - This is the base directory for the server and other sagetv related files. Under this location there can be a 'server' directory and if the existing 'server' directory exists it will be upgraded. /var/media - Path for sagetv recordings and videos. Under this directory there should be (or will be created) a 'tv' directory where SageTV recordings will get recorded. /var/tv - Path for tv recordings if you want to store those in an alternate location. /var/mediaext - Path for extra media files. This can be whatever you want, but you will configure SageTV to look for videos, music, pictures, etc from this location. Permissions PUID - Should be the 'nobody' user for unRAID PGID - Should be the 'users' group for unRAID VIDEO_GUID - Should be the 'video' group for unRAID (used if you use PCI/USB video capture devices) Notes SageTV will need to use 'host' or 'br0' (set a unique IP) networking, so while the ports are defined, they are not required to be edited. Without 'host' or 'br0', sagetv will think your network clients are connecting as remote placeshifters, and present the placeshifter login. If using br0 mode (preferred) as the IP is unique the WebUI port of 8080 will not have any issues. If running in host mode, make sure you don't have other docker containers that are using port 8080. If you do, then EITHER change SageTV Jetty Port (in plugin configuration) after install, or, update the other docker containers to NOT use port 8080. On every Docker start, it will check for a new version of SageTV and install it, if it exists. You can force it to stay on a sepcific version by setting the Version in the template. The Version must match exactly the version tag from the github releases. There are Java 8, 11, and 16 version of these containers. Java 8 will be the default moving forward, but it currently has issues with the the /apps/ path in the Jetty Web UI. Container version: 2.0.7

SeaFile's Icon

Seafile is an open source enterprise file sync and share platform with high reliability and performance. Seafile provides similar feature set to Dropbox, Google Drive and Office 365, while it allows users to host the server on their own hardware. The core feature of Seafile is file sync and share. It provides client apps for most operating systems like Windows, Mac OS, Linux, iOS and Android. It also provides a user-friendly web interface for accessing files in a web browser.

shinobipro's Icon

Default tag is spaceinvaderone/shinobi_pro_unraid:latest but this can be changed to :nvidia To use your Nvidia GPU for encoding 1. Use the Nvidia Unraid build of Unraid 2. Set the repository tag to :nvidia ( spaceinvaderone/shinobi_pro_unraid:latest ) 3. Under Extra Parameters: add --runtime=nvidia 4. Set template field Nvidia build only -- Driver capabilities: to all 5. Set template field Nvidia build only -- GPU ID: to your GPU id from the nvida unraid plugin Shinobi is the Open Source CCTV Solution written in Node.JS. Designed with multiple account system, Streams by WebSocket, and Save to WebM. Shinobi can record IP Cameras and Local Cameras. Features Time-lapse Viewer (Watch a hours worth of footage in a few minutes) 2-Factor Authentication Defeats stream limit imposed by browsers With Base64 (Stream Type) and JPEG Mode (Option) Records IP Cameras and Local Cameras Streams by WebSocket, HLS (includes audio), and MJPEG Save to WebM and MP4 Can save Audio Push Events - When a video is finished it will appear in the dashboard without a refresh Region Motion Detection (Similar to ZoneMinder Zone Detection) Represented by a Motion Guage on each monitor "No Motion" Notifications 1 Process for Each Camera to do both, Recording and Streaming Timeline for viewing Motion Events and Videos Sub-Accounts with permissions Monitor Viewing Monitor Editing Video Deleting Separate API keys for sub account Cron Filters can be set based on master account Stream Analyzer built-in (FFprobe GUI) Monitor Groups Can snapshot images from stream directly Lower Bandwith Mode (JPEG Mode) Snapshot (cgi-bin) must be enabled in Monitor Settings Control Cameras from Interface API Get videos Get monitors Change monitor modes : Disabled, Watch, Record Embedding streams Dashboard Framework made with Google Material Design Lite, jQuery, and Bootstrap

shoko-server's Icon

shoko-server

Media ApplicationsVideo

Shoko started as a small AniDB Mylist program to a full blown client-server architecture Have a large Anime Library? File management is a tedious process, so why not let Shoko handle that? Within FIVE minutes, you’ll have Shoko up and running and populating your collection database with information about the various series and episodes in your collection. For those looking for more advanced options, we offer a wide range of utilities in Shoko Desktop to configure your collection workflow to your liking. Please note, Shoko does not provide any way to download files, stream files from streaming sites or access files that are not part of your perosnal collection.

sickchill's Icon

Sickchill(https://github.com/SickChill/SickChill) is an Automatic Video Library Manager for TV Shows. It watches for new episodes of your favorite shows, and when they are posted it does its magic.

sonarr's Icon

Sonarr(https://sonarr.tv/) (formerly NZBdrone) is a PVR for usenet and bittorrent users. It can monitor multiple RSS feeds for new episodes of your favorite shows and will grab, sort and rename them. It can also be configured to automatically upgrade the quality of files already downloaded when a better quality format becomes available.