30 open-source projects similar to peng-zhihui/helloword-keyboard, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
ZMK is a modular firmware framework built on the Zephyr RTOS for wireless keyboards. It functions as a programmable system for defining custom keymaps, layers, and input behaviors, acting as an HID device emulator for keyboard and mouse input on computers and mobile devices. It specifically provides a controller solution for synchronizing two separate keyboard halves over wireless or wired links. The project is distinguished by its focus on Bluetooth Low Energy connectivity, featuring multi-device pairing and the ability to switch between several saved host profiles. It includes advanced powe
tmk_keyboard is keyboard firmware for AVR and Cortex-M microcontrollers designed to handle key matrix scanning and HID communication. It functions as an embedded hardware control library for managing GPIO pins and EEPROM storage, as well as a driver that transmits keystroke and mouse data to a host computer via USB or PS/2 protocols. The project features a layer-based keymap engine that allows physical keys to be mapped to multiple virtual layers. It also includes a legacy keyboard protocol translator to convert signals from vintage hardware standards to modern computer interfaces. The firmw
This project provides hardware specifications and configuration sets for building programmable split mechanical keyboards and macro pads. It focuses on column-staggered designs that utilize the QMK firmware framework to manage input behaviors and keymaps. The hardware design emphasizes modularity and customization, featuring hotswap sockets for switch replacement without soldering, rotary encoders for specialized control, and low-profile switch options. Visual feedback is integrated through per-key RGB lighting and I2C-based OLED status displays. The system covers a broad range of capabiliti
This project is a keyboard firmware framework and programmable keyboard ecosystem designed for Atmel AVR and ARM microcontrollers. It provides the embedded software necessary to implement the USB Human Interface Device standard, allowing hardware to communicate keystrokes and mouse movements to a host computer. The framework distinguishes itself by offering a comprehensive toolchain for custom hardware development, including a command line interface for project scaffolding, firmware flashing, and configuration linting. It supports a variety of flexible configuration methods, allowing users to
liquidctl is a command line interface and set of Python drivers used to monitor and control liquid cooling hardware. It functions as a liquid cooler controller, hardware telemetry tool, and RGB lighting controller, providing a unified way to manage temperatures, fan speeds, and pump rates for all-in-one and custom loop cooling systems. The project provides a Python hardware driver that enables programmatic control and telemetry collection without relying solely on the command line. It allows for the configuration of device lighting using standard RGB, HSV, and HSL formats. The system include
This repository is a comprehensive collection of reference implementations and sample libraries for the Universal Windows Platform. It provides practical examples of how to use Windows Runtime APIs to build cross-device applications, including detailed guidance on XAML-based declarative user interfaces and DirectX-integrated rendering. The project distinguishes itself by providing a wide array of hardware integration suites, covering low-level communication with USB, Serial, I2C, SPI, and GPIO peripherals. It includes specialized implementations for mixed reality holographic rendering, advanc
Tasmota is a universal firmware platform for ESP8266 and ESP32 microcontrollers, designed to provide local control and management of smart home hardware. It functions as an event-driven automation controller that replaces proprietary factory firmware, allowing users to manage relays, sensors, and lighting systems without relying on external cloud services. The system is built on a modular driver architecture that enables dynamic hardware configuration and peripheral support through a web-based management interface. The platform distinguishes itself through a template-driven hardware mapping s
Kmonad is a cross-platform keyboard remapper and advanced key mapping engine that intercepts physical keyboard inputs and transforms them into customized virtual output events. It functions as a programmable input wrapper and multi-layer keyboard manager, allowing users to redefine physical keys and route hardware inputs to virtual devices across different operating systems. The system distinguishes itself through a multi-layer management architecture that enables the definition of dynamic keyboard layers and overlays to change keyboard functions based on the current context. It implements co
Smartknob is an open-source programmable rotary interface platform that combines motor-driven feedback and sensor-based tracking to provide tactile input for digital environments. It functions as a customizable input device peripheral, utilizing a brushless motor and a magnetic encoder to translate physical rotation into precise control signals for software applications. The platform distinguishes itself through software-defined haptic feedback, which allows for the simulation of physical sensations such as clicks, springs, and hard stops. By employing closed-loop control and real-time motor
Kanata is a cross-platform keymap engine and keyboard firmware emulator that intercepts physical keystrokes to output modified signals on Windows, Linux, and macOS. It serves as a keyboard remapper and layer manager, allowing users to define custom key-map sequences and modal editing behaviors through a declarative configuration file. The system implements keyboard firmware features in software, enabling advanced behaviors such as tap-hold logic, unicode output, and dynamic macros. It utilizes a state-based layer stack to manage multiple sets of key assignments that toggle dynamically and sup
edk2 is a development project for creating system firmware that complies with the UEFI specification. It provides the necessary infrastructure to initialize hardware platforms and boot operating systems across multiple CPU architectures. The project utilizes a modular firmware architecture that decouples high-level management protocols from physical transport layers. It implements critical security features, including a measured boot chain, cryptographic primitives for image authentication, and support for Trusted Platform Module hardware and software implementations. Its capability surface
AliOS-Things is a scalable operating system for internet-connected devices. It provides an embedded firmware framework and runtime for managing hardware peripherals, network connectivity, and secure data execution across diverse CPU architectures. The system includes an edge AI inference engine for processing audio and image patterns locally without cloud dependencies. It also features a cloud connectivity SDK for automated onboarding, remote diagnostics, and log reporting, alongside a scripting engine for executing high-level code on resource-constrained hardware. Connectivity is handled th
ODrive is a hardware and software system for controlling brushless DC motors, providing firmware and control algorithms for precise position and velocity regulation. It implements a field-oriented control system to achieve efficient motion for permanent magnet synchronous motors and high-torque robotic actuators. The project includes a robotics actuator interface consisting of command line and graphical toolsets. These utilities are used for configuring motor parameters and monitoring hardware state in real time. The system covers high-performance motor control for robotics and automation, f
lf is a terminal-based file manager and TUI file explorer that provides keyboard-driven navigation for browsing and organizing files and directories. It operates as a shell-integrated tool that synchronizes the current working directory with the calling shell and supports vi-style keybindings for filesystem operations. The project distinguishes itself through its ability to render images directly in the terminal via the SIXEL graphics protocol and its shell-driven execution model, which allows users to extend functionality using external shell scripts and commands. It also implements a server
Deskhop is a DIY hardware KVM switch and USB HID input router. It provides the PCB layouts and firmware necessary to build a physical device that routes keyboard and mouse inputs between two computers. The project features a web-based configuration interface delivered via a virtual USB mass storage device, allowing users to manage hardware settings and calibration through a browser using WebHID. It supports seamless transitions between workstations via edge-of-screen cursor movement or hotkeys, including coordinate-mapped scaling to maintain vertical pointer position across monitors of differ
This project is a design framework and hardware specification for building custom split ergonomic mechanical keyboards. It provides the technical guidelines and design files necessary to assemble column-staggered keyboards. The framework includes build guides for assembling two-piece keyboards and supports the manufacturing of custom plates and cases. It incorporates a system for generating circuit board layouts based on defined hardware constraints and supports various mechanical switch types and mounting methods. The project covers the full development cycle from ergonomic hardware prototy
Oni2 is a high-performance, extensible text editor and project-based file manager. It functions as a modal code editor, utilizing a keyboard grammar of verbs and motions to navigate and modify source code without a mouse. It also serves as an LSP client, integrating Language Server Protocol servers to provide code completion, symbol navigation, and refactoring. The editor distinguishes itself by acting as a VSCode extension host, allowing it to load and execute language servers and debuggers from the VSCode ecosystem. It provides a programmable environment where custom functionality is implem
skhd is a keyboard shortcut manager and hotkey daemon for macOS. It functions as an input remapper that maps custom keyboard shortcuts to shell commands and system actions via a plain text configuration file. The utility supports modal keyboard workflows, allowing groups of shortcuts to activate only when the system is in a specific operational mode. It also enables application-specific hotkeys and application blacklisting, ensuring shortcuts only trigger based on which application is currently in focus. Additional capabilities include the remapping of hardware media keys and the synthesis o
Tridactyl is a Vim-like Firefox extension that provides a comprehensive keyboard-driven interface for browsing, tab management, and page interaction. It replaces traditional mouse-based navigation with Vim-style keybindings, an ex-mode command line, and a hint overlay system for selecting and interacting with page elements. The extension is built around a core infrastructure that includes a modal command parser, a keybinding configuration system, and a content-script command bridge for executing commands in page context. The extension distinguishes itself through its deep integration with Fir
Miryoku is a universal mapping specification for ergonomic and orthogonal keyboards. It provides a standardized set of key assignments and layers designed to decouple logical input intent from specific physical hardware, ensuring consistent key placement across different firmware and devices. The system focuses on home-row navigation, placing cursor movement, mouse emulation, and system functions on the home row to minimize hand travel. It utilizes a layer-based input strategy with toggleable and modal layers to manage numerals, symbols, and media controls without relying on complex modifier
OpenLogi is a local-first hardware configuration tool and cross-application input mapper written in Rust. It enables the customization of peripherals using the HID++ protocol, allowing users to manage device settings without the need for cloud accounts or telemetry. The system distinguishes itself by employing a local-first approach, storing all device configurations and button mappings in plain-text files. This design supports manual editing and version control while ensuring that commands are dispatched directly to the hardware memory. The suite covers several hardware management areas, in
logiops is a userspace driver and configuration tool for Logitech hardware that utilizes the HID++ protocol to manage input behaviors. It functions as an input device mapper and peripheral gesture engine, allowing for the assignment of custom key presses and actions to hardware buttons on compatible mice and keyboards. The project differentiates itself through a specialized gesture engine that triggers software actions based on mouse movement and button combinations. It also provides hardware-level control over vendor-specific features, such as adjusting SmartShift thresholds for scroll wheel
Solaar is a device management tool and configuration suite for Logitech wireless peripherals on Linux. It serves as an input peripheral monitor that tracks battery levels and connection link quality via a system tray application, while providing a receiver manager for pairing and unpairing wireless devices with proprietary USB receivers. The project features an input device automation engine that maps hardware events and mouse gestures to simulated keyboard inputs or system commands. This allows for the creation of custom rules that trigger actions based on device notifications or specific wi
LidAngleSensor is a tool and sensor interface that retrieves the physical opening angle of a laptop screen by querying the internal Human Interface Device. It translates raw hardware sensor reports into a numerical representation of the lid's position. The project functions as a lid-triggered audio player and a screen region capture tool. It can monitor hardware sensor state changes to play specific sound effects when a laptop lid opens or closes and isolate a defined coordinate area of the display buffer to copy a specific screen region to the clipboard. The system handles hardware event au
Vimium-C is a keyboard-driven browser extension that provides a vim-like navigation tool for web browsers. It functions as a customizable key mapper and accessibility tool, allowing users to interact with web content and manage browser tabs and windows without a mouse. The project distinguishes itself through advanced key mapping capabilities, including the ability to define contextual shortcuts based on the website host and remap keyboard layouts. It implements mode-specific mappings to prevent command conflicts and allows for specific keyboard mappings to function within text input boxes.
OpenTabletDriver is a user-mode graphics tablet driver and USB HID input manager that translates raw USB input from digitizer hardware into system cursor and pen events. It serves as a hardware abstraction layer that normalizes input from various tablet brands into a consistent API, providing a cross-platform pen interface with pressure and tilt sensitivity. The project distinguishes itself through a plugin-based architecture and a profile-based configuration system, allowing for custom filters, interpolators, and persistent hardware setups. It includes specialized tools for hardware driver d
SharpKeys is a Windows registry keyboard remapper and input customizer. It functions as a tool for changing keyboard key assignments by modifying the Windows registry scancode map. The utility includes a keyboard key identifier to detect the internal scan code of a pressed key, which facilitates accurate remapping and identification of physical keys. The software covers keyboard input identification and custom keyboard layout setup, allowing users to swap or disable keyboard inputs by managing the Windows registry.
OpenRGB is a centralized software suite for controlling colors and lighting effects across various brands of RGB hardware. It functions as a cross-platform controller and hardware control system that provides a unified interface for managing lighting profiles and effects. The project features an extensible plugin framework and a dedicated plugin interface that allow for the addition of new hardware support and integration features. It includes a network gateway that exposes an API for third-party applications to send lighting commands to connected devices. The system supports multi-computer
WLED is a web-based firmware designed for ESP8266 and ESP32 microcontrollers to manage addressable LED strips and matrices. It functions as a comprehensive IoT lighting automation system, providing the tools to control individual pixels, define logical segments, and execute dynamic lighting effects. The platform supports a wide range of hardware configurations, including matrix panels and non-addressable LED arrays, while offering granular control over brightness, color palettes, and animation speed. The project distinguishes itself through its extensive support for networked orchestration an