Custom gui | Mockups and programming

hi guys, I just thought of layouting a custom nice GUI for syncthing, but I don’t know angularjs / ajax (whatever is necessary).

Is there a plan to use a own gui layout and someone who could code it?

The custom layout could be a zip to unpack into the userspecific syncthing app-data folder.


Check -help, it talks about STGUIASSETS which allows you to override default assets. Also, there might be some info about it in the forum.

The non nerdy-user will not compile the sourcecode just to get a own gui. My thought was to develop a easy to change gui-package.

This means precisely that you don’t need to compile the sourcecode just to get your own GUI.

If this becomes a thing it would be trivial to have that flag enabled by default, so that all you need to do is unpack a new GUI into the gui directory in the config directory, or something like that.

1 Like


whatever it is called. If I’m right I have to edit the source to set the variable to another path… right or am I wrong? This would be “nerdy” developer stuff and not usable.

No, you set STGUIASSETS to the path to load assets from. E.g. in bash:

STGUIASSETS=customgui ./syncthing`

or in cmd

set STGUIASSETS=customgui

That’s what “This means precisely that you don’t need to compile the sourcecode just to get your own GUI” means :wink:

anyway makes no difference. wanna try to explain this to my wife? good luck :flushed:

Presumably if you set up Syncthing for your wife, you set it up yourself: you put the custom GUI in a suitable place, and you set up Syncthing to auto-start (presumably using one of the many tray utilities). If you’re doing all of that, you can set STGUIASSETS when you do that, so everything just works ™ for her.

Anyway, calmh already said:

:flushed: what I meant was that syncthing should get usable for everyone in future - and not just for me and you Antony. everyone is able to unpack a zip to copy the files into a folder. But ask for cmd and bash and you’ll get a face like: :fearful:

That’s a wider question, and there’s already some discussion there:

so, is there anybody who could build the code along some layouts?

If there were an alternate layout to use, we would probably support that nicely somehow. Currently that’s not the case, so this issue doesn’t matter in the least? Creating a different theme is doable as is; when it’s there we can decide to 1) switch to it as default because it’s nicer than the current, 2) bundle it and offer a switcher like the language switcher, 3) implement something like above, …


Just to make sure that previous work isn’t overlooked:

1 Like

Already saw these mockups…

Fwiw, in current master (v0.11.10 when it’s released), files can be dropped in $config_dir/gui (i.e. ~/.config/syncting/gui on Linux etc) to override the compiled in GUI on the fly, without restarting or setting environment variables.

1 Like

good news so far :smile: but what means it exactly? I can define a folder for my custom gui?