-* [Getting started](README.md)
- * [QMK Overview](qmk_overview.md)
- * [Build Environment Setup](build_environment_setup.md)
- * [Vagrant Guide](vagrant_guide.md)
- * [Make instructions](make_instructions.md)
- * [FAQ: Creating a Keymap](faq_keymap.md)
- * [FAQ: Compiling QMK](faq_build.md)
- * [How to Github](how_to_github.md)
+* [Complete Newbs Guide](newbs.md)
+ * [Getting Started](newbs_getting_started.md)
+ * [Building Your First Firmware](newbs_building_firmware.md)
+ * [Flashing Firmware](newbs_flashing.md)
+ * [Testing and Debugging](newbs_testing_debugging.md)
+ * [Best Practices](newbs_best_practices.md)
+ * [Learning Resources](newbs_learn_more_resources.md)
-* [Features](features.md)
- * [Layer switching](key_functions.md)
- * [Leader Key](leader_key.md)
- * [Macros](macros.md)
- * [Dynamic Macros](dynamic_macros.md)
- * [Space Cadet](space_cadet_shift.md)
- * [Tap Dance](tap_dance.md)
- * [Mouse keys](mouse_keys.md)
- * [Unicode](unicode.md)
- * [Stenography](stenography.md)
- * [Key Lock](key_lock.md)
+* [QMK Basics](README.md)
+ * [QMK Introduction](getting_started_introduction.md)
+ * [Contributing to QMK](contributing.md)
+ * [How to Use Github](getting_started_github.md)
+ * [Getting Help](getting_started_getting_help.md)
+
+* [FAQ](faq.md)
+ * [General FAQ](faq_general.md)
+ * [Build/Compile QMK](faq_build.md)
+ * [Debugging/Troubleshooting QMK](faq_debug.md)
+ * [Keymap](faq_keymap.md)
+
+* Detailed Guides
+ * [Install Build Tools](getting_started_build_tools.md)
+ * [Vagrant Guide](getting_started_vagrant.md)
+ * [Build/Compile Instructions](getting_started_make_guide.md)
+ * [Flashing Firmware](flashing.md)
+ * [Customizing Functionality](custom_quantum_functions.md)
+ * [Keymap Overview](keymap.md)
+
+* [Hardware](hardware.md)
+ * [AVR Processors](hardware_avr.md)
+ * [Drivers](hardware_drivers.md)
* Reference
- * [Glossary](glossary.md)
- * [Keymap overview](keymap.md)
+ * [Keyboard Guidelines](hardware_keyboard_guidelines.md)
+ * [Config Options](config_options.md)
* [Keycodes](keycodes.md)
- * [Basic Keycodes](basic_keycodes.md)
- * [Quantum Keycodes](quantum_keycodes.md)
- * [The `config.h` File](config_options.md)
- * [Customizing Functionality](custom_quantum_functions.md)
* [Documentation Best Practices](documentation_best_practices.md)
+ * [Documentation Templates](documentation_templates.md)
+ * [Glossary](reference_glossary.md)
* [Unit Testing](unit_testing.md)
+ * [Useful Functions](ref_functions.md)
+ * [Configurator Support](reference_configurator_support.md)
+ * [info.json Format](reference_info_json.md)
+
+* [Features](features.md)
+ * [Basic Keycodes](keycodes_basic.md)
+ * [US ANSI Shifted Keys](keycodes_us_ansi_shifted.md)
+ * [Quantum Keycodes](quantum_keycodes.md)
+ * [Advanced Keycodes](feature_advanced_keycodes.md)
+ * [Audio](feature_audio.md)
+ * [Auto Shift](feature_auto_shift.md)
+ * [Backlight](feature_backlight.md)
+ * [Bluetooth](feature_bluetooth.md)
+ * [Bootmagic](feature_bootmagic.md)
+ * [Combos](feature_combo)
+ * [Command](feature_command.md)
+ * [Dynamic Macros](feature_dynamic_macros.md)
+ * [Encoders](feature_encoders.md)
+ * [Grave Escape](feature_grave_esc.md)
+ * [Key Lock](feature_key_lock.md)
+ * [Layouts](feature_layouts.md)
+ * [Leader Key](feature_leader_key.md)
+ * [Macros](feature_macros.md)
+ * [Mouse Keys](feature_mouse_keys.md)
+ * [One Shot Keys](feature_advanced_keycodes.md#one-shot-keys)
+ * [Pointing Device](feature_pointing_device.md)
+ * [PS/2 Mouse](feature_ps2_mouse.md)
+ * [RGB Lighting](feature_rgblight.md)
+ * [RGB Matrix](feature_rgb_matrix.md)
+ * [Space Cadet Shift](feature_space_cadet_shift.md)
+ * [Space Cadet Shift Enter](feature_space_cadet_shift_enter.md)
+ * [Stenography](feature_stenography.md)
+ * [Swap Hands](feature_swap_hands.md)
+ * [Tap Dance](feature_tap_dance.md)
+ * [Terminal](feature_terminal.md)
+ * [Thermal Printer](feature_thermal_printer.md)
+ * [Unicode](feature_unicode.md)
+ * [Userspace](feature_userspace.md)
* For Makers and Modders
- * [Adding a keyboard to QMK](adding_a_keyboard_to_qmk.md)
- * [Adding features to QMK](adding_features_to_qmk.md)
- * [Hand Wiring Guide](hand_wiring.md)
- * [ISP flashing guide](isp_flashing_guide.md)
- * [Modding your keyboard](modding_your_keyboard.md)
- * [Porting your keyboard to QMK](porting_your_keyboard_to_qmk.md)
+ * [Hand Wiring Guide](hand_wire.md)
+ * [ISP Flashing Guide](isp_flashing_guide.md)
+ * [ARM Debugging Guide](arm_debugging.md)
+ * [I2C Driver](i2c_driver.md)
+ * [GPIO Controls](internals_gpio_control.md)
+ * [Proton C Conversion](proton_c_conversion.md)
* For a Deeper Understanding
- * [How Keyboards Work](basic_how_keyboards_work.md)
+ * [How Keyboards Work](how_keyboards_work.md)
* [Understanding QMK](understanding_qmk.md)
* Other Topics
- * [General FAQ](faq.md)
* [Using Eclipse with QMK](eclipse.md)
+ * [Support](support.md)
+
+* QMK Internals (In Progress)
+ * [Defines](internals_defines.md)
+ * [Input Callback Reg](internals_input_callback_reg.md)
+ * [Midi Device](internals_midi_device.md)
+ * [Midi Device Setup Process](internals_midi_device_setup_process.md)
+ * [Midi Util](internals_midi_util.md)
+ * [Send Functions](internals_send_functions.md)
+ * [Sysex Tools](internals_sysex_tools.md)