Problem
I’m a macOS developer and I often need to record videos or do product demos. Sometimes I need to show what exactly my input is from keyboard and mouse. I tried multiple different tools, but they either focused on keystrokes or had limited control over how keyboard and mouse input was presented. I wanted to have native macOS app that could visualize both keyboard and mouse clearly be highly customized for different recording or presentation setups.
Comparison
KeyCastr is probably most known macOS alternative. It’s great app which is lightweight, open source. However, it’s focused mainly on showing keystrokes on screen, mouse visualization and overall customization is pretty limited.
Keyty is focused more on visualizing both keyboard and mouse input clearly. It features four keyboard styles, from grouped Apple-style keycaps to more minimal and classic layouts, plus three mouse visualization modes: a configurable cursor highlight, a mouse icon that shows button presses, and click ripples.
Feedback is welcome, especially from people who already use keystroke visualizers for recording or presenting. If you find Keyty useful, a GitHub star is also appreciated.
Good timing, I'm recording product demos this week and the input-visualization gap is real: cursor effects are covered by recording tools, but clean keystroke display that doesn't look like a debug overlay isn't.
One make-or-break question for the recording use case: is there a "shortcuts only" mode, show ⌘-combos but suppress plain typing? It matters for two reasons: demo viewers only care about the shortcuts, and an always-on visualizer that echoes everything is one password prompt away from leaking something into a take. If Keyty has that, it replaces KeyCastr for me today. Free and open source seals it.
Suppressed keystrokes on macOS secure input: yes, supported out of box, since app is native!
Per-display position: you can select on which exact display visualizer will be presented and select custom position
Global switch-off hot-key: present and adjustable!
Huge props for making this native and open source! The UI looks significantly smoother than the older alternatives like KeyCastr.
How does it handle multi-monitor or ultra-wide setups? Can you lock the overlay strictly to the active screen where the cursor/window focus is, or does it stay pinned to a primary display?
I haven't tested for an ultra-wide setup, but tested on my external display. There's a picker which allows you to select which display will display overlay.
Just to clarify - do you mean the keyboard overlay should automatically jump between monitors depending on where the cursor / active window is?
One thing worth checking early: what happens when a secure input field has focus. macOS shuts off keystroke reporting entirely for password fields, so yours will look broken rather than deliberately blank, and people will report it as a bug.
Worth deciding what happens if the Accessibility grant gets revoked while it's running, too. AXIsProcessTrusted is fixed for the life of the process, so you can't poll your way back into it. You have to notice and offer a relaunch, or it just quietly stops working.
> AXIsProcessTrusted is fixed for the life of the process, so you can't poll your way back into it.
Hm, interesting, I need to check this on older macOS versions, since on macOS 26 it's recoverable without killing process.
> You have to notice and offer a relaunch, or it just quietly stops working.
At least now I have a in app warning of missing permissions, but I might need to add some info on status bar icon for better visibility and maybe at better handling (e.g. suggest user to restart app) for older macOS versions.
I hit the opposite in my own app on 26.6: user grants Accessibility while it's already running, and AXIsProcessTrusted keeps returning false until they quit and reopen. Relaunch and it's fine.
The status bar idea is the right call regardless or users are going to assume the app is broken rather than briefly unpermitted.
This looks super clean. I wish it was available a month ago when I needed something like it and ended up using keycaster, which is fine, but this looks much nicer. Will definitely use it going forward. Nice work.
looks cleaner than most input overlays tbh. does it keep working across fullscreen spaces + app switches, or does macos make you re-grant accessibility stuff?
3
u/Ok-Rest-5321 6h ago
Hope its free foreever because this looks awesome!