Jellyfin Referenceable is a NuGet library that can be included in any Jellyfin plugin to make that plugin referenceable by other plugins. The intent is to allow plugins to be extensible in themselves, like Jellyfin itself is extensible.
The use cases for this can be seen in my other plugins file-transformation, plugin-pages and home-sections.
10.10.3
. Updates will follow to bring support to 10.10.4
and 10.10.5
which were both released during early development of the library.Add Jellyfin.Plugin.Referenceable
from NuGet from at least version 1.0.6
. All versions previous to this do not work correctly and have issues which were only discovered after making the release. OutputItemType
and GeneratePathProperty
must both be set on the reference. You can use the <PackageReference>
line below to ensure you are referencing in the correct way.
<PackageReference Include="Jellyfin.Plugin.Referenceable" Version="1.0.6" OutputItemType="Analyzer" GeneratePathProperty="true" />
IPluginServiceRegistrator
. With this plugin you should reference {Your.Plugin.Namespace}.Services.PluginServiceRegistrator
. This class is added as part of a source generator and handles the assembly conversion to ensure you are adding services in a referenceable way.0Harmony
into the Jellyfin instance. This is a patching library which allows developers to patch existing functionality using reflection. Care has been taken to ensure that patches can only be performed from this assembly and nothing else.On your GitHub page you can put an image shield like this to signify what version of this library you require.
<img alt="Shield Example" src="https://img.shields.io/badge/JF%20Referenceable-v1.0.6-blue" />
If any functionality is desired to be overridden from Jellyfin's server please open a feature-request
issue on GitHub.
Frequent questions will be added here as they are asked.
Ensure that you check the closed issues on GitHub before asking any questions as they may have already been answered.