Go to file
Andrew C a1096e1dec
Deprecate LAYOUT() macro in favor of JSON matrix definitions
* Indicate <keyboard>.h LAYOUT() deprecation in understanding_qmk.md

Initial documentation uses <keyboard>.json to define matrix pin definitions, rather than having users #define the LAYOUT() macro in <keyboard>.h  -  This change brings this docs inline with the [porting_guidelines](https://docs.qmk.fm/porting_your_keyboard_to_qmk),  QMK MSYS will also throw an error if this is attempted.

* Update understanding_qmk.md

enclosed '<' using backtick

* style guideline, now builds correctly

prior version indicates directory, new indicates config. still the same idea.
2025-11-04 15:06:56 +08:00
.github Add 'xap' branch to CI workflow and options (#25708) 2025-10-07 16:20:39 +11:00
.vscode Use relative paths for schemas, instead of $id. Enables VScode validation. (#25251) 2025-05-19 22:10:39 +10:00
builddefs Bump vite from 5.4.20 to 5.4.21 in /builddefs/docsgen (#25740) 2025-10-21 10:57:34 +01:00
data Refactor `tweetydabird/lotus58` (#25547) 2025-08-17 17:50:59 +01:00
docs Deprecate LAYOUT() macro in favor of JSON matrix definitions 2025-11-04 15:06:56 +08:00
drivers docs: fix misspellings (#25555) 2025-09-09 14:51:13 -07:00
keyboards Sofle pico (#25750) 2025-11-02 00:06:47 +00:00
layouts Remove deprecated `RGB_` and Mouse keycodes (#25444) 2025-07-11 11:05:41 -06:00
lib Print build failures with `qmk mass-compile` and `qmk userspace-compile` if requested (`-p`/`--print-failures`) (#25518) 2025-09-09 17:35:01 +01:00
modules/qmk Enable community modules to define LED matrix and RGB matrix effects. (#25187) 2025-05-12 09:30:19 +10:00
platforms Configure SPI for `QMK_PM2040` board (#25481) 2025-07-13 17:00:10 +01:00
quantum Fix Slovak and Lithuanian (QWERTY) sendstring LUTs (#25703) 2025-10-06 17:27:31 +01:00
tests Remove deprecated `RGB_` and Mouse keycodes (#25444) 2025-07-11 11:05:41 -06:00
tmk_core docs: fix misspellings (#25555) 2025-09-09 14:51:13 -07:00
users Add EOL to non-keyboard files (#24990) 2025-03-06 23:17:51 +00:00
util Align `drivers.txt` to qmk_toolbox (#25713) 2025-10-10 23:17:27 +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 [docs] Replace Imgur-hosted images (#25690) 2025-11-04 00:05:39 +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
LICENSE
Makefile Remove `DEFAULT_FOLDER` handling (#23281) 2025-06-09 05:08:56 +01:00
doxygen-todo Remove SERIAL_LINK feature (#14727) 2021-10-07 12:32:05 +11:00
license_GPLv2.md
license_GPLv3.md
license_Modified_BSD.md
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 2025q3 breaking changes. 2025-09-06 17:54:54 +10: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

readme.md

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.