Screen Annotation for Wayland

A ZoomIt-like screen annotation tool for Wayland compositors, written in Rust

Works on Hyprland, Sway, River, and other compositors with wlr-layer-shell

Watch wayscriber in action

See how quickly you can highlight, annotate, and guide your audience with real-time drawing tools.

wayscriber quick preview animation placeholder

Tap to load the demo video when you're ready—it's about 8 MB.

What is wayscriber?

wayscriber is a powerful screen annotation tool designed for Wayland compositors. Perfect for live presentations, classroom sessions, and screenshares, it lets you toggle drawing mode with a single key and annotate your screen instantly without breaking your flow.

Features at a Glance

Drawing Tools

  • Freehand pen
  • Straight lines
  • Rectangles
  • Ellipses & circles
  • Arrows
  • Multi-line text annotations
  • Highlight brush (Ctrl+Alt+H)
  • Marker tool
  • Eraser tool

Board Modes

  • Whiteboard mode
  • Blackboard mode
  • Auto pen contrast
  • Isolated frames
  • Transparent overlay

Customization

  • Quick color palette (8 colors)
  • Adjustable line thickness
  • Custom fonts (Pango)
  • Scroll wheel adjustments
  • TOML configuration file

User Experience

  • Status bar with live feedback
  • In-app help overlay (F10)
  • Native configurator (F11)
  • Freeze mode (Ctrl+Shift+F or --freeze argument at start)
  • Session persistence between launches (opt-in)
  • Background daemon mode
  • System tray integration

Installation

Arch Linux (AUR)

Choose one of the four AUR options below (pick the helper and package type that suits you best):

  1. Option 1 – yay helper (build from source)
    yay -S wayscriber
  2. Option 2 – yay helper (prebuilt binaries)
    yay -S wayscriber-bin
  3. Option 3 – paru helper (build from source)
    paru -S wayscriber
  4. Option 4 – paru helper (prebuilt binaries)
    paru -S wayscriber-bin

Debian / Ubuntu (latest release)

Download the latest .deb from GitHub releases (stable filename) and install:

wget -O wayscriber-amd64.deb https://github.com/devmobasa/wayscriber/releases/latest/download/wayscriber-amd64.deb
sudo apt install ./wayscriber-amd64.deb

Note: apt may print “Download is performed unsandboxed as root …” when installing a local file; this is expected.

Fedora / RHEL (latest release)

Download the latest .rpm from GitHub releases (stable filename) and install:

wget -O wayscriber-x86_64.rpm https://github.com/devmobasa/wayscriber/releases/latest/download/wayscriber-x86_64.rpm
sudo rpm -Uvh wayscriber-x86_64.rpm

Build from Source

Install dependencies (pick your distro):

Ubuntu / Debian

sudo apt-get install build-essential pkg-config libxkbcommon-dev libcairo2-dev libwayland-dev libpango1.0-dev

Fedora

sudo dnf install gcc gcc-c++ make pkgconf-pkg-config cairo-devel wayland-devel pango-devel libxkbcommon-devel cairo-gobject-devel

Then build:

git clone https://github.com/devmobasa/wayscriber.git
cd wayscriber
cargo build --release

Don't have Rust yet? Install it with rustup:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Optional Screenshot Tools

For the fastest screenshot workflow, install:

Debian / Ubuntu

sudo apt-get install wl-clipboard grim slurp

Fedora

sudo dnf install wl-clipboard grim slurp

How to Use

One-Shot Mode (Simple)

Launch wayscriber when you need it, exit when done:

wayscriber --active

Or bind to a key in ~/.config/hypr/hyprland.conf:

bind = SUPER, D, exec, wayscriber --active

Press F10 for help, F11 for configurator, exit with Escape/Ctrl+Q, and toggle the status bar with F12.

Daemon Mode (Background Service)

Run wayscriber in the background and toggle with a keybind:

# Enable the service
systemctl --user enable --now wayscriber.service

Add keybinding to ~/.config/hypr/hyprland.conf:

bind = SUPER, D, exec, pkill -SIGUSR1 wayscriber

Reload Hyprland:

hyprctl reload

Session Continuity

Enable Session storage in the configurator to pick up where you left off. wayscriber keeps per-monitor boards, pen color, and thickness between launches, and you can disable the feature anytime for a clean slate.

Quick Controls Reference

Drawing

  • Freehand: Drag with mouse
  • Line: Shift + drag
  • Rectangle: Ctrl + drag
  • Ellipse: Tab + drag
  • Arrow: Ctrl+Shift + drag
  • Text: Press T, click, type

Modes

  • Whiteboard: Ctrl+W
  • Blackboard: Ctrl+B
  • Transparent: Ctrl+Shift+T

Colors

  • R - Red
  • G - Green
  • B - Blue
  • Y - Yellow
  • O - Orange
  • P - Pink
  • W - White
  • K - Black

Editing

  • Undo: Ctrl+Z
  • Redo: Ctrl+Shift+Z
  • Clear all: E
  • Help: F10
  • Configurator: F11
  • Status bar: F12
  • Exit: Escape / Ctrl+Q

Ready to Get Started?

Check out the full documentation and source code on GitHub

View on GitHub