This repository packages the Segment Editor web app (built from intro-skipper/segment-editor) as a Jellyfin server plugin.
Add the Intro Skipper repository to Jellyfin, then install "Segment Editor" from the Catalog.
https://intro-skipper.org/manifest.json
Note
This URL returns a manifest based on the Jellyfin version used to access it. It will not return a manifest when viewed in a browser (no Jellyfin version is provided).
- Download the latest release zip.
- Extract
SegmentEditorPlugin.dll. - Copy it into your Jellyfin plugins directory:
- Windows:
%LocalAppData%\jellyfin\plugins\SegmentEditorPlugin\SegmentEditorPlugin.dll - Linux:
~/.local/share/jellyfin/plugins/SegmentEditorPlugin/SegmentEditorPlugin.dll - Docker: mount into the container's
/config/plugins/SegmentEditorPlugin/
- Windows:
- Restart Jellyfin.
dotnet restore SegmentEditorPlugin.sln
dotnet build SegmentEditorPlugin.sln -c ReleaseThen copy SegmentEditorPlugin/bin/Release/net9.0/SegmentEditorPlugin.dll to your Jellyfin plugins directory and restart Jellyfin.
- Open the Jellyfin web UI and navigate to "Segment Editor" from the main menu.
- You can also reach it from the Dashboard plugin page (Dashboard -> Plugins).
- Direct URL:
http://myserver:8096/SegmentEditor
- A new main menu entry: "Segment Editor"
- A plugin page that hosts the Segment Editor web UI
- Embedded static assets served by the Jellyfin server at
/SegmentEditor/*(no separate web hosting)
- Jellyfin Server 10.11.5 or newer
- The Intro Skipper plugin installed
- Jellyfin Server compatible with the referenced Jellyfin packages (see
SegmentEditorPlugin/SegmentEditorPlugin.csproj) - For building from source:
- .NET SDK 9.0 (see
.github/workflows/build.yml) - Node.js (LTS) +
pnpm10 (only if rebuilding frontend assets)
- .NET SDK 9.0 (see
Note
The plugin project currently targets net9.0 (see SegmentEditorPlugin/SegmentEditorPlugin.csproj).
Your Jellyfin server must be able to load net9.0 plugins.
The plugin embeds static files from SegmentEditorPlugin/dist/ as assembly resources. Those assets are typically produced by the upstream Segment Editor web app.
The CI workflow does the following (see .github/workflows/build.yml):
rm -rf ./SegmentEditorPlugin/dist/assets
mkdir -p ./SegmentEditorPlugin/dist/assets
cp ./segment-editor/dist-plugin/index.html ./SegmentEditorPlugin/dist/index.html
cp ./segment-editor/dist-plugin/favicon.png ./SegmentEditorPlugin/dist/favicon.png
cp -R ./segment-editor/dist-plugin/assets/. ./SegmentEditorPlugin/dist/assets/This repo includes a VS Code launch/task setup that will publish the plugin and copy it into your Jellyfin data directory.
- Configure paths in
.vscode/settings.json - Run the
Launchdebug configuration (uses.vscode/tasks.json+.vscode/launch.json)
build.ymlbuilds the plugin and uploads the compiled DLL as a workflow artifact.release.ymlcan auto-bumpDirectory.Build.props, rebuild assets from upstream, and publish a GitHub Release zip.
GPL-3.0. See LICENSE.
