Reuse a single long-poll HTTP client instead of creating one per
Events() call (~every 30s). Make TLS skip-verify configurable via
syncthing_insecure_tls. Log previously swallowed config errors.
Add unit tests for all monitor trackers, config, and state logic.
Add CI workflow (vet, golangci-lint, govulncheck, go test -race).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add Syncthing installation detection (PATH + config file check) to both
the tray app and setup installer. When missing, the tray shows an
"Install Syncthing..." menu item and the setup opens the download page.
Rewrite README with Mermaid topology graph, per-binary dependency tables,
project layout, API endpoint reference, and shields.io badges.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace procedural icon renderer with pre-rendered textured icons:
- Use Stammtisch wood texture as shield face (crop tabletop planks)
- Apply Syncthing motif via darken blend ("warpaint on wood" effect)
- Fix Syncthing logo geometry: asymmetric node placement (76°/116°/168°
gaps) with offset hub, matching the official SVG
- Metal rim with rivets and directional lighting
- Embed pre-rendered PNGs via go:embed (no runtime rendering)
- Icon generator in cmd/icongen/ takes wood texture as input
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Redesign tray/app icon as a wooden round shield with iron rim, rivets,
wood grain, and the Syncthing network motif (ring + 3 nodes + spokes)
painted in the state color. Dark shadow outline for wood contrast.
Inspired by Stammtisch hero icon style (warm, illustrated wood tones).
- Dynamic tray icon changes color per state (green/blue/gray/red)
- Static assets: PNG at 7 sizes + multi-size .ico + preview sheet
- Icon generator utility (cmd/icongen)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Re-add CGO panel builds with apt-get install of gcc/g++/mingw-w64/webkit2gtk
- Panel launch falls back to default browser if panel binary not found
- Restore panel binary in nfpm .deb package
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Full Syncthing tray wrapper with:
- System tray with 5 icon states (idle/syncing/paused/error/disconnected)
- Syncthing REST API client with auto-discovered API key
- Long-polling event listener for real-time status
- Transfer rate monitoring, folder tracking, recent files, conflict counting
- Full context menu with folders, recent files, settings toggles
- Embedded admin panel binary (webview, requires CGO)
- OS notifications via beeep (per-event configurable)
- Syncthing process management with auto-restart
- Cross-platform installer with autostart
- CI pipeline for Linux (.deb + .tar.gz) and Windows (.zip)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>