Friends watch and chat about a scenic video together on a TV, laptop, and phone during a cozy movie night.
JellyChat is a third-party plugin that adds a text chat to Jellyfin's SyncPlay watch parties. It fills a gap in a feature that keeps playback in sync but gives viewers no way to talk. The details below come from MakeUseOf's account and the project's own GitHub documentation. They matter because the two sources disagree on version support, install paths and client support.

Friends watch and chat about a scenic video together on a TV, laptop, and phone during a cozy movie night. What JellyChat does​

SyncPlay is part of the Jellyfin core server. A Jellyfin core team member once put it plainly on the project forum: there is no plugin for SyncPlay, it is built into the core server. It keeps play, pause and seek aligned across a group. It has no built-in chat.

MakeUseOf's Shaheer Khan describes the result as separate streams that happen to be synced. In his setup, friends spread around the world reached his Jellyfin server over Tailscale, and everyone had to check phones or other windows to talk. He says that cost them scenes.

JellyChat addresses this directly. It adds a compact chat drawer to Jellyfin Web for people watching together in SyncPlay. The project says it stays inside Jellyfin and uses the active SyncPlay room as the chat room. It also says it does not need a separate chat server, WebSocket service or extra network port.

That last point is the real selling point. Many add-ons for media servers want a container or another listening port, and every extra port is something to maintain and expose. JellyChat avoids that.

Features​

According to the project's README, JellyChat offers:

  • Room chat with messages, replies, copy actions, and jump-to-original highlights.
  • Floating emoji reactions.
  • Playback activity rows for local play, pause, seek and start events.
  • Typing presence, plus unread and activity indicators while the drawer is closed.
  • A resizable desktop drawer. On phones, chat is a compact side drawer in landscape and a bottom sheet in portrait.
  • Optional per-room password protection.

MakeUseOf's author found the landscape layout small enough not to get in the way of playback.

Room passwords and ownership​

The README adds detail the review doesn't cover:

  • The person who creates the SyncPlay group owns its JellyChat room. They can enable, change or disable a password.
  • Protection applies only to JellyChat; locked users can continue using SyncPlay. The password locks the chat, not the movie.
  • Access is granted per Jellyfin session. Another device on the same account must unlock the chat separately.
  • If the owner leaves, ownership passes to the earliest remaining participant.
  • When the last participant leaves, room settings and history are discarded. Don't count on chat logs surviving.

Installing it​

The catalog route is the easiest, and it is the one the project recommends.

  1. In Jellyfin, go to Dashboard → Plugins → Repositories → Add.
  2. Name the repository JellyChat. Use the manifest URL on the project's GitHub raw-content path, itsmeares/jellychat/main/manifest.json.
  3. Save, install JellyChat from the catalog, then restart Jellyfin.

This is a third-party repository, not an official Jellyfin one. Treat it like any other plugin source and decide whether you trust it before adding it to a server your friends and family use.

Manual install paths​

If you install by hand, download the release ZIP that matches your Jellyfin version. Extract it into a folder named JellyChat inside the plugin directory, then restart. The project lists these common locations:

OSDocumented path
WindowsC:\ProgramData\Jellyfin\Server\plugins\JellyChat
Linux/var/lib/jellyfin/plugins/JellyChat
macOS~/.local/share/jellyfin/plugins/JellyChat

The README also says to use the plugin directory under your server's data path if it differs.

MakeUseOf gives different paths. It lists a macOS Application Support folder and a Linux path with a singular "plugin". It also muddles its own sentence by attaching the Linux path to Windows. Follow the project's README, and check your actual install, since Windows layouts vary by how Jellyfin was installed.

Version compatibility​

MakeUseOf says the plugin won't work on anything older than Jellyfin 10.11.x. The current README is more specific:

  • JellyChat v2.0.0 and later target Jellyfin 12.x, using ABI 12.0.0.0.
  • Jellyfin 10.11.x remains supported by JellyChat v1.2.0, using ABI 10.11.0.0. The README says the catalog selects the compatible release.

If you run 10.11.x, expect version 1.2.0 from the catalog. If you download manually, pick the ZIP for your server version rather than the newest one.

The evidence available doesn't give a release date for these compatibility details. Don't assume they changed on the day of the review.

Client support​

MakeUseOf says JellyChat works only in the web client and fails in apps like Infuse. That is partly right.

  • Native Jellyfin clients that do not use Jellyfin Web are not separate JellyChat targets. Infuse-style apps are out.
  • The README says Jellyfin Desktop uses the same injected web client, so it is supported. "Web only" is too strict.
  • To use it, start playback in Jellyfin Web, join or create a SyncPlay group, then open JellyChat from the header or video controls.
  • Chat follows the current SyncPlay room. If you leave the room, or Jellyfin can't resolve the session, the composer says chat is waiting for an active group.

For a mixed group, this means everyone who wants to chat needs a web-based client. Anyone on a native app can still watch in sync but won't see the conversation.

Caveats and alternatives​

  • SyncPlay reliability. The author says SyncPlay has uneven client support, transcoding problems and regressions between versions. He also says it pauses playback automatically when someone buffers. I found no independent confirmation of either claim. Treat them as his experience, and test with your own group.
  • Remote access. JellyChat doesn't solve it. The author uses Tailscale and prefers it to opening router ports or buying a domain. That is his arrangement, not a JellyChat requirement.
  • A young project. The repository shows 2 stars and 1 fork. That says little about quality, but it means a small user base. It began as a fork of AbhayVAshokan's Syncplay Chat plugin, which the README credits. It is licensed under GPL-3.0.
  • Other options. Other SyncPlay chat plugins exist. The original sends messages as Jellyfin toasts. A separate fork adds opt-in voice chat, but it needs the File Transformation plugin. MakeUseOf also mentions OpenWatchParty, which it says needs an extra Docker session server.

Troubleshooting​

The README points to troubleshooting notes for a missing chat button, cross-device messages, SyncPlay session resolution and reverse-proxy or base-path problems. The packet doesn't include those steps. A sensible first pass:

  1. Confirm you are in an active SyncPlay group.
  2. Confirm you are in Jellyfin Web or Jellyfin Desktop.
  3. Confirm the plugin installed and Jellyfin was restarted.
  4. Confirm the plugin release matches your server version.

Bottom line​

For a small group already using SyncPlay in a browser, JellyChat is a low-friction way to stop the phone-switching. Check your server version, use a web-based client, and remember the password protects only the chat.

 

References

  1. My Jellyfin watch parties felt incomplete until I added this chatroom plugin MakeUseOf 2026-11-05T13:00:17+00:00
  2. GitHub - itsmeares/jellychat: SyncPlay chat plugin for Jellyfin. · GitHub github.com