A terminal-based screenkey — display your keystrokes and mouse clicks live in the terminal.
For streamers, tutorial creators, and anyone who wants their viewers to see what keys they're pressing.
This project is a TUI frontend for showmethekey. It reuses the CLI backend
(showmethekey-cli) to read input events from /dev/input/ via libinput, then
displays them in the terminal using ratatui.
- No GUI required — runs in any terminal emulator
- Protocol-independent — works on both X11 and Wayland via libinput/evdev
- Lightweight — single binary, minimal dependencies
Hardware → /dev/input/event* → showmethekey-cli (JSON) → smtk-tui (ratatui)
- Linux
showmethekey-cliinstalled (provides the input-reading backend)- A terminal emulator with Unicode support
If your user is in the input group, smtk-tui runs the CLI directly.
Otherwise it uses pkexec for privilege escalation.
cargo install --git https://github.com/ToaaMusic/smtk-tuiOr build from source:
git clone https://github.com/ToaaMusic/smtk-tui
cd smtk-tui
cargo build --releasesmtk-tuiPress keys or click mouse buttons — they will appear in the terminal.
Press q or Esc to quit.
Ctrl+C
Shift+Alt+T
↵
Keys are shown one per line, newest first. Modifier keys (Ctrl, Shift, Alt, Super) are automatically combined with the key they modify.
Idle for 2 seconds and the display clears automatically.
This project is licensed under the Apache License 2.0 — the same license as showmethekey, since it reuses the CLI backend.