This page helps you build up your QMK knowledge by introducing the basics first and guiding you to understanding all the concepts you need to know to be proficient with QMK.
If you read nothing else you should read the documents in this section. After reading the Tutorial you should be able to create a basic keymap, compile it, and flash it to your keyboard. The remaining documents will flesh out your knowledge of these basics.
These topics start to dig into some of the features that QMK supports. You don't have to read all of these documents, but some of the documents in the Advanced Topics section won't make sense if you skip over some of these.
Learn How To Configure Features
​Audio​
Lighting
​Backlight​
​LED Matrix​
​RGB Lighting​
​RGB Matrix​
​Tap-Hold Configuration​
Learn More About Keymaps
​Keymaps​
Macros
​Dynamic Macros​
​Compiled Macros​
​Tap Dance​
​Combos​
​Userspace​
Everything below here requires a lot of foundational knowledge. Besides being able to create keymaps using advanced features you should be familiar with using both config.h
and rules.mk
to configure options for your keyboard.
Maintaining Keyboards Within QMK
​Handwiring a Keyboard​
​Keyboard Guidelines​
​info.json Reference​
​Debounce API​
Hardware
​How Keyboards Work​
​Split Keyboards​
​Stenography​
​Pointing Devices​
Core Development
​Coding Conventions​
​Custom Matrix​
​Understanding QMK​
CLI Development
​Coding Conventions​
​CLI Development Overview​