Skip to content
cgillingerPublic

About

Fast, minimal Skitch-inspired image annotation tool for Linux — big pink arrows, text, shapes, pixelate. Open image, annotate, Ctrl+C, done.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

SkitchG app icon — pencil

SkitchG

Fast, minimal Skitch-inspired screenshot annotation for Linux and Windows.

Take a screenshot (or open an image) → drag a big pink arrow → Ctrl+C → paste. Done.

CI Windows build Python 3.10+ Qt for Python Platform: Linux | Windows License: MIT Version

SkitchG annotations demo — thick pink Skitch-style arrows, outlined text, rectangle, ellipse and pixelate on light and dark backgrounds

Why SkitchG?

Skitch made visual communication effortless: point at things with big, bold arrows instead of writing three paragraphs. Evernote discontinued Skitch everywhere except macOS — leaving Linux and Windows users without a true equivalent.

SkitchG is a Skitch alternative for Linux and Windows (Linux Mint, Ubuntu, Fedora, KDE, GNOME, Windows 10/11). Like Skitch it is screenshot-first but annotation-focused — not a full capture suite like Flameshot or ksnip, and not an image editor like GIMP. It is optimized for one flow:

1. Screenshot key   2. Drag a region   3. Drag arrow   4. Ctrl+C   5. Paste

Existing images work just as well: open one, or paste it from the clipboard.

No accounts. No cloud. No layers. No dialogs you didn't ask for.

Features

  • 📸 Built-in screenshot tool — press the screenshot key, drag a region on the frozen screen, and it opens straight in the editor (Print / Meta+Shift+S on KDE, Print Screen or Ctrl+Alt+S on Windows, Ctrl+Shift+N inside the app)
  • 🎯 Skitch-style arrows — pointed tail widening into a compact filled head, flat strong color just like the original (optional white outline + shadow for busy backgrounds)
  • 📍 Numbered markers & stamps — Skitch-style pins with an auto-incrementing number in the head, or one of the classic stamps (✕ wrong, ! warning, ? question, ✓ OK, ♥ love); the tip follows your drag so it lands exactly where you release, double-click to relabel
  • 🅰️ Bold outlined text — click, type, Enter. Done. Drag a text block to move it, pull its corner handles to scale it
  • ⬜ Rectangle, ellipse, line, freehand pen
  • 🖍️ Highlighter — wide translucent freehand stroke that tints without hiding what's underneath (pick yellow for the classic look)
  • ✋ Grab anything to move it — clicking an existing annotation moves it no matter which tool is active; you only draw on empty areas
  • 🔒 Pixelate tool for hiding sensitive information (names, emails, keys)
  • 🧽 Erase area — cover part of the image with a solid fill auto-picked from the surrounding background, or eyedropper any color from the image — e.g. remove your own reply box from a copied comment thread
  • ✂️ Crop
  • ↕️ Select, move and reshape annotations with drag handles
  • ↩️ Full undo/redo for every action
  • 📋 Copy the rendered image straight to the clipboard (Ctrl+C) — and paste an image from the clipboard (Ctrl+V) to annotate it, e.g. straight from your screenshot tool
  • 💾 Export as PNG or JPEG — saves as name_annotated.png by default; the original file is never overwritten without explicit confirmation
  • 🖼️ Opens PNG, JPG/JPEG, WebP and BMP, respects EXIF rotation
  • 📏 Always sensibly sized — default arrow/text/marker sizes scale with the image resolution, so they look right on a 24 MP photo and a small screenshot alike; scroll the mouse wheel to resize on the fly, before or after drawing
  • ⚡ Annotations stay vector-based while editing — rasterized only on export
SkitchG numbered markers — pin-shaped badges with numbers and directional pointer tails SkitchG application window on Linux — vertical tool bar, color palette, and the erase tool covering a reply field with the sampled background color

Install

Windows

Download SkitchG-Setup.exe from the windows-latest release (rebuilt on every push to main; a portable zip is attached too). The installer isn't code-signed, so SmartScreen will warn — choose More info → Run anyway.

The installer adds SkitchG to the Start menu and to right-click → Open with for images, and can start a small tray helper at login (SkitchG.exe --tray): left-click the tray icon or press the global hotkey to take a screenshot.

The helper takes over Print Screen from the Snipping Tool, and Ctrl+Alt+S works too; the tray icon's tooltip shows the active keys. Quit the helper from its tray menu to give Print Screen back to Windows.

Linux

Requires Python 3.10+ on any Linux desktop.

git clone https://github.com/cgillinger/SkitchG.git
cd SkitchG
./install-desktop.sh

The launcher builds its own virtualenv on first start. install-desktop.sh installs the skitchg and skitchg-screenshot commands in ~/.local/bin, adds SkitchG to the application menu, and registers it for right-click → Open With → SkitchG on image files. On KDE Plasma it also moves Print and Meta+Shift+S from Spectacle to SkitchG (Spectacle keeps its other shortcuts).

Run it by hand:

skitchg image.jpg          # open an image
skitchg-screenshot         # take a screenshot (same as: skitchg --capture)

On Wayland the screen is read through Spectacle, grim or gnome-screenshot (whichever is installed); on X11 Qt grabs it directly. On other desktops than KDE, bind skitchg-screenshot to a key in your desktop's shortcut settings.

Screenshots

The screen freezes and dims; drag a rectangle and the region opens straight in SkitchG. A plain click captures the whole screen, Esc or right-click cancels. Every capture is saved in your Pictures folder's screenshot directory first, so closing SkitchG without saving loses nothing.

Keyboard shortcuts

Key Action Key Action
A Arrow Ctrl+O Open image
T Text Ctrl+S Save (name_annotated.png)
R Rectangle Ctrl+Shift+S Save As
E Ellipse Ctrl+C Copy image to clipboard
L Line Ctrl+V Paste image from clipboard
P Pen Ctrl+Z Undo
M Numbered marker / stamp Ctrl+Shift+Z / Ctrl+Y Redo
H Highlighter Delete Delete selected
X Pixelate Esc Cancel / deselect
C Crop Ctrl+scroll Zoom (Ctrl+0 fit, Ctrl+1 100%)
V Select / move Scroll Resize annotations on the fly
D Erase area Ctrl+Shift+N New screenshot

Usage tips

Arrows — click where the tail starts, drag toward what you're pointing at, release. Grab any existing annotation to move it (no tool switch needed), or drag its endpoint handles to reshape it.

Text — click, type. Enter commits, Shift+Enter adds a line, Esc cancels. Click existing text to edit it, drag it to move it, and pull a corner handle to make it bigger or smaller.

Numbered markers — click to drop a pin (numbers count up automatically: 1, 2, 3…), or click and drag: the pointer tip follows the mouse and lands exactly where you release. Double-click a marker to change its label (up to 3 characters, e.g. 12 or A). Great for step-by-step instructions. With the marker tool active, the top bar shows the stamp row: pick ✕, !, ?, ✓ or ♥ to drop that stamp instead of a number (stamps keep their own colors and don't affect the numbering).

Erase area — drag over the thing you want gone (your own reply box in a copied comment thread, a stray UI element). The rectangle is filled with the color of the surrounding background, sampled automatically while you drag. Need a specific color instead? Alt-click or right-click anywhere in the image to eyedropper it, or pick a palette swatch — both also recolor a selected erase area. Esc returns to automatic background fill.

Colors & sizes — swatches in the top bar (default: strong pink that reads on almost anything). XS/S/M/L set stroke thickness and text size, scaled to the image resolution so M always looks M. Scroll the mouse wheel while a drawing tool is active — or with annotations selected — to grow or shrink smoothly, even mid-draw. The outline button toggles the white outline + shadow. With a selection, style changes restyle it; otherwise they set the style for new annotations.

Clipboard note: on Wayland, Copy hands the image to wl-copy (package wl-clipboard), so it stays on the clipboard after SkitchG is closed. Without wl-copy — and on X11 — the clipboard is owned by the running app: keep SkitchG open until you've pasted.

Project layout

app.py                  entry point (--capture, --tray)
skitchg/
  main_window.py        menus, toolbars, open/save/copy
  canvas.py             QGraphicsView canvas + tool interaction
  items.py              vector annotation items (arrow, text, …)
  commands.py           undo/redo commands
  export.py             flatten image + annotations for save/copy
  icons.py              programmatically drawn icons
  palette.py            colors, stroke sizes, constants
  capture.py            screen grabbing per platform + capture-and-save flow
  snip.py               frozen-screen region picker
  tray.py               Windows tray helper + global hotkey
  fonts.py              cross-platform UI font
packaging/windows/      Inno Setup installer script
tests/test_smoke.py     offscreen end-to-end smoke test (runs in CI on
                        Linux and Windows)

Non-goals

No cloud sync, no accounts, no OCR, no layers, no filters, no AI, no general image editing. SkitchG is an annotation tool — that focus is the feature.

Related projects

  • Skitch — the original (macOS only)
  • ShareX — feature-packed Windows screenshot suite
  • Marianne — Skitch-style annotator built with Tauri
  • Flameshot / ksnip — screenshot-first tools with annotation

A note about this project

This is a hobby project I built for my own use and share as-is, in case it's useful to someone with the same need. I develop it to fit my own workflow, so I may not respond to issues or take on pull requests — that's a matter of time and focus, not disinterest. Use at your own risk.

License & credits

MIT © Christian Gillinger

App icon: Stationary icons created by Sergei Kokota - Flaticon

Keywords: image annotation tool, Skitch alternative Linux, Skitch alternative Windows, screenshot tool, annotate screenshots, arrow annotation, markup images, pixelate sensitive data, PySide6, Qt6, Linux Mint, Ubuntu, Fedora, KDE, Windows 11

About

Fast, minimal Skitch-inspired image annotation tool for Linux — big pink arrows, text, shapes, pixelate. Open image, annotate, Ctrl+C, done.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages