A native Windows desktop app for managing parameterised CLI command snippets ("Snips"), organised by the CLI they belong to. Browse a CLI, pick a Snip, fill its arguments, and copy the resolved command to the clipboard.
Conceptually inspired by
SnipCommand, with one defining
difference: the CLI is the top-level organising axis — every Snip belongs
to exactly one CLI (e.g. pl-app, mpt-app, inv-app).
Snipdeck is pre-1.0 software. The list below describes what's actually implemented today, not what's planned. See
TODO.mdfor the backlog andCHANGELOG.mdfor what's shipped.
Pre-1.0. v0.2.0 is the latest release — see Releases. It contains the full v1 feature set: browse CLIs and Snips, author Snips with structured parameters, fill and copy resolved commands, global hotkey, system tray with close-to-tray, theme switching, and Velopack-backed self-update.
Download Snipdeck-stable-Setup.exe from the latest
release and run it.
The installer is unpackaged (no Microsoft Store, no MSIX) and Velopack
handles self-update from then on.
Windows 11 is the supported target — Mica backdrop only renders there; on Windows 10 it falls back to a solid colour.
- .NET 10, C#
- WinUI 3 (Windows App SDK) — unpackaged
- MVVM via
CommunityToolkit.Mvvm - DI via
Microsoft.Extensions.DependencyInjection - JSON persistence via
System.Text.Json - Identicons via
Jdenticon-net - Tray icon via
H.NotifyIcon - Install + self-update via Velopack
- Tests via xUnit
src/
Snipdeck.Core/ net10.0 — UI-free domain, engine, store, services
Snipdeck.App/ net10.0-windows — WinUI 3 head, platform implementations
tests/
Snipdeck.Core.Tests/ net10.0 — xUnit coverage for Core
tools/
Snipdeck.Importer/ net10.0 — snipdeck-importer console tool (SnipCommand import)
Snipdeck.Importer.Tests/ net10.0 — xUnit coverage for the importer
The dependency direction is one-way: App → Core. The view models live in Core
and never touch WinUI types directly — every platform-bound capability is an
interface defined in Core and implemented in App.
Migrating from SnipCommand? The cross-platform snipdeck-importer console tool
reads a SnipCommand export and merges its snippets into your Snipdeck store,
grouping them under a CLI per command. It defaults to a dry-run preview; see
tools/Snipdeck.Importer/README.md.
Requirements:
- Windows 11 (Windows 10 1809+ may work but is not the target)
- .NET 10 SDK
- Visual Studio 2022 17.x with the Windows App SDK workload, or the command-line equivalents
# Restore + build everything
dotnet build
# Run Core unit tests
dotnet test tests/Snipdeck.Core.TestsThe Snipdeck.Core project targets net10.0 and is fully portable, so
dotnet build / dotnet test for Core also work on Linux and macOS. The
Snipdeck.App project is Windows-only. The Snipdeck.Importer tool also targets
net10.0 and builds, tests and runs on any platform.
Snipdeck owes its founding idea to SnipCommand by Güray Yarar — a cross-platform command snippet manager that demonstrated how useful parameterised, fill-in-and-copy command templates are day to day. Snipdeck reimagines that idea as a native Windows app organised around the CLI each command belongs to. A SnipCommand import tool ships in this repo.
Licensed under the Apache Licence, Version 2.0. See LICENSE.