Open-source project
devmobasa/wayscriber avatar
devmobasa/wayscriber

wayscriber: Screen Annotation for Wayland Desktops

Live overlay for drawing, annotating, presenting with zoom, hiding text, and capturing screenshots on Linux. Can be used as whiteboard or blackboard. Packed with features. Highly customisable. Written in Rust.

769 stars26 forksRustMIT

At a glance

What is it?
wayscriber is a MIT licensed Rust tool that draws over any application on Wayland, with a ZoomIt-like feature set, a persistent daemon you toggle with one keybind, and a comparison table that is honest about what it does not do. It suits Linux presenters and reviewers who annotate live rather than edit a screenshot afterwards.
Who is it for?
wayscriber fits a Linux user on a Wayland compositor who annotates or presents live and wants the drawing to feel native to the session rather than bolted on, and who can accept a tool that only runs on Wayland. It is the wrong choice on X11, where it is not supported at all, and it is the wrong choice if you need the break timer that ZoomIt provides.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 1 day ago.
What is it written in?
Mainly Rust, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 24, 2026, and from our analysis. They are not legal advice.

Editorial analysis

A ZoomIt equivalent written for Wayland

wayscriber describes itself as a ZoomIt-like real-time screen annotation tool for Linux and Wayland, written in Rust. The pitch is one line: draw over any app, present with callouts and zoom, keep your boards between sessions, and toggle the lightweight daemon with one keybind. The Wayland part is the whole reason the project exists rather than being a port, since the older approach to annotating a screen on Linux depended on a desktop environment's own facilities. The reasons to use it are listed as annotating live over any app without disrupting your workflow, professional presentation tools, persistent sessions that survive restarts, native Wayland performance with ZoomIt-like controls, and a lightweight daemon with instant toggle. The project also describes itself as packed with features and highly customisable, and the screenshots back that up with a radial tool menu, boards and pages, blackboard and whiteboard modes, an advanced toolbar, a command palette, a built-in controls overlay and a simple toolbar.

The platform table, and the one line that disqualifies most desktops

The support table is the most important thing in the readme for anyone deciding. Wayland compositors with layer-shell are fully supported, naming Hyprland, Sway, River, Wayfire and Niri or Cosmic. Plasma and KWin are supported as a layer-shell overlay, with Freeze and Zoom using the xdg-desktop-portal-kde screenshot portal. GNOME is partial: the normal overlay and Freeze work via the portal when available, but light passthrough is unavailable. X11 is not supported at all. That last row is a hard boundary, and it means the tool is not an option for anyone still on an X11 session. On Plasma and KWin, Freeze and Zoom need a working screenshot portal and may require portal consent, which is a permission prompt you will see the first time you use them.

The comparison table admits what is missing

There is a comparison table against ZoomIt on Windows, and it is worth reading because it is unusual for a project to publish its own gaps. Drawing tools, boards and backgrounds, zoom, multi-line text, custom fonts, a config file and a help overlay are all things wayscriber has and ZoomIt does not. The break timer is the one row where the other way round applies, since ZoomIt has it and wayscriber does not. So the honest summary is that wayscriber is a superset of ZoomIt on the drawing and configuration side and a subset on the presentation-timing side. The comparison is also against a specific product on a specific operating system, which is the right frame, because the question for a Linux user is not whether ZoomIt is better in general but what the closest alternative on Wayland actually does.

The drawing tools, and the shape recognition in the pen

The feature list for drawing and editing is long. There is a freehand pen, a highlighter and an eraser with circle and rectangle shapes, and shapes in lines, rectangles, ellipses and polygons with a fill toggle, where the properties panel gives a fill its own colour. Arrows come in four styles, standard, pointy, curved with a draggable handle to route around what is in the way, and double-ended, with optional auto-numbered labels and step markers for walkthroughs. The blur tool has four styles, soften, pixelate, secure which flattens the region to one colour, and black out. The spotlight tool dims everything except the regions you draw, with optional magnification from 1 to 4 times. There is a Shape Pen that turns natural strokes into editable lines, circles, ovals, rectangles or triangles while leaving other strokes freehand, with one undo returning a recognised shape to its ink.

Configuration by key and by GUI

The customisation story is a configuration file with a lot of keys, and the readme refers to them directly so that a reader can see the surface. Pen smoothing is a level from 0 to 6 and its memory is per session, and it can be adjusted from the style pill's Pen feel panel with a live preview, or the toolbar can swap it for inline Smooth meters or steppers depending on the stroke_controls setting. Shape recognition has its own sensitivity from 0 to 4 and a Detect stepper, and the level is remembered with the session. Text halos are on by default and take their contrast from the background the label sits on, so a label stays readable over a board, a filled shape or a frozen screen, with the caveat that a live transparent board has no pixels to sample and falls back to the text colour, and the behaviour can be turned off with the text_halo_enabled setting. The configurator directory in the repository holds a separate GUI application, and the Cargo workspace has it as its own member.

The daemon, the one-shot mode and passthrough

The usage model has three modes, and the daemon is the recommended one. The lightweight daemon stays resident and is toggled with a single keybind, which is what makes the tool feel instant rather than something you launch. The one-shot mode is the alternative when you would rather start the tool when you need it. Light passthrough mode is the third, and it is the one GNOME does not have, which is why the platform table marks GNOME partial. The dependency list shows what each of these needs. Daemon mode uses the StatusNotifierItem library for the tray icon and tokio for the multi-threaded runtime, and the screenshot capture path uses zbus, the D-Bus client, which is how the tool talks to the desktop portal. The Wayland side is built on wayland-client and wayland-protocols, with the wlr protocols and the smithay client toolkit for keyboard handling, and Cairo and Pango do the drawing and the text rendering.

Installation across distributions, and the version floor

The table of contents lists installation routes for Debian and Ubuntu, Fedora and RHEL, Arch Linux through the AUR, NixOS and Nix, one-off GitHub releases, building from source and screenshot tools. The version floor is the detail to check first: the v0.9.23 and later prebuilt wayscriber packages require glibc 2.39 and GTK 4.12, and the note adds that the AUR packages and Nix are unaffected. That is a useful asymmetry to know about, because on an older distribution the AUR or Nix route may still work when the prebuilt packages do not. The package version in the manifest is 0.9.27 on edition 2024 with a minimum Rust of 1.98.1, and the repository carries a rust-toolchain.toml, a flake.nix and a global.json, so the toolchain is pinned rather than left to whatever happens to be installed.

Licence, releases and the scale of the codebase

The licence is MIT, and the project ships an English and a Simplified Chinese readme plus a locales directory, so the interface is translated rather than English-only. The release history is a long series of patch releases, with v0.9.25 on 2025-09-10, v0.9.26 on 2026-10-13 and v0.9.27 on 2026-10-18, and the last push was on 2026-10-19. The repository layout suggests a large project: src for the main crate, configurator for the GUI, tools, tests, examples, docs, packaging, assets and locales, plus a build.rs, a config.example.toml, a clippy.toml and a clean.sh. The examples directory holds a session-manager document, which points at the persistence side of the tool, since keeping boards between sessions is one of its stated features. The project also has a docs site at wayscriber.com/docs, an AGENTS.md, a contributing guide, and a roadmap section in the readme.

Editorial conclusion

wayscriber fits a Linux user on a Wayland compositor who annotates or presents live and wants the drawing to feel native to the session rather than bolted on, and who can accept a tool that only runs on Wayland. It is the wrong choice on X11, where it is not supported at all, and it is the wrong choice if you need the break timer that ZoomIt provides. Before installing, check the glibc and GTK 4 version your distribution has, because the prebuilt packages need glibc 2.39 and GTK 4.12.

Frequently asked questions

Does wayscriber work on X11?

No, X11 is not supported. Wayland compositors with layer-shell are fully supported, Plasma and KWin are supported, and GNOME is partial because light passthrough is unavailable there.

What does wayscriber add compared with ZoomIt?

The comparison table in the readme lists multi-line text, custom fonts, a config file and a help overlay as things wayscriber has and ZoomIt does not. The one feature listed the other way is the break timer, which ZoomIt has and wayscriber does not.

What does the wayscriber daemon do?

It stays resident as a lightweight process and is toggled with a single keybind, which is the recommended usage mode. The alternatives are one-shot mode, and light passthrough mode, which is the mode GNOME does not support.

What versions do the prebuilt wayscriber packages need?

The v0.9.23 and later prebuilt packages require glibc 2.39 and GTK 4.12. The AUR packages and Nix are unaffected, and the project is built with Rust edition 2024 and a minimum Rust version of 1.98.1.

What annotation tools does wayscriber provide?

A freehand pen, highlighter, eraser, shapes including lines, rectangles, ellipses and polygons with fill, four arrow styles, a blur tool with soften, pixelate, secure and black out modes, a spotlight tool that dims everything outside the regions you draw, multiline text and sticky notes, and a shape pen that turns natural strokes into editable shapes.

Official sources

  1. devmobasa/wayscriber on GitHub
  2. License: MIT
  3. Project website
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/devmobasa-wayscriber.svg)](https://hysenlabs.com/projects/devmobasa-wayscriber)

Was this useful?