30 open-source projects similar to robertwhurst/keyboardjs, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best KeyboardJS alternative.
Mousetrap is a JavaScript keyboard shortcut library used to bind specific key combinations and sequences to custom functions in web applications. It serves as a keyboard event handler that listens to and manages keypress, keydown, and keyup events across a browser window. The library includes a sequence-based input manager for triggering actions based on a precise series of keys pressed in a specific order. It also provides a custom shortcut recorder to capture user keystrokes for defining and saving personalized shortcuts. The system supports global binding registration to ensure shortcuts
A keyboard input capturing utility in which any key can be a modifier key.
Keymaster is a keyboard shortcut library for web applications that provides utilities for intercepting keyboard events and mapping key combinations to handler functions. It includes a keyboard event manager and a key state tracker to monitor and query which keys or modifiers are currently held down. The library features a scoped input handler that allows shortcuts to be grouped into named contexts. This enables the application to switch between different sets of available actions depending on the active area of the interface. The system includes input filtering to prevent global shortcuts fr
Tinykeys is a lightweight JavaScript utility for mapping keyboard combinations, sequences, and regular expression patterns to specific callback functions. It serves as an input mapping utility that triggers actions based on simultaneous modifier key presses or chronological key sequences. The library distinguishes itself by supporting dynamic key pattern matching through regular expressions and state-based sequence tracking to execute actions after a specific series of presses. It also includes a keyboard event parser that converts human-readable shortcut strings into structured data. These
Ninja-keys is a keyboard-driven command palette and quick-launch menu built as a web component for websites and single-page applications. It functions as a utility for binding, managing, and cleaning up global keyboard shortcuts across different web frameworks and static HTML. The component integrates fuzzy search indexing to filter available commands dynamically by matching user input strings against keywords and titles across flat and nested structures. It maintains command submenus as a hierarchical state tree that allows users to drill down and bubble back up through parent-child contexts
hotkeys-js is a JavaScript keyboard shortcut library and event manager used to map key combinations to callback functions within web applications. It serves as an input shortcut orchestrator that captures and filters keyboard events to execute custom actions. The library distinguishes itself through shortcut scope management, allowing shortcuts to be organized into named groups. These scopes can be toggled to prevent command conflicts across different application states. The system covers keyboard shortcut binding and unbinding, real-time key state querying, and input event filtering to prev
Hotkey is a client-side JavaScript library designed to enhance web application accessibility and navigation through keyboard shortcut integration. It enables developers to bind keyboard shortcuts and multi-key sequences directly to HTML elements using declarative attributes. The library functions as a web component and DOM interaction helper that triggers clicks, focus events, or custom actions when specific key combinations are pressed. The project features document-level event delegation to capture global keyboard inputs efficiently and route them to targeted elements. It includes input sco
Angular Hotkeys is a configuration-centric library designed for registering keyboard shortcuts and generating automated cheatsheet overlays within Angular web applications. It provides a centralized service to bind specific key combinations to programmatic actions and callbacks, keeping markup clean and separation of concerns intact. The library includes dynamic cheatsheet generation that inspects active shortcut definitions at runtime to render a searchable visual help interface listing all available commands and descriptions on demand. It manages shortcut availability through automated rou
Kando is a cross-platform desktop pie menu launcher that runs on Windows, macOS, and Linux, including Wayland compositors. It opens a radial menu on a hotkey and lets users select applications, files, or shortcuts by moving the cursor toward a slice, and can also be controlled from the command line to open specific menus or trigger shortcuts. The project distinguishes itself through a gesture-based selection system that interprets pointer movement direction and distance rather than requiring precise clicking, and an input device abstraction layer that normalizes input from mouse, stylus, touc
xgplayer is a plugin-based HTML5 video player framework that supports multiple streaming formats including MP4, FLV, HLS, and dash. It is built on a component architecture that allows developers to extend functionality through self-contained plugins, with staged loading protocol adapters that reduce bandwidth usage. The player includes a strategy center for dynamic optimization that adjusts buffering, bitrate, and source selection in real time to reduce first-frame delay and playback stalling. The player distinguishes itself through support for ultra-low latency live streaming with time-shift
Quick Tabs Chrome Extension is a browser tab manager extension and popup navigation interface inspired by Integrated Development Environment quick-open dialogs. It operates as an isolated popup script communicating with background processes to query and control browser state, displaying all open browser tabs across windows in recently used order for rapid switching. The extension provides fuzzy search filtering to process user queries against a combined index of tabs, bookmarks, and history using string distance algorithms. It organizes flat tab lists into nested trees representing parent bro
A fresh and flat UI-Kit specially for desktop application, made with ♥ by Vue.js 2.0 (DEPRECATED)
Vux is a mobile web UI kit and Vue mobile UI library consisting of predefined layout and interface components. It functions as a WeUI component framework that implements a standardized design language for web applications. The library provides a collection of reusable interface elements optimized for mobile browser screen dimensions and touch interactions. It ensures visual consistency across different mobile devices by mapping component styles directly to the WeUI mobile design specification. The framework covers mobile web interface design, mobile UI development, and the rapid assembly of
2012 UI framework (I was 20 years old, React didn't exist, inspired by Knockout)
PhantomJS is a scriptable, headless browser engine based on WebKit that provides a programmatic interface for automating web page interactions. It operates without a graphical user interface, allowing for the execution of JavaScript to navigate pages, manipulate the document object model, and perform functional testing of web applications. The tool distinguishes itself by providing low-level control over the browser rendering lifecycle and network stack. It enables real-time interception and modification of network traffic, alongside the ability to generate visual snapshots and document expor
Angular is a platform for building web applications using a component-based architecture. It provides a comprehensive suite of tools for managing encapsulated UI units, including hierarchical dependency injection, a declarative template system, and fine-grained reactivity through signals. The framework supports complex application requirements such as client-side routing, form management, and internationalization. The project includes a command-line interface for scaffolding and build automation, alongside a testing ecosystem for unit and integration verification. It offers multiple rendering
Lucky Canvas is a canvas-based lottery component library that enables developers to build interactive prize wheels, grid-based lottery games, and slot machines for web and mobile applications. The project provides a rendering engine that draws directly on HTML Canvas elements, with automatic device pixel ratio scaling to ensure crisp displays on high-DPI mobile screens. The library packages each lottery type as a self-contained plugin with its own configuration and rendering logic, and wraps the core canvas functionality in framework-specific bindings for Vue, React, Taro, and UniApp without
This project is an educational code repository containing a collection of over 50 mini web development exercises. It serves as a front-end learning resource designed to help developers practice foundational skills by building small, interactive projects using standard HTML, CSS, and JavaScript. The repository distinguishes itself by focusing on standalone interactive component prototyping and the implementation of client-side logic. Each project is organized into a decoupled directory structure, allowing users to explore individual interface patterns and visual effects in isolation. These exe
Incubator-weex is a cross-platform mobile framework used to build user interfaces that run across different operating systems from a single codebase. It functions as a native UI renderer and a JavaScript native UI bridge, sending serialized UI descriptions from a JavaScript engine to native mobile components. The project includes a cross-platform UI bundler and build tool to compile source code into optimized bundles for native renderers. It also provides a UI previewer and prototyping toolset that allows for testing mobile interface pages within web browsers and on physical devices. The fra
DEPRECATED - A minimal component-based JavaScript framework
Hanzi Writer is an interactive Chinese character writing tutor and SVG animation library designed to visualize and validate the sequential construction of characters. It functions as a pedagogical tool for practicing calligraphy by rendering stroke-by-stroke animations and validating user-drawn paths. The library provides a system for comparing user input against predefined stroke sequences to verify writing accuracy in real time. It guides users through interactive exercises, directing the writing process and providing immediate feedback on stroke order. The tool handles the retrieval of ch
This project is a cross-platform desktop boilerplate and application template used to build software for Windows, macOS, and Linux. It provides a pre-configured foundation that combines Electron and React to accelerate the bootstrapping of desktop applications. The starter kit integrates TypeScript to maintain type safety in large-scale projects and provides a scalable structure for frontend integration within a desktop shell. The project includes a build pipeline for multi-platform software distribution, utilizing a module bundling system to optimize assets. Its architecture implements a sp
This project is a curated collection of galleries and component libraries that demonstrate pure CSS visual effects, 3D transforms, animation patterns, and layout solutions. It serves as a visual catalog of interactive UI elements and graphics built exclusively with HTML and CSS. The collection distinguishes itself by implementing complex interactivity, such as state management and animation triggers, using only CSS pseudo-classes and keyframes without any JavaScript. It also features a system for generative art and algorithmic patterns, as well as spatial 3D constructions using perspective an
uni-app is a cross-platform framework for building mobile and web applications from a single Vue.js codebase. It provides a multi-platform app compiler and a cross-platform UI library to ensure consistent behavior and visual presentation across different operating systems. The project features a native API bridge and a universal plugin system that wrap native SDKs into a unified interface, allowing developers to access device hardware and operating system functions. It utilizes a specialized rendering engine and native performance compilation to bypass standard document overhead and achieve h
Ant Design Pro is a comprehensive starter kit and administrative framework for building enterprise-level admin dashboards and professional user interfaces. It provides a structured project foundation and a set of React admin templates, including pre-defined layout blocks and routing configurations. The framework distinguishes itself by providing a built-in frontend mocking environment and mock-service middleware to simulate backend API responses during development. It also features integrated conversational AI components and assistant pages for embedding intelligent interactions directly into