The native privacy guard and clipboard manager for developers. Runs as a background daemon with a system tray interface on Windows, Linux, and macOS.
PureLink is a cross-platform desktop daemon that protects your privacy and accelerates your workflow by intercepting clipboard copies and processing them locally.
- Strips tracking parameters (
utm_*,fbclid,gclid,si,ref, and 15+ more) from links copied to your clipboard - All processing is local and instant — no data leaves your machine
- Ignore List (whitelist): specify domains like
localhostor127.0.0.1to skip cleaning entirely, configurable viapurelink_config.json
- WSL Path Mode — Persistently convert
C:\Projectsto/mnt/c/Projectson all copies, or use the one-shot "Convert Clipboard to WSL Path" action - Base64 Encode / Decode — Encode or decode Base64 strings directly in the clipboard
- Generate UUID — Create a v4 UUID and copy it instantly
- URL Encode / Decode — Percent-encode or decode clipboard content
- Format JSON — Pretty-print arbitrary JSON from the clipboard
- Unix Timestamp — Generate the current Unix epoch seconds
- Decode JWT Payload — Extract and pretty-print the JSON payload from any JWT token
- Unshorten Links — Resolve shortened URLs (bit.ly, t.co, tinyurl.com, and more) to their original destination
- Cloud Boost — Convert Dropbox share links to direct
?dl=1download links and Google Driveviewlinks to directuc?export=downloadlinks - YouTube Shorts Fix — Automatically convert
/shorts/URLs to/watchwith the video ID preserved
- Convert to WhatsApp — Read a phone number from the clipboard and format it as a
wa.melink (no browser opens) - Convert to Telegram — Read a Telegram username from the clipboard and format it as a
t.melink - Clipboard Commands — Type
!wa,!tg,!b64e,!b64d, or!uuidfollowed by text, copy it, and PureLink processes it automatically (can be toggled off)
- Clipboard Watcher — Continuously monitors clipboard changes with a 1-second debounce to avoid redundant processing
- Auto-Update Filters — Fetches the latest tracking-rule blocklist from GitHub every 7 days in the background
- Self-Update — Checks GitHub releases on startup; prompts you when a newer version is available. Supports safe binary replacement (download .tmp, rename, spawn new process)
- Single-Instance Lock — Prevents multiple instances via a flock file in the OS-standard config directory
- Startup Registration — Auto-start on login (Windows Registry / XDG
.desktopfile on Linux / macOS)
- Thread-safe
Appstruct withsync.RWMutexprotectingConfigandActiveBlocklist - Configuration stored as JSON in
os.UserConfigDir()/PureLink/purelink_config.json - Rules stored as JSON in
os.UserConfigDir()/PureLink/rules.json - No global variables — all state is encapsulated in the
Appstruct - Sentinel-error redirect resolver prevents body downloads during URL unshortening
The tray menu is organized into screen-reader-friendly submenus:
- Recent History — Last 5 cleaned links, clickable to re-copy
- Social Tools — Convert to WhatsApp, Convert to Telegram
- Updates and Rules — Update Filters Now, Check for App Updates, View Release Notes
- Advanced Settings — YouTube Shorts Fix, Cloud Boost, Clipboard Commands, Clear Data and History
- Developer Tools — WSL Path Mode, Convert Clipboard to WSL Path, Base64 Encode, Base64 Decode, Generate UUID, URL Encode, URL Decode, Format JSON, Unix Timestamp, Decode JWT Payload
- Main Controls — Pause/Resume Protection, Play Sound, Unshorten Links, Run on Startup
- Open Config File — Opens
purelink_config.jsonin your default editor - Quit — Exit PureLink
If you have Go installed:
go install github.com/ahmedthebest31/PureLink@latestPre-compiled binaries for Windows, Linux, and macOS are on the Releases page:
- Go to the PureLink Releases page
- Download the binary for your OS and architecture
- Make it executable (Linux/macOS:
chmod +x PureLink) and run it
Launch PureLink and it appears as an icon in your system tray. Right-click to access the full menu.
Copy any URL to your clipboard. PureLink automatically:
- Strips tracking parameters
- Unshortens links (if enabled)
- Converts Dropbox/Drive links to direct downloads (if enabled)
- Converts YouTube Shorts to watch URLs (if enabled)
- Converts Windows paths to WSL format (if WSL Mode is on)
Open the config file from the tray menu and add domains to the ignore_list array:
"ignore_list": ["localhost", "127.0.0.1", "internal.company.dev"]Links whose host contains any ignored domain are returned completely untouched.
For on-the-go privacy protection, check out the Android version:
MIT License
Contributions are welcome! This project uses syscall for Windows native features. Build tags (//go:build windows / //go:build !windows) keep platform-specific code isolated. Run go build ./... and go vet ./... before submitting.