Syncplay Chat adds a chat button during SyncPlay sessions and sends chat messages as Jellyfin toasts to devices in the same SyncPlay group.
recording.mp4
- Jellyfin server compatible with
Jellyfin.Controller/Jellyfin.Model10.11.8. - .NET SDK 9.0 for building.
- Jellyfin File Transformation plugin installed and enabled.
- Without File Transformation,
sync-chat.jswill not be injected into the web client.
- Without File Transformation,
- In Jellyfin, go to Dashboard > Plugins > Catalog > ⚙️
- Click ➕ and give the repository a name (e.g., "Jellfin SyncPlay Chat").
- Set the Repository URL to:
https://raw.githubusercontent.com/AbhayVAshokan/jellyfin-syncplay-chat/master/manifest.json - Click Save.
- Go to the Catalog tab, find
SyncPlay Chatin the list, and click Install. - Restart your Jellyfin server to complete the installation.
From repository root:
./scripts/deploy-dev.shWhat it does:
- Publishes the solution in Debug.
- Copies publish output to Jellyfin plugin directory.
Environment overrides:
JELLYFIN_DATA_DIR="$HOME/Library/Application Support/jellyfin" \
PLUGIN_DIR="$HOME/Library/Application Support/jellyfin/plugins/SyncPlayChat" \
./scripts/deploy-dev.shNotes:
PLUGIN_DIRtakes precedence overJELLYFIN_DATA_DIR.- Default
JELLYFIN_DATA_DIRis$HOME/Library/Application Support/jellyfin. - Restart Jellyfin after deploy.
Build:
mise exec dotnet@9.0 -- dotnet publish Jellyfin.Plugin.SyncPlayChat/Jellyfin.Plugin.SyncPlayChat.csproj -c ReleaseOutput:
Jellyfin.Plugin.SyncPlayChat/bin/Release/net9.0/publish/
Install manually by copying publish output into a plugin folder such as:
- macOS:
$HOME/Library/Application Support/jellyfin/plugins/SyncPlayChat - Linux:
$HOME/.local/share/jellyfin/plugins/SyncPlayChat - Windows:
%LOCALAPPDATA%\jellyfin\plugins\SyncPlayChat
Then restart Jellyfin.
- Publish release output:
dotnet publish Jellyfin.Plugin.SyncPlayChat/Jellyfin.Plugin.SyncPlayChat.csproj -c Release
- Zip the contents of
Jellyfin.Plugin.SyncPlayChat/bin/Release/net9.0/publish/(not the folder itself):cd Jellyfin.Plugin.SyncPlayChat/bin/Release/net9.0/publish zip -r Jellyfin.Plugin.SyncPlayChat_<version>.zip .
- Create a new GitHub release with tag
v<version>(e.g.,v1.0.2.0). - Attach the zip file (
Jellyfin.Plugin.SyncPlayChat_<version>.zip) to the release. - Add release notes in the release body describing what changed.
- Publish the release.
The release.yaml workflow will automatically:
- Compute the checksum of the attached zip.
- Prepend a new version entry to
manifest.json. - Update
Directory.Build.propswith the new version. - Commit and push to
master.
Plugin ID: a69744cc-2281-48bf-adef-8e451a16ff71
- Chat button does not appear:
- Verify user is in an active SyncPlay group.
- Verify File Transformation plugin is installed and enabled.
- Restart Jellyfin after plugin deploy/update.
- Messages only appear on one device:
- Check browser console for
[SyncPlayChat]send failure logs. - Confirm target devices are active sessions visible to Jellyfin.
- Check browser console for
See LICENSE.