-
bevy_egui
A plugin for Egui integration into Bevy
-
zxcvbn
An entropy-based password strength estimator, originally for Javascript by Dropbox
-
device_query
A basic library for querying keyboard and mouse state on-demand without a window
-
kb-remap
assist remapping macOS keyboard keys
-
xkbcommon
Rust bindings and wrappers for libxkbcommon
-
kbpwrd
A daemon for managing the pinephone keyboard case battery
-
doe
powerful Rust crate designed to enhance development workflow by providing an extensive collection of useful macros and utility functions. It not only simplifies common tasks but also…
-
pc-keyboard
PS/2 keyboard interface library
-
kanata
Multi-layer keyboard customization
-
animaterm
An easy to use terminal user interface library with keyboard macros support
-
nuhxboard
Cross-platform input visualizer
-
ch57x-keyboard-tool
Command-line tool for programming ch57x keyboard
-
app_window
Cross-platform window library
-
bevy_console
dev console for bevy
-
vuinputd
Container-safe mediation daemon for /dev/uinput using CUSE
-
turbo-genesis-sdk
Turbo Genesis SDK
-
keyseq
Specify key chords using
Ctrl-Ashort-hand -
keyboard-backlightd
Keyboard backlight timeout daemon for laptops
-
monio
Pure Rust cross-platform input monitoring library with proper drag detection
-
miro-pdf
A native pdf viewer for Windows and Linux (Wayland/X11) with configurable keybindings
-
egui-data-table
A generic data table widget implmentation for egui
-
keycode
translating keycodes based on Chrome's mapping of keys
-
debouncer-udevmon
linux keyboard debouncer with udevmon
-
rustautogui
Highly optimized GUI automation library for controlling the mouse and keyboard, with template matching support
-
aumate
Cross-platform desktop automation library with GUI support
-
usehid-core
Cross-platform virtual HID device library for AI agents
-
enya-plugin
Plugin system for Enya editor
-
keybinds
Platform&Framework-agnostic key binding (keyboard shortcut) dispatcher, parser, and generator written in Safe Rust
-
canoe
River window manager implementation in Rust
-
evdevil
Bindings to Linux' input device APIs: evdev and uinput
-
usbd-human-interface-device
Batteries included embedded USB HID library for usb-device. Includes concrete Keyboard (boot and NKRO), Mouse, Joystick and Consumer Control implementations as well as support for building your own HID classes.
-
afrim
Core library of the afrim input method
-
pop-os/system76-keyboard-configurator
Keyboard configuration UI
-
usehid
Cross-platform virtual HID device library for AI agents
-
kmsvnc
A KMS/DRM-based VNC server for Linux
-
gpio2key
A Raspberry Pi and Linux utility to map GPIO events to keyboard events
-
eitype
A wtype-like CLI tool and library for typing text using Emulated Input (EI) protocol on Wayland
-
klik
sleek typing tui with visualized results, intelligent practice, and comprehensive analytics
-
tapwatch
A terminal-based typing companion app with an animated dog character that reacts to your keystrokes
-
raw-input
A cross-platform library for capturing and simulating global input events (keyboard and mouse)
-
razerctl
Allows you to control your mouse and keyboard with Razer Synapse
-
kanata-tcp-protocol
TCP protocol for kanata. This does not follow semver.
-
kanata-keyberon
Pure Rust keyboard firmware. Fork intended for use with kanata.
-
tuiserial-ui
Terminal user interface components for tuiserial
-
schengen
Helper library for building Synergy-compatible clients and servers
-
rmk-config
Config crate of RMK
-
hotkey-listener
Cross-platform global hotkey listener with native Wayland support
-
qmk-via-api
VIA api implementation for QMK-based keyboards
-
vialctl
Control Vial-compatible keyboards from the command line
-
os-monitor
OS level monitor for tracking window focus and input events
-
keyboard-codes
Cross-platform keyboard key code mapping and conversion
-
kle-serial
Rust deserialisation library for Keyboard Layout Editor JSON files
-
zmk-studio-api
Rust + Python client for the ZMK Studio RPC API (Serial + BLE)
-
bevy-ui-navigation
A bevy plugin to make implementing ui navigation in your game a piece of cake
-
keyflow
Cross-platform input simulation library for keyboard, mouse and hotkeys
-
wlib
wayland windowing library that gives you a pixel buffer and not much else
-
rmcp-xdotool
MCP server for xdotool - mouse and keyboard automation
-
dygma_focus
Dygma focus api, for use with dygma keyboards
-
tfc
The Fat Controller. A library for simulating mouse and keyboard events.
-
p101_sys
build modular emulator of Olivetti Programma 101
-
bevy-alt-ui-navigation-lite
A bevy plugin to make implementing ui navigation in your game a piece of cake
-
buttons
API for storing and querying input state
-
vibelang-keys
Terminal MIDI keyboard for VibeLang - play MIDI from your computer keyboard
-
willhook
Capture all keyboard and mouse input regardless of application focus on the active windows desktop
-
cardinal-varvara
Varvara Ordinator
-
uiohook-rs
wrapper for the libuiohook, providing cross-platform keyboard and mouse hooking capabilities
-
win-hotkeys
A lightweight, thread-safe rust library for system-wide hotkey management on Windows
-
oxidekeys
Turn your keyboard into a programmable one
-
par-term-keybindings
Keybinding system for par-term terminal emulator
-
tauri-plugin-user-input
Tauri plugin for user input (monitor and simulate keyboard and mouse events)
-
karabiner-driverkit
Minimal Karabiner-DriverKit-VirtualHIDDevice wrapper for kanata
-
gravita-input
Input handling abstraction layer for Gravita game framework
-
kbd-iced
iced bridge for kbd — converts iced key events and modifiers to kbd types
-
kostka
lightweight Rubik's cube simulator
-
kinput
Low-level Rust library for input injection and global key capture on Linux
-
kbd-egui
egui bridge for kbd — converts egui key events and modifiers to kbd types
-
kitmap
A cross-platform CLI for tracking keyboard usage and generating heatmaps and statistics
-
intercept-bounce
An Interception Tools filter to eliminate keyboard chatter (switch bounce)
-
kbd-crossterm
crossterm bridge for kbd — converts crossterm key events and modifiers to kbd types
-
jay-config
Configuration crate for the Jay compositor
-
symfreq
A CLI tool for analyzing symbol frequency in source code
-
ke_auto_profile_switcher
This CLI automatically switches Karabiner-Elements profiles with and without USB keyboard connection
-
input_query
querying key states without a window
-
luo-utils
system automation including mouse/keyboard simulation, window operations, screenshots, and AI inference
-
par-term-input
Input sequence generation for par-term terminal emulator
-
pc-remote
cross-platform control over computer input devices
-
code-scanner-driver
Driver for barcode scanners and keyboard input with GTIN validation, async streaming, and burst detection
-
egui_keyboard
virtual keyboard widget for egui
-
wooting-rgb
Wooting RGB SDK Rust Library
-
daktilo
Turn your keyboard into a typewriter! 📇
-
hidutil-wrapper
A small hidutil wrapper to exchange tab and capslock keys
-
handsfreectl
Command line control interface for the Handsfree speech-to-text daemon
-
nikau
Linux network KVM for Wayland/X11/Console
-
hyperrust
RGB utility for HyperX Alloy Origins 60 keyboard
-
lk201
keyboard protocol implementation
-
inputbot
Cross-platform (Windows & Linux) library for simulating keyboard/mouse input events and registering global input device event handlers
-
caw_keyboard
Abstract representation of a (musical) keyboard for the caw synthesizer framework
-
hid-api-rs
Hardware proxy for injecting & intercepting keyboard/mouse inputs
-
boardsource-blok
Board Support Package for the rp2040 based Blok
-
scriptkeys
allows you to easily build macros (in Lua) on every key press for the supported devices
-
tangent
Typing game for the terminal!
-
sweecrypt
fun cipher (Rust)
-
wooting-analog-common
Common elements of the Wooting Analog SDK
-
ratatype
A fast, minimalist yet feature packed typing test application for the terminal
-
lan-mouse
Software KVM Switch / mouse & keyboard sharing software for Local Area Networks
-
keypad
Platform-agnostic driver for keypad matrix circuits
-
okey-cli
An advanced, easy-to-use key remapper for Linux
-
probe-zmq
Probe is a TUI ZMQ PUB/SUB monitor and debugger
-
astrelis
A modular 2D/3D game engine framework
-
mobot
A Telegram framework for Rust
-
polished_ps2
Low-level routines for initializing and managing the PS/2 controller and keyboard on x86 systems
-
vkey
Virtual Keycodes of Windows, Linux, and MacOS
-
polished_scancodes
handling and mapping keyboard scancodes in Rust
-
cin
that simplifies command-line input in Rust, especially mimicking C++-style input
-
kbd-evdev
evdev backend for kbd — Linux input device discovery, hotplug, grab, and event forwarding
-
hookmap
Registers hotkeys and simulates keyboard and mouse input
-
kata-tui
Terminal dashboard for Kata project visibility
-
winput
A high-level interface to Windows' input system
-
orbit_input_core
Core trait protocol for Orbit Engine's input system — provides unified, platform-agnostic abstractions for keyboard states and runtimes
-
perky
An application to permute and score keyboard layouts
-
app_input
Cross-platform mouse and keyboard input
-
nuhxboard-logic
Input listener for NuhxBoard
-
astrelis-input
Astrelis input handling library
-
sable-platform
Platform abstraction layer for Sable Engine - windowing, input, and events
-
livesplit-hotkey
cross-platform global hotkey hooks
-
keyboard-layout-lib
Cross-platform keyboard layout utilities
-
input-event
cross-platform input-event types for input-capture / input-emulation
-
kbd-winit
winit bridge for kbd — converts winit key events and modifiers to kbd types
-
kbd-tao
tao bridge for kbd — converts tao key events and modifiers to kbd types
-
tauri-plugin-ios-keyboard
Tauri plugin for iOS keyboard event handling and management
-
caw_computer_keyboard
computer keyboard to control caw synthesizer modules
-
autokbdlight
Automatic keyboard backlight daemon for Linux
-
ktrl
A Supercharged Keyboard Programming Daemon
-
afrim-preprocessor
A preprocessor to process keyboard events for an input method
-
caw_interactive
Interactive keyboard and mouse control, and visualization for the caw synthesizer framework
-
macboxx
A rust-based boxx-style keyboard mapper, designed for Slippi melee
-
rustyvibes
CLI to play mechanical keyboard sounds globally
-
wooting-sdk
Rust bindings for the Wooting Analog and RGB SDKs!
-
magma_input
Part of the Magma-API, which is the API of the Magma3D game engine. This is responsable for handling user input.
-
wrtype
wtype - a Wayland virtual keyboard tool that types text and sends key events
-
elicitor-wizard-ratatui
Ratatui wizard backend for elicitor (TUI step-by-step prompts)
-
wayland-kbd
Keyboard mapping utility for wayland-client using libxkbcommon
-
kbt
Keyboard tester in terminal
-
wowint
Allows to push integer to udp target in aim to remote control a game from key injection
-
input-emulation
cross-platform input emulation library used by lan-mouse
-
kll-core
KLL state-machine implementation focused on no_std embedded/bare-metal targets
-
wooting-analog-plugin-dev
designing plugins for the Wooting Analog SDK
-
pistoncore-input
A structure for user input
-
swipe-types
Types for swipe-engine
-
super-swipe-engine
A fast swipe typing prediction engine using Dynamic Time Warping (DTW)
-
kll-compiler
KLL (Keyboard Layout Language) Compiler - Rust Edition
-
xmirror
Capture keyboard and mouse events from a local machine and mirror them to a remote server over the network
-
device_query_revamped
A basic library for querying keyboard and mouse state on-demand without a window
-
multiinput
A pure rust gamepad/mouse/keyboard input library based off of rawinput for the windows platform
-
g11-macro-daemon
Linux daemon supporting the Logitech G11 Keyboard's macro keys
-
keylightd
Keyboard backlight daemon for Framework laptops
-
prongs
Input handling schema written in rust. Backend agnostic, provides serializability, assignment and unified interface for working with inputs. Keyboard, mouse and controllers supported.
-
kiibohd-hall-effect
Analysis crate for intepreting hall-effect keyboard switches (e.g. Silo Switches)
-
rust-bucklespring
Nostalgia bucklespring keyboard sound now in Rust!
-
kiibohd-keyscanning
Kiibohd gpio keyscanning module for momentary push button switches (keyboards)
-
g11-macro-keys
USB/HID model for the Logitech G11 Keyboard's macro keys
-
xmirror-server
Locally mirror remote keyboard and mouse events sent over the network
-
cotton-usb-host-hid
USB HID host for embedded devices
-
x11-input-supercharger
Adds system-wide Windows-like scrolling mode and conditional clicking using keyboard
-
lan-mouse-ipc
communication between lan-mouse service and frontends
-
qsk
Software keyboard remapper inspired by QMK
-
hidpp
HID++ protocol used by Logitech devices
-
msi-klc
MSI Keyboard Light Controller
-
scarab-nav-protocol
Protocol definitions for Scarab Navigation System - enabling keyboard-driven navigation for TUI applications
-
simulate_key
key combination simulator using enigo
-
ime_toggle
A CLI tool to toggle IME status on Windows
-
kiibohd-hid-io
HID-IO protocol implementation for the C kiibohd firmware
-
lan-mouse-proto
network protocol for lan-mouse
-
kiibohd-hall-effect-keyscanning
Hall Effect keyscanning for strobed matrices
-
keyberon
Parse command line argument by defining a struct
-
audiokeyboard
use your computer keyboard like a piano
-
rustsweeper
A command-line Minesweeper program written in Rust
-
keyboard-layouts
Keyboard layout keymaps with an API to generate HID packets
-
carose
A lightweight 2D Rust game library for sprites, menus, audio, and input handling
-
rsautogui
aims to be a cross-platform GUI automation rust crate
-
chord2key
Chorded gamepad input on linux
-
daktilo_lib
Turn your keyboard into a typewriter! 📇
-
rktk-drivers-common
Common drivers for rktk
-
maze_runner_rs
text-based maze game library
-
kontroll
connects to Keymapp's API, allowing control of ZSAs keyboard programmaticaly
-
cat-box
Work in progress game engine, inspired by arcade
-
wooting-rgb-sys
Wooting RGB SDK Rust Bindings
-
ivy-input
Input handling crate for Ivy
-
autogui
GUI Automation toolbox for Rust
-
keylogger
Register various user actions - keystrokes on the computer keyboard, movements and mouse keystrokes
-
simulate
allows you to simulate keystrokes
-
rusty-keys
Linux keyboard mapper
-
zinc64-sdl
Commodore 64 emulator app
-
msi_klm
MSI keyboard light manager library and utility
-
egui_virtual_keyboard
Virtual Keyboard for egui
-
wasm_keyboard
Handling key events in Rust using
web_sys -
oak-type
Open Analog Keyboard
-
quantum-soft-keyboard
Software keyboard remapper inspired by QMK
-
key-mapping
allowing for keyboard key code conversion between systems such as the DOM and HID usage-ids
-
enigo-copy
Enigo lets you control your mouse and keyboard in an abstract way on different operating systems (currently only Linux, macOS, Win – Redox and *BSD planned)
-
markflowy
A Markdown Editor App
-
egui-keybinds
keybinding system developed for EGUI
-
claves
capturing Keystrokes and Mouse clicks on Linux, MacOS and Windows
-
multiinput-zorua
A pure rust gamepad/mouse/keyboard input library based off of rawinput for the windows platform
-
rktk-rrp
rrp - RKTK Remap Protocol
-
noct
A cross-platform library to input simulation
-
zr-alshasha
an app to show keyboard input
-
raven-varvara
Varvara Ordinator
-
usb_hid_magstripe_reader
USB HID Magstripe reader driver (Megahunt HID FS Keyboard / Run Mall)
-
jackdaw_feathers
Internal crate for the jackdaw editor
-
jackdaw_widgets
Internal crate for the jackdaw editor
-
heartless_tk
card game similar with mshearts
-
QCard
QWERTYCards for the everyman developer
-
color-splotch
A drawing and animation program for children
-
musical_keyboard
A small lib for converting keyboard input into musical notes
-
keynergy
An efficient and extensible layout analysis library
-
spybeep
Make your keyboard beep 🤖🤖🤖
-
qmk-hid
CLI for bidirectional communication with QMK keyboards using raw HID
-
emoji_utils
an emoji search and enumeration utility with one function
-
input-device
Input devices include keyboard, mouse, etc
-
RustyPiano
terminal piano in Rust. Plays sa re ga notes with keyboard keys.
-
currawong_interactive
Interactive tools for currawong software-defined modular synthesizer
Try searching with DuckDuckGo.