SnapShot is a fast, lightweight, standalone desktop screen capture utility built for Windows with WinUI 3 Fluent Design principles. It delivers a pixel-perfect desktop screenshot experience (high-DPI scaling accuracy, custom crop selection, live vector annotation tools, mouse scroll stroke sizing, quick copy/save, infinite scrolling capture, auto-updater) without requiring administrative rights to install or run!
- 🚫 Zero Admin Privileges Required: Runs completely in user-space on Windows.
- 🎨 WinUI 3 Fluent Design UI: Modern Windows 11 Fluent aesthetic, acrylic/Mica dark and light themes,
Segoe UI Variabletypography, and WinUI control styling. - 🎯 Pixel-Perfect Per-Monitor DPI Accuracy:
DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2eliminates coordinate shifts and image offsets across multi-monitor setups with mixed scaling factors. - 🖥️ Seamless Multi-Monitor Desktop Support: Full virtual-desktop coverage across all connected monitors including primary and secondary displays. Double-click any monitor to instantly snap the entire screen.
- 📐 Custom Selection & Aspect Ratio Locking: Drag to crop any portion of multi-monitor screens. Lock crop aspect ratios (
1:1,16:9,4:3,3:2,9:16). HoldShiftfor perfect Square or Circle selection. - 🎨 Live Vector Annotations:
- ✏️ Pen (Freehand) (
P/D) - 📏 Straight Line (
L) [HoldShiftfor 45° angle snap] - ➡️ Arrow (
A) [HoldShiftfor 45° angle snap] - 🔲 Rectangle (
R) [HoldShiftfor Square] - ⭕ Ellipse (
E) [HoldShiftfor Circle] - 🔤 Direct On-Screen Text (
T): Type text live directly on canvas! - 💧 True High-Intensity Privacy Blur (
B): Gaussian blur & pixelate mask. - 🎨 Expandable Color Drawer: Quick color swatches + custom color picker.
- ↩️ Undo / Redo (
Ctrl+Z,Ctrl+Y)
- ✏️ Pen (Freehand) (
- 🖱️ Mouse Wheel Stroke Resizing: Scroll mouse wheel UP or DOWN anywhere on screen to adjust stroke thickness (1px–50px) or text font size live.
- ⌨️ Exclusive Global PrintScreen Hotkey: Intercepts
PrintScreenkey and suppresses default Windows Snipping Tool via Win32 event suppression. - 📜 Infinite Scroll Capture: Interactive long screenshot mode with multi-frame overlap removal.
- 🔍 Google Lens Visual Search: One-click reverse image search for cropped screen region.
- 🔄 Auto-Update Service: Non-blocking background check for latest GitHub releases.
- 🚀 Windows Auto-Start: Configure launch on Windows boot without admin rights.
# Clone the repository
git clone https://github.com/aalooksth/snap-shot.git
cd snap-shot
# Install requirements
pip install -r requirements.txt- Run App (System Tray & Hotkeys):
python main.py
- Trigger Quick Capture via CLI:
python main.py --capture - Hotkeys:
PrintScreen: Start screen captureDouble-Click: Snap entire monitor under cursor immediatelyCtrl+C: Copy snip to clipboard and closeCtrl+S: Instant quick save to retained directorySpace: Restore last snip size & location?: Toggle floating tooltip badges over buttonsEsc: Cancel capture
- Operational logs saved to
%APPDATA%\SnapShot\logs\snapshot.log.
- Single-Instance Mutex Enforcement: Prevent duplicate running instances using named Win32 mutex (
Global\SnapShot_SingleInstance_Mutex). - Binary Metadata & PE Version Info: Embed complete Windows version resources (
file_version_info.txt) for verified file properties in Windows Explorer. - Authenticode Code Signing: Added automated PowerShell script (
scripts/sign_app.ps1) for SHA256 digital signing and DigiCert RFC 3161 timestamping. - Auto-Updater Process Release: Fixed Windows file lock on in-place executable updates via PID force-kill, retry loop, and immediate runtime exit (
os._exit(0)). - Bundler Dependency Fix: Restored standard library
csv,email,html, andxmlmodules in PyInstaller build. - Automated Binary Integrity Suite: Added Suite 3/3 verifying headless executable startup and transitive network module integrity.
- DPI Alignment: Fixed coordinate offsets in high-DPI Windows desktop scaling.
- WinUI 3 Redesign: Acrylic/Mica themes, Segoe UI Variable typography, and auto-updater.
- Initial standalone release of SnapShot screen capture utility.
Made with ❤️ in 🇳🇵 by Alok - hello@aloks.com.np.
- Website: aloks.com.np
- Support / Inquiries: hello@aloks.com.np