A native Windows notification-area (system tray) application that bidirectionally syncs your InterlinedList documents to a local folder. It runs as a background process, surfaces controls through a tray context menu, and sends toast notifications for sync events.
Minimum requirement: Windows 10 build 19041 (version 2004)
Stack: C# 13 / .NET 9, WPF, Hardcodet.Wpf.TaskbarNotification (tray icon),
Windows App SDK (toasts), System.IO.FileSystemWatcher (file watching),
System.Net.Http.HttpClient (API), Windows Credential Manager (token storage),
SQLite (sync state)
Note: Signed, distributable installers are not yet available. The GitHub Releases page will list an MSIX package and a framework-dependent ZIP when v1.0 ships.
When releases are available, download InterlinedSync-Windows-MSIX-<tag>.msix from the
Releases page and run:
Add-AppxPackage -Path .\InterlinedSync-Windows-MSIX-<tag>.msixA framework-dependent ZIP (InterlinedSync-Windows-<tag>.zip) is also available for users
who prefer xcopy deployment (requires the .NET 9 Desktop Runtime
pre-installed).
SmartScreen warning for unsigned builds
Unsigned MSIX packages trigger a SmartScreen warning. To install an unsigned package, enable
Developer Mode in Settings → Privacy & security → For developers → Developer Mode,
then re-run the Add-AppxPackage command.
Signed packages from the Releases page with an EV code-signing certificate do not show this warning.
.NET 9 Desktop Runtime requirement (ZIP build only)
The ZIP (framework-dependent) build does not bundle the .NET runtime.
Download and install the
.NET 9 Desktop Runtime
before launching InterlinedSync.exe. The MSIX build is self-contained and does not have
this requirement.
Prerequisites: .NET 9 SDK, Visual Studio 2022 with the .NET desktop development workload (or JetBrains Rider).
# Clone the repo
git clone https://github.com/Adron/interlinedlist-synchronization.git
cd interlinedlist-synchronization
# Build (Release configuration)
dotnet build windows/InterlinedSync.sln -c Release
# Run
dotnet run --project windows/InterlinedSync -c ReleaseTo build the MSIX package locally, see PACKAGING.md.
- Launch InterlinedSync.exe (or install via MSIX).
- An onboarding window opens. Enter your InterlinedList email and password and click Sign In.
- Choose a local folder to sync into (default:
%USERPROFILE%\InterlinedList Sync). - The tray icon appears in the notification area. The initial sync begins automatically.
| What | Location |
|---|---|
| Auth token | Windows Credential Manager (PasswordVault, target InterlinedSync) |
Preferences (appsettings.json) |
%APPDATA%\interlinedlist-sync\appsettings.json |
| Sync state database | %APPDATA%\interlinedlist-sync\state.db (SQLite) |
| Application logs | %LOCALAPPDATA%\interlinedlist-sync\logs\ (rolling Serilog files) |
cd windows
dotnet test InterlinedSync.slnIntegration tests against the live API require a .env file at the repo root — see
CONTRIBUTING.md for setup. Run the integration project directly:
dotnet test windows/InterlinedSync.IntegrationTestsThe tray icon does not appear after launch.
Check %LOCALAPPDATA%\interlinedlist-sync\logs\ for error entries. If the process started but the
icon is hidden, click the Show hidden icons chevron in the notification area.
"Sign In" fails with an authentication error.
Verify your email and password work at interlinedlist.com.
The app uses POST /api/auth/sync-token — not your browser session.
MSIX will not install — "The app you're trying to install isn't a Microsoft-verified app." The package is unsigned. Enable Developer Mode (see "SmartScreen warning" above) or wait for a signed release.
Documents are not syncing.
Right-click the tray icon and check the status tooltip. If it shows an error, open Settings
for detail. Review the log files in %LOCALAPPDATA%\interlinedlist-sync\logs\.
Conflict copies accumulate in the sync folder.
Files named <name>.conflict-<timestamp>.md were created because both your local copy and the
server copy changed before the next sync cycle. Review them and delete the copies you do not need.
Auto-start does not work after an xcopy (ZIP) install.
The MSIX startupTask extension (which registers auto-start via Task Scheduler) is only available
in the packaged MSIX build. The ZIP build falls back to writing a HKCU\Software\Microsoft\Windows\ CurrentVersion\Run registry value. If that toggle is not available in the ZIP build's Settings
window, auto-start is not supported in your current install format — use the MSIX.