Open-source keyboard firmware for Atmel AVR and Arm USB families
  • C 90.1%
  • C++ 6.4%
  • Python 1.8%
  • Makefile 1.2%
  • Linker Script 0.2%
  • Other 0.2%
Find a file
2026-07-18 17:57:38 +08:00
.github Bump actions/cache from 5 to 6 (#26293) 2026-06-23 21:30:44 +01:00
.vscode Use relative paths for schemas, instead of $id. Enables VScode validation. (#25251) 2025-05-19 22:10:39 +10:00
builddefs Fix VERBOSE make flag (#26289) 2026-06-26 14:20:10 +01:00
data Fix audio.pins in keyboard.json not being converted to C defines (#26107) 2026-06-09 11:26:41 -07:00
docs [Docs] Clarify Python HID package name in Raw HID docs (#26318) 2026-07-11 06:32:34 +01:00
drivers Merge remote-tracking branch 'origin/master' into develop 2026-05-26 00:43:27 +00:00
keyboards Add my keyboard config 2026-07-15 13:49:38 +08:00
layouts Remove deprecated RGB_ and Mouse keycodes (#25444) 2025-07-11 11:05:41 -06:00
lib Avoid computing _get_default_distrib_path when QMK_DISTRIB_DIR is set (#26339) 2026-07-18 10:06:00 +10:00
modules/qmk Add API version assertion for split_data_sync module (#26237) 2026-05-29 07:56:36 +01:00
platforms fix(ws2812-pwm): allow WS2812_PWM_TICK_FREQUENCY override (#26186) 2026-05-17 00:14:52 +01:00
quantum Key Overrides: Fix Ghost Modifier Bug on macOS (with Karabiner Elements) (#25886) 2026-06-13 22:28:41 +10:00
tests [Core] Options to constrain Speculative Hold: SPECULATIVE_HOLD_ONE_KEY and SPECULATIVE_HOLD_FLOW_TERM. (#26099) 2026-05-22 22:50:52 +01:00
tmk_core Align Mouse USB descriptor (#26230) 2026-05-27 00:43:26 +01:00
users Add EOL to non-keyboard files (#24990) 2025-03-06 23:17:51 +00:00
util Additional bootstrapper safety checks (#26242) 2026-06-01 09:07:29 +01:00
.clang-format Clang-format tweaks (#15906) 2022-02-11 20:00:34 -08:00
.clangd More compiledb fixes. (#25355) 2025-06-15 11:56:10 +10:00
.editorconfig .editorconfig: fix inline comment, tidy name section for yaml (#24416) 2024-09-21 19:48:31 +01:00
.gitattributes eol=lf, where appropriate (#15752) 2022-01-05 21:56:31 +00:00
.gitignore Add .env, .envrc to gitignore (#25904) 2026-01-03 13:55:17 +00:00
.gitmodules [Core] Quantum Painter - LVGL Integration (#18499) 2022-12-13 07:51:14 +11:00
Doxyfile Remove arm_atsam platform (#24337) 2024-09-02 03:48:17 +01:00
doxygen-todo Remove SERIAL_LINK feature (#14727) 2021-10-07 12:32:05 +11:00
flash.sh Add flashing script 2026-07-15 13:49:44 +08:00
LICENSE add an explicit lisence file for github to pickup 2017-11-13 20:50:54 -05:00
license_GPLv2.md Clarify the quantum license (#1042) 2017-03-28 15:20:36 -07:00
license_GPLv3.md Clarify the quantum license (#1042) 2017-03-28 15:20:36 -07:00
license_Modified_BSD.md Clarify the quantum license (#1042) 2017-03-28 15:20:36 -07:00
Makefile Fix VERBOSE make flag (#26289) 2026-06-26 14:20:10 +01:00
nose2.cfg Setup a python test framework 2019-09-07 07:58:41 -07:00
paths.mk Remove quantum/audio from global VPATH (#18753) 2022-10-20 14:41:45 +01:00
readme.md Merge point for 2026q2 breaking changes. 2026-06-01 02:24:35 +01:00
requirements-dev.txt Macros in JSON keymaps (#14374) 2021-11-22 11:11:35 -08:00
requirements.txt Align to latest CLI dependencies (#24553) 2025-03-20 14:04:10 +11:00
setup.cfg Quantum Painter (#10174) 2022-04-13 18:00:18 +10:00

Quantum Mechanical Keyboard Firmware

Current Version Discord Docs Status GitHub contributors GitHub forks

This is a keyboard firmware based on the tmk_keyboard firmware with some useful features for Atmel AVR and ARM controllers, and more specifically, the OLKB product line, the ErgoDox EZ keyboard, and the Clueboard product line.

Documentation

The docs are powered by VitePress. They are also viewable offline; see Previewing the Documentation for more details.

You can request changes by making a fork and opening a pull request.

Supported Keyboards

The project also includes community support for lots of other keyboards.

Maintainers

QMK is developed and maintained by Jack Humbert of OLKB with contributions from the community, and of course, Hasu. The OLKB product firmwares are maintained by Jack Humbert, the Ergodox EZ by ZSA Technology Labs, the Clueboard by Zach White, and the Atreus by Phil Hagelberg.

Official Website

qmk.fm is the official website of QMK, where you can find links to this page, the documentation, and the keyboards supported by QMK.