CLI tool
Martchus/syncthingtray avatar
Martchus/syncthingtray

Syncthing Tray: a Qt tray icon and Dolphin/Plasma integration for Syncthing

Tray application and Dolphin/Plasma integration for Syncthing

2,959 stars71 forksC++NOASSERTION

At a glance

What is it?
Syncthing Tray puts Syncthing status in the system tray and adds Dolphin, Plasma, Android and CLI front ends. It does not replace the web UI, and its platform coverage is broader than its testing.
Who is it for?
Adopt Syncthing Tray if you already run Syncthing and want tray status, folder actions in Dolphin, or a Plasma widget without opening the web UI. Skip it if you need a full management interface or you are on a tray that cannot show its window, such as COSMIC, where only the simple menu works.
Can I use it commercially?
Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
Is it still maintained?
Yes. The repository last received commits 1 day ago.
What is it written in?
Mainly C++, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What Syncthing Tray adds to a Syncthing install

Syncthing already ships a web UI. Syncthing Tray does not try to replace it. The README lists the tray icon, a context menu extension for the Dolphin file manager, a Plasmoid for KDE Plasma, a command-line interface, an Android app and a Qt-ish C++ library as the integrations it provides. The feature list is explicit that the tray gives "quick access to the most used features but no full replacement of the official web-based UI".

The audience is therefore narrow and specific: people who already have Syncthing running and want status and a few actions closer to hand. The tray icon shows the overall status. The menu exposes folder and device state, traffic statistics, ongoing downloads, the Syncthing log, rescan and pause/resume actions, and recent change history. There is a wizard for setup, autostart configuration and a launcher for Syncthing itself.

Two features are less common in tray wrappers. The first is a browser for the global file tree with selection of items to add to ignore patterns. The second is conditional suspension of synchronization: metered network connection, power saving mode, running on battery, or battery level below a threshold. The README does not describe how those conditions are detected, so treat the exact behaviour as something to confirm on your own hardware.

How the tray, Plasmoid and Dolphin plugin fit together

The repository layout shows the split plainly. Top-level directories include tray/, plasmoid/, fileitemactionplugin/, syncthingconnector/, syncthingmodel/, syncthingwidgets/, cli/, syncthing/ and testhelper/. The connector and model directories are where the Syncthing-facing logic lives; the tray, Plasmoid and Dolphin plugin are separate front ends over it.

Syncthing Tray talks to a Syncthing instance rather than embedding one. The README answers the obvious question directly: Syncthing Tray does not launch Syncthing itself by default, and "there should be no interference with your existing Syncthing installation". If you are happy with how Syncthing starts on your system, you tell Syncthing Tray how to reach it. There is a launcher for Syncthing as an optional feature, and a separate item in the feature list about building Syncthing as a library to run it in the same process as the tray or GUI. Those are opt-in paths, not the default.

One consequence is that Syncthing Tray monitors multiple instances and lets you switch between them quickly. That follows from the connector design: the UI is a client of one or more connections, not a supervisor of a single bundled daemon.

Installing Syncthing Tray and taking the first action

The project points at its own download section rather than a single package command. Official binaries are listed for Windows (i686, x86_64 and aarch64), GNU/Linux (x86_64) and Android (x86_64 and aarch64), available from the website and the GitHub release section. The README also says further repositories exist for some GNU/Linux distributions, and that other distributors provide their own binaries. Because the README does not give one canonical install command, check the download section of the project website for your platform before copying anything.

Once installed, the wizard is the intended starting point. The README lists "Wizard for a quick setup" among the features, and the FAQ section of the README covers whether the tool launches Syncthing itself. The point of the wizard is to point the tray at your existing instance.

For scripted use, the project ships syncthingctl, described as a "simple command line utility" complementing the official Syncthing CLI. The README lists checking status, triggering rescan/pause/resume/restart, waiting for idle, viewing and modifying raw configuration, and bash completion with support for folder and device names. The exact syntax lives in docs/cli.md, which is not reproduced here.

bash
syncthingctl status

The README does not print this invocation verbatim; it lists "Check status" as one of the utility's functions. Read docs/cli.md for the real argument names before relying on it in a script.

On KDE Plasma 5 and 6 there is a choice between the Qt Widgets version and the native Plasmoid. The README warns that the latest Plasmoid generally requires the latest Plasma 5 or 6, since earlier versions are not tested, and that you should use the Qt Widgets version on other Plasma versions.

Where Syncthing Tray breaks down or is the wrong choice

The clearest limitation is the system tray itself. The README states that limitations of your tray might affect Syncthing Tray, and gives a concrete example: under the GNOME appindicator extension, the Syncthing Tray UI shown in the screenshots is only accessible by double-clicking the icon. On COSMIC, if the tray cannot show the UI at all, you are left with the tray icon and basic menu functionality.

Wayland has a known problem. The README says there will be positioning issues under Wayland-based desktops, and points to docs/known_bugs_and_workarounds.md. The Plasmoid is stated not to be affected. If you are on Sway, Waybar or a similar setup, the caveats in the platform list apply to you.

The platform list is also not a support contract. The README says the list of known-working environments "does not mean Syncthing Tray is actively tested on all of these platforms or desktop environments". Windows 10 and 11, Android, macOS, KDE Plasma, Openbox with lxqt/LXDE or Tint2, GTK-centered desktops, COSMIC, Awesome, i3, Deepin, Sway/Swaybar/Waybar are named as known to work, but testing coverage is thinner than that list suggests.

Finally, Syncthing v1 support is now a guess rather than a promise. The README says Syncthing Tray works with Syncthing v2, and that it "very likely still works with Syncthing v1 (and even v0) but this is not regularly tested anymore". If you are pinned to an old Syncthing, that sentence is the risk.

Syncthing Tray against Syncthing's own web UI and Synctrayzor

The honest comparison is with the official web UI, which people search for as "syncthing tray vs syncthing". Syncthing's web UI is the full management interface and runs in a browser. Syncthing Tray deliberately stops short of that: the README calls its quick access "no full replacement of the official web-based UI". What Syncthing Tray adds is presence (a tray icon reflecting overall status), desktop integration (Dolphin actions, a Plasma widget, KIO plugin) and a small CLI. It can also open the official web UI itself, either as a regular browser tab or in a dedicated window using Qt WebEngine/WebKit or the app mode of a Chromium-based browser.

Against Synctrayzor, the difference is in scope and packaging rather than features. Synctrayzor is a Windows-oriented tray wrapper; Syncthing Tray is a Qt project with Windows, GNU/Linux and Android binaries, a Plasmoid, a Dolphin plugin and a C++ library. If you are on Windows only and want the simplest path, the platform breadth of Syncthing Tray buys you nothing. If you are on Plasma and want folder actions inside Dolphin, Synctrayzor has no equivalent in this repository's feature list.

The third option is no wrapper at all: run Syncthing and bookmark its web UI. That costs nothing and avoids every tray and Wayland caveat listed above. You lose the tray status indicator and the conditional suspension rules.

Licence, releases and what upgrading costs

The repository root contains LICENSE, LICENSE.LESSER, LICENSE.MPL-2.0 and LICENSES-windows-distribution.md. The GitHub metadata reports the licence as NOASSERTION, which means the automated classifier could not reduce the project to a single SPDX identifier. The presence of three licence files, including a separate Windows distribution note, means the terms are not uniform across the codebase. If you plan to redistribute the binaries or link the C++ library into your own product, read the individual files rather than the repository summary; this article is not legal advice and the README does not summarise the terms.

Upgrade cost looks low. Releases are frequent and small in number: v2.1.4 on 2026-08-10, v2.1.5 on 2026-09-13 and v2.1.6 on 2026-09-20. The last push to master was on 2026-09-23. The README states that Syncthing Tray is maintained and that updates will be made to support future Syncthing versions as needed, so the maintenance work is concentrated on keeping pace with Syncthing itself rather than on a large feature backlog.

The practical cost sits in configuration, not in the binary. If you use systemd integration or autostart, those settings are part of your environment and survive package upgrades. The Plasmoid is the exception to watch: the README ties the latest Plasmoid to the latest Plasma 5 or 6, so a Plasma upgrade is the moment to recheck the widget.

Editorial conclusion

Adopt Syncthing Tray if you already run Syncthing and want tray status, folder actions in Dolphin, or a Plasma widget without opening the web UI. Skip it if you need a full management interface or you are on a tray that cannot show its window, such as COSMIC, where only the simple menu works. Before installing, check the download section of the project website for your distribution, and read docs/known_bugs_and_workarounds.md for the Wayland positioning issue.

Frequently asked questions

How do I install Syncthing Tray?

Official binaries are provided for Windows, GNU/Linux and Android from the project website and the GitHub release section, and the README says further repositories exist for some GNU/Linux distributions. The README does not give one canonical install command, so use the download section for your platform.

Does Syncthing Tray launch or bundle Syncthing itself?

No. The README states that Syncthing Tray does not launch Syncthing itself by default and that there should be no interference with an existing Syncthing installation. A launcher for Syncthing and the option of building Syncthing as a library exist as separate, optional features.

Can I use Syncthing Tray on Windows?

Yes. Official binaries are provided for Windows for i686, x86_64 and aarch64, and Windows 10 and 11 are listed as known to work. The README notes that this does not mean the application is actively tested on every listed platform.

How do I access Syncthing Tray's status and controls?

Through the tray icon and its menu, which the README says gives quick access to the most used features but no full replacement of the official web-based UI. The project also provides syncthingctl for status and rescan/pause/resume/restart from the command line.

Is Syncthing Tray the same as Syncthing itself?

No. Syncthing Tray is a tray application and platform integration layer for Syncthing, and the README says it does not launch Syncthing itself by default. Syncthing remains the synchronization daemon; Syncthing Tray is a front end over it.

Official sources

  1. Issues
  2. Martchus/syncthingtray on GitHub
  3. Project website
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/martchus-syncthingtray.svg)](https://hysenlabs.com/projects/martchus-syncthingtray)