screenrecording-2026-08-11_13-08-11.webm
Omascribe is a small native Wayland overlay for drawing live annotations over any app. It is built for Omarchy and Hyprland in C++23 with Qt 6 and LayerShellQt.
Unlike a screenshot editor, Omascribe does not capture or freeze the screen. The desktop
stays live underneath a transparent annotation canvas until you press Esc.
- Pen and translucent highlighter
- Lines, arrows, rectangles, and ellipses
- Single-line text annotations
- Stroke eraser, clear, undo, and redo
- Six presentation colors, a custom color picker, and adjustable tool size
- Compact toolbar that can be hidden while presenting
- Opens on the monitor containing the pointer
- Single-instance protection
Annotations currently live for one overlay session. Saving, persistent sessions, multi-monitor canvases, click-through presenter mode, and a background daemon are future work rather than hidden runtime behavior.
On Omarchy, the installer obtains the native dependencies and installs into ~/.local:
./install-omarchyFor a local development build:
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Debug
cmake --build build --parallel
QT_QPA_PLATFORM=offscreen ctest --test-dir build --output-on-failureRequired packages are cmake, ninja, qt6-base, and layer-shell-qt.
Stock Omarchy leaves Super+D free, so it is the recommended binding. Add it
to a user-owned Hyprland Lua config loaded after Omarchy defaults:
o.bind("SUPER + D", "Annotate screen", "omascribe")
hl.layer_rule({
match = { namespace = "^omascribe$" },
no_anim = true,
animation = "none",
})If Super+D is already assigned by a personal override or another annotation
tool, choose a different key instead of replacing it unintentionally.
Reload and verify after editing the configuration:
hyprctl reload
hyprctl configerrorsThe installer deliberately does not modify Hyprland configuration.
| Input | Action |
|---|---|
F |
Freeform |
H |
Highlighter |
L |
Line |
A, Ctrl+Shift + drag |
Arrow |
Ctrl + drag |
Rectangle; tapping Ctrl also selects it |
Tab, then drag |
Ellipse |
T |
Text; click, type, then press Enter |
X |
Eraser |
C |
Cycle color |
R, O, Y, G, B, P |
Red, orange, yellow, green, blue, purple |
| Click color toolbar icon | Preset swatches and custom color picker |
Mouse wheel, [, ], -, + |
Change size |
Right click, Ctrl+Z |
Undo |
Ctrl+Shift+Z, Ctrl+Y |
Redo |
E, Ctrl+Backspace |
Clear everything |
F9 |
Hide or show toolbar |
Esc |
Close overlay |
The first release targets Wayland, Hyprland, and Omarchy. Layer-shell is required; X11 and generic desktop-window fallbacks are intentionally outside the initial scope.
Omascribe is inspired by two excellent Wayland tools:
- Wayscriber — its live screen annotation workflow and presentation-focused controls.
- Omasnap — its native C++/Qt approach and polished annotation toolbar.
Omascribe is an independent implementation focused specifically on lightweight live annotations for Omarchy.