Alexander Franco 11ae141835 Fix description for selectively disabling animations (#19374) %!s(int64=3) %!d(string=hai) anos
..
ChangeLog 9e78e65a56 2022 Nov 26 changelog. (#19164) %!s(int64=3) %!d(string=hai) anos
gitbook 4580d3a730 RGB improvements (#1684) %!s(int64=9) %!d(string=hai) anos
internals 75544d9127 Move Doxygen docs to subdirectory (#16561) %!s(int64=4) %!d(string=hai) anos
ja 99174edf0a [Docs] Remove broken link (#19321) %!s(int64=3) %!d(string=hai) anos
zh-cn 4d33f356a6 Macro keycode name refactoring (#18958) %!s(int64=3) %!d(string=hai) anos
.nojekyll 9e5676650e Use docsfy to replace gitbook %!s(int64=8) %!d(string=hai) anos
CNAME 4d26137e2a Create CNAME %!s(int64=8) %!d(string=hai) anos
README.md 4e8166750b Small tweaks to docs to make them more user friendly (#11518) %!s(int64=5) %!d(string=hai) anos
_langs.md 1c1e6fa47d Remove stale docs translations (#15737) %!s(int64=4) %!d(string=hai) anos
_summary.md 08805cada0 Stub next develop dates %!s(int64=3) %!d(string=hai) anos
adc_driver.md 1646c0f26c 2021 May 29 Breaking Changes Update (#13034) %!s(int64=5) %!d(string=hai) anos
api_development_environment.md 99850aabca Add API documentation %!s(int64=6) %!d(string=hai) anos
api_development_overview.md 99850aabca Add API documentation %!s(int64=6) %!d(string=hai) anos
api_docs.md 9e78e65a56 2022 Nov 26 changelog. (#19164) %!s(int64=3) %!d(string=hai) anos
api_overview.md 92a787ca4c [Docs] Use HTTPS for images and links where possible (#11695) %!s(int64=5) %!d(string=hai) anos
arm_debugging.md 52c18ef026 [Docs] fix docs (#7642) %!s(int64=6) %!d(string=hai) anos
audio_driver.md 19145704e4 [Core] Adjust PWM hardware audio driver for RP2040 (#17723) %!s(int64=3) %!d(string=hai) anos
breaking_changes.md 9e78e65a56 2022 Nov 26 changelog. (#19164) %!s(int64=3) %!d(string=hai) anos
breaking_changes_history.md 08805cada0 Stub next develop dates %!s(int64=3) %!d(string=hai) anos
breaking_changes_instructions.md fced377ac0 2020 May 30 Breaking Changes Update (#9215) %!s(int64=6) %!d(string=hai) anos
chibios_upgrade_instructions.md 5da04fb45b Update to ChibiOS 20.3.4, support builds against trunk (#14208) %!s(int64=4) %!d(string=hai) anos
cli.md fcf150bd82 Streamline the macos install process %!s(int64=6) %!d(string=hai) anos
cli_commands.md 959f4cbb62 docs: some typos (#18582) %!s(int64=3) %!d(string=hai) anos
cli_configuration.md e4823aadec Fix capitalisation of "GitHub" (#9184) %!s(int64=6) %!d(string=hai) anos
cli_development.md 959f4cbb62 docs: some typos (#18582) %!s(int64=3) %!d(string=hai) anos
cli_tab_complete.md ee26d3e77f Add Zsh note for tab complete (#17226) %!s(int64=4) %!d(string=hai) anos
coding_conventions_c.md 959f4cbb62 docs: some typos (#18582) %!s(int64=3) %!d(string=hai) anos
coding_conventions_python.md 959f4cbb62 docs: some typos (#18582) %!s(int64=3) %!d(string=hai) anos
compatible_microcontrollers.md ac5e6b6a3b Tentative Teensy 3.5 support (#14420) %!s(int64=4) %!d(string=hai) anos
config_options.md 5dabc1b387 Merge remote-tracking branch 'origin/master' into develop %!s(int64=3) %!d(string=hai) anos
configurator_architecture.md 9a0118c603 Architecture documentation for Configurator and API (#13935) %!s(int64=5) %!d(string=hai) anos
configurator_default_keymaps.md 4d33f356a6 Macro keycode name refactoring (#18958) %!s(int64=3) %!d(string=hai) anos
configurator_diagram.drawio 9a0118c603 Architecture documentation for Configurator and API (#13935) %!s(int64=5) %!d(string=hai) anos
configurator_diagram.svg 9a0118c603 Architecture documentation for Configurator and API (#13935) %!s(int64=5) %!d(string=hai) anos
configurator_step_by_step.md f6a7f4d4ac update the Chinese translation based on the latest English version (#14924) %!s(int64=4) %!d(string=hai) anos
configurator_troubleshooting.md d5f34c4810 Polish Configurator section %!s(int64=6) %!d(string=hai) anos
contributing.md f6a7f4d4ac update the Chinese translation based on the latest English version (#14924) %!s(int64=4) %!d(string=hai) anos
custom_matrix.md 8224f62806 Make debounce() signal changes in the cooked matrix as return value (#17554) %!s(int64=4) %!d(string=hai) anos
custom_quantum_functions.md 2c516fab29 [Docs] Extract 'Layer Change Code' and EEPROM (#18174) %!s(int64=3) %!d(string=hai) anos
data_driven_config.md 479d8de622 Format DD mappings and schemas (#18924) %!s(int64=3) %!d(string=hai) anos
documentation_best_practices.md 995464cb9c [Docs] fix file path (#9540) %!s(int64=6) %!d(string=hai) anos
documentation_templates.md fc394dfdd4 [Docs] Fix link to keyboard layout editor (#18801) %!s(int64=3) %!d(string=hai) anos
driver_installation_zadig.md 01f31bf28e [Docs] RESET -> QK_BOOT (#18365) %!s(int64=3) %!d(string=hai) anos
easy_maker.md f6a7f4d4ac update the Chinese translation based on the latest English version (#14924) %!s(int64=4) %!d(string=hai) anos
eeprom_driver.md 5846b40f74 RP2040 emulated EEPROM. (#17519) %!s(int64=4) %!d(string=hai) anos
faq_build.md 92a787ca4c [Docs] Use HTTPS for images and links where possible (#11695) %!s(int64=5) %!d(string=hai) anos
faq_debug.md 18dc851e37 Remove legacy Debug keycode (#18769) %!s(int64=3) %!d(string=hai) anos
faq_general.md d6701b3ac7 Fix typos and reword some sentences in FAQs (#11546) %!s(int64=5) %!d(string=hai) anos
faq_keymap.md d241e80533 Keymap FAQ updates (#17130) %!s(int64=4) %!d(string=hai) anos
faq_misc.md 01f31bf28e [Docs] RESET -> QK_BOOT (#18365) %!s(int64=3) %!d(string=hai) anos
feature_advanced_keycodes.md 2c516fab29 [Docs] Extract 'Layer Change Code' and EEPROM (#18174) %!s(int64=3) %!d(string=hai) anos
feature_audio.md 69fa02c37d Align audio keycode names (#18962) %!s(int64=3) %!d(string=hai) anos
feature_auto_shift.md 22be7e79ac Normalise Auto Shift keycodes (#18892) %!s(int64=3) %!d(string=hai) anos
feature_autocorrect.md 2ff1d85290 Normalise Autocorrect keycodes (#18893) %!s(int64=3) %!d(string=hai) anos
feature_backlight.md 219afaba42 Reworked backlight keycodes. (#18961) %!s(int64=3) %!d(string=hai) anos
feature_bluetooth.md d810878d5e Normalise output selection (Bluetooth) keycodes (#19004) %!s(int64=3) %!d(string=hai) anos
feature_bootmagic.md 9aaf4a5a9b Add split keyboard example for Bootmagic Lite (#16349) %!s(int64=4) %!d(string=hai) anos
feature_caps_word.md a80b886751 Deprecate `CAPS_WORD`/`CAPSWRD` for `CW_TOGG` (#18834) %!s(int64=3) %!d(string=hai) anos
feature_combo.md efe520645e Normalise Combo keycodes (#18877) %!s(int64=3) %!d(string=hai) anos
feature_command.md a03aa301de Remove Full Bootmagic (#13846) %!s(int64=5) %!d(string=hai) anos
feature_converters.md a42ab90220 Add Bonsai C4 as a platform board file (#18901) %!s(int64=3) %!d(string=hai) anos
feature_debounce_type.md 25713dc222 Add sym_defer_pr debouncer type (#14948) %!s(int64=4) %!d(string=hai) anos
feature_digitizer.md 6cc9513ab0 Digitizer feature improvements (#19034) %!s(int64=3) %!d(string=hai) anos
feature_dip_switch.md 9d1c98c891 Added right vs left specific pin assignments for dip switch (#13074) %!s(int64=5) %!d(string=hai) anos
feature_dynamic_macros.md fe18df9d41 Normalise Dynamic Macro keycodes (#18939) %!s(int64=3) %!d(string=hai) anos
feature_eeprom.md 7407347be1 Remove rgblight_list.h (#18878) %!s(int64=3) %!d(string=hai) anos
feature_encoders.md a4d1d8b745 Resolve conflict merging master to develop (#18297) %!s(int64=4) %!d(string=hai) anos
feature_grave_esc.md b45a037c7e Rename some Quantum keycodes (#15968) %!s(int64=4) %!d(string=hai) anos
feature_haptic_feedback.md e4d2ba9a4d Align haptic feedback keycode names (#18964) %!s(int64=3) %!d(string=hai) anos
feature_hd44780.md 9ee2effe8e HD44780 driver rework (#16370) %!s(int64=4) %!d(string=hai) anos
feature_joystick.md 79d083c635 [Docs] Update feature_joystick.md (#19347) %!s(int64=3) %!d(string=hai) anos
feature_key_lock.md eeb3f9c043 Merge remote-tracking branch 'origin/master' into develop %!s(int64=3) %!d(string=hai) anos
feature_key_overrides.md 1d34f380eb Deprecate `KEY_OVERRIDE_*` keycodes for `KO_*` (#18843) %!s(int64=3) %!d(string=hai) anos
feature_layers.md 2c516fab29 [Docs] Extract 'Layer Change Code' and EEPROM (#18174) %!s(int64=3) %!d(string=hai) anos
feature_layouts.md b56282756b [Docs] Clean up some code block languages (#14434) %!s(int64=5) %!d(string=hai) anos
feature_leader_key.md b33fc34967 Deprecate `KC_LEAD` for `QK_LEAD` (#18792) %!s(int64=3) %!d(string=hai) anos
feature_led_indicators.md cbe1c22d46 quantum: led: split out led_update_ports() for customization of led behaviour (#14452) %!s(int64=3) %!d(string=hai) anos
feature_led_matrix.md a5a20cc792 Change `LED_MATRIX_STARTUP_*` defines to `LED_MATRIX_DEFAULT_*` (#19080) %!s(int64=3) %!d(string=hai) anos
feature_macros.md 4d33f356a6 Macro keycode name refactoring (#18958) %!s(int64=3) %!d(string=hai) anos
feature_midi.md 8b658dcc9a Normalise MIDI keycodes (#18972) %!s(int64=3) %!d(string=hai) anos
feature_mouse_keys.md 2a61bfc27d add "inertia" mode for mouse keys (#18774) %!s(int64=3) %!d(string=hai) anos
feature_oled_driver.md a5c2eea6c1 Update OLED doc (#19213) %!s(int64=3) %!d(string=hai) anos
feature_pointing_device.md fe652e6247 Fix references to `mouse_report_t` (which doesnt exist) (#19107) %!s(int64=3) %!d(string=hai) anos
feature_programmable_button.md 6bbe8b6edd Normalise Joystick and Programmable Button keycodes (#18832) %!s(int64=3) %!d(string=hai) anos
feature_ps2_mouse.md 0237ff0c62 [Core] Rework PS/2 driver selection (#17892) %!s(int64=4) %!d(string=hai) anos
feature_rawhid.md b56282756b [Docs] Clean up some code block languages (#14434) %!s(int64=5) %!d(string=hai) anos
feature_rgb_matrix.md e12ca14af8 Change `RGB_MATRIX_STARTUP_*` defines to `RGB_MATRIX_DEFAULT_*` (#19079) %!s(int64=3) %!d(string=hai) anos
feature_rgblight.md 11ae141835 Fix description for selectively disabling animations (#19374) %!s(int64=3) %!d(string=hai) anos
feature_secure.md ec2414c074 Deprecate `SECURE_*` keycodes for `QK_SECURE_*` (#18847) %!s(int64=3) %!d(string=hai) anos
feature_send_string.md 3ecb0a80af Feature-ify Send String (#17275) %!s(int64=4) %!d(string=hai) anos
feature_sequencer.md 1b7b72c0e9 Ensure single newline at EOF for core files (#11310) %!s(int64=5) %!d(string=hai) anos
feature_space_cadet.md 002b58f0e4 Normalise Space Cadet keycodes (#18864) %!s(int64=3) %!d(string=hai) anos
feature_split_keyboard.md c347e732be Remove legacy EEPROM clear keycodes (#18782) %!s(int64=3) %!d(string=hai) anos
feature_st7565.md 37fba09021 ST7565 invert (#13237) %!s(int64=5) %!d(string=hai) anos
feature_stenography.md 95c1cc425e Rename postprocess_steno_user → post_process_steno_user (#17823) %!s(int64=4) %!d(string=hai) anos
feature_swap_hands.md 8d5eacb7dd Add support for encoder mapping. (#13286) %!s(int64=4) %!d(string=hai) anos
feature_tap_dance.md 99174edf0a [Docs] Remove broken link (#19321) %!s(int64=3) %!d(string=hai) anos
feature_unicode.md 5974d989fe Normalise Unicode keycodes (#18898) %!s(int64=3) %!d(string=hai) anos
feature_userspace.md 40bc5a8192 Enable CLI flashing via mdloader (#14729) %!s(int64=4) %!d(string=hai) anos
feature_velocikey.md 74484e21af Deprecate `VLK_TOG` for `VK_TOGG` (#18807) %!s(int64=3) %!d(string=hai) anos
feature_wpm.md 0391801267 Fixes potential wpm sampling overflow, along with code comment fixes (#15277) %!s(int64=4) %!d(string=hai) anos
flash_driver.md 71c0b97bce Added external spi flash driver. (#15419) %!s(int64=4) %!d(string=hai) anos
flashing.md 01f31bf28e [Docs] RESET -> QK_BOOT (#18365) %!s(int64=3) %!d(string=hai) anos
flashing_bootloadhid.md 01f31bf28e [Docs] RESET -> QK_BOOT (#18365) %!s(int64=3) %!d(string=hai) anos
fuse.txt 1b7b72c0e9 Ensure single newline at EOF for core files (#11310) %!s(int64=5) %!d(string=hai) anos
getting_started_docker.md b56282756b [Docs] Clean up some code block languages (#14434) %!s(int64=5) %!d(string=hai) anos
getting_started_github.md b2a186cf92 Purge uGFX. (#14720) %!s(int64=4) %!d(string=hai) anos
getting_started_introduction.md 09c7304bd9 [Docs] update git command and directory name of documents (#7619) %!s(int64=6) %!d(string=hai) anos
getting_started_make_guide.md 36d123e9c5 Add support for deferred executors. (#14859) %!s(int64=4) %!d(string=hai) anos
getting_started_vagrant.md b56282756b [Docs] Clean up some code block languages (#14434) %!s(int64=5) %!d(string=hai) anos
gpio_control.md 75544d9127 Move Doxygen docs to subdirectory (#16561) %!s(int64=4) %!d(string=hai) anos
hand_wire.md fc7e9efd21 Improve importer workflow (#17707) %!s(int64=4) %!d(string=hai) anos
hardware_drivers.md b2a186cf92 Purge uGFX. (#14720) %!s(int64=4) %!d(string=hai) anos
hardware_keyboard_guidelines.md 87199eb2f5 add 'info_config.h' into docs/hardware_keyboard_guidelines.md (#16247) %!s(int64=4) %!d(string=hai) anos
how_a_matrix_works.md 92a787ca4c [Docs] Use HTTPS for images and links where possible (#11695) %!s(int64=5) %!d(string=hai) anos
how_keyboards_work.md b85c224b7c docs: reflect systemd's change in language (#17322) %!s(int64=4) %!d(string=hai) anos
i2c_driver.md 81be7bb7b5 Fix i2c driver doc: Incorrect name (#16898) %!s(int64=4) %!d(string=hai) anos
index.html 94755308e0 Fix anchors with <code> in table of content (#15169) %!s(int64=4) %!d(string=hai) anos
isp_flashing_guide.md dde4120a1e ISP flashing guide: add instructions for flashing STM32duino bootloader (#16568) %!s(int64=4) %!d(string=hai) anos
keycodes.md 690eb4a453 Fix RWIN typo within keycode list (#19155) %!s(int64=3) %!d(string=hai) anos
keycodes_basic.md a26f1ddafa Chromeos keycodes (#18212) %!s(int64=3) %!d(string=hai) anos
keycodes_magic.md 871eeae4ea PoC: Swap Escape and Caps (#16336) %!s(int64=4) %!d(string=hai) anos
keycodes_us_ansi_shifted.md 14f886d03b [Docs] Address some typos (also in moonlander matrix.c) (#16248) %!s(int64=4) %!d(string=hai) anos
keymap.md 4b2d71de52 Remove legacy international keycodes (#18588) %!s(int64=3) %!d(string=hai) anos
mod_tap.md 14f886d03b [Docs] Address some typos (also in moonlander matrix.c) (#16248) %!s(int64=4) %!d(string=hai) anos
newbs.md 92a787ca4c [Docs] Use HTTPS for images and links where possible (#11695) %!s(int64=5) %!d(string=hai) anos
newbs_building_firmware.md 51f2d27321 Fix typo (#18526) %!s(int64=3) %!d(string=hai) anos
newbs_building_firmware_configurator.md 4e8166750b Small tweaks to docs to make them more user friendly (#11518) %!s(int64=5) %!d(string=hai) anos
newbs_building_firmware_workflow.md 64acbcb42a [Docs] Building with GitHub Userspace (#16271) %!s(int64=4) %!d(string=hai) anos
newbs_flashing.md 4e35697e1a Add note about qmk doctor in newbs_flashing.md (#15688) %!s(int64=4) %!d(string=hai) anos
newbs_getting_started.md 8fa7b62011 Attempt to discourage manual MSYS install for new users (#17556) %!s(int64=4) %!d(string=hai) anos
newbs_git_best_practices.md 3152bf572b [Docs] Restructure of Git Best Practices doc (#7231) %!s(int64=6) %!d(string=hai) anos
newbs_git_resolving_merge_conflicts.md 3152bf572b [Docs] Restructure of Git Best Practices doc (#7231) %!s(int64=6) %!d(string=hai) anos
newbs_git_resynchronize_a_branch.md b56282756b [Docs] Clean up some code block languages (#14434) %!s(int64=5) %!d(string=hai) anos
newbs_git_using_your_master_branch.md 54c58ea6de Add explicit id tags to externally linked headers %!s(int64=6) %!d(string=hai) anos
newbs_learn_more_resources.md 70c6b183df [Docs] Refactor code examples (#18003) %!s(int64=4) %!d(string=hai) anos
newbs_testing_debugging.md 4e8166750b Small tweaks to docs to make them more user friendly (#11518) %!s(int64=5) %!d(string=hai) anos
one_shot_keys.md 9ddb0165a4 fix typo (#19189) %!s(int64=3) %!d(string=hai) anos
other_eclipse.md 14f886d03b [Docs] Address some typos (also in moonlander matrix.c) (#16248) %!s(int64=4) %!d(string=hai) anos
other_vscode.md 5f72d54299 Update other_vscode.md (#17317) %!s(int64=4) %!d(string=hai) anos
platformdev_blackpill_f4x1.md dbce41cb6b [Docs] Update platformdev_blackpill_f411.md (#18666) %!s(int64=3) %!d(string=hai) anos
platformdev_chibios_earlyinit.md 01f31bf28e [Docs] RESET -> QK_BOOT (#18365) %!s(int64=3) %!d(string=hai) anos
platformdev_proton_c.md 345e19f691 Add converter docs (#17593) %!s(int64=4) %!d(string=hai) anos
platformdev_rp2040.md 19145704e4 [Core] Adjust PWM hardware audio driver for RP2040 (#17723) %!s(int64=3) %!d(string=hai) anos
platformdev_selecting_arm_mcu.md 3afd2d81b8 Add documentation for selecting an Arm MCU (#9046) %!s(int64=6) %!d(string=hai) anos
porting_your_keyboard_to_qmk.md 0d9a0d5d97 Align new-keyboard with recent schema updates (#16378) %!s(int64=4) %!d(string=hai) anos
power.txt bb53635f33 Trim trailing whitespace %!s(int64=8) %!d(string=hai) anos
pr_checklist.md 9e78e65a56 2022 Nov 26 changelog. (#19164) %!s(int64=3) %!d(string=hai) anos
qmk.css ccc87421e7 Some more tweaks to make everything look nice %!s(int64=8) %!d(string=hai) anos
qmk_custom_dark.css 4e8166750b Small tweaks to docs to make them more user friendly (#11518) %!s(int64=5) %!d(string=hai) anos
qmk_custom_light.css 4e8166750b Small tweaks to docs to make them more user friendly (#11518) %!s(int64=5) %!d(string=hai) anos
quantum_keycodes.md a6f3194397 Add ability to enter bootloader mode from `QK_MAKE` (#17745) %!s(int64=4) %!d(string=hai) anos
quantum_painter.md 9daf77b593 Add raw output option for QGF/QFF files. (#18998) %!s(int64=3) %!d(string=hai) anos
quantum_painter_qff.md 1f2b1dedcc Quantum Painter (#10174) %!s(int64=4) %!d(string=hai) anos
quantum_painter_qgf.md 1f2b1dedcc Quantum Painter (#10174) %!s(int64=4) %!d(string=hai) anos
quantum_painter_rle.md 1f2b1dedcc Quantum Painter (#10174) %!s(int64=4) %!d(string=hai) anos
redirects.json d569f08771 Configuration system for CLI (#6708) %!s(int64=7) %!d(string=hai) anos
ref_functions.md c347e732be Remove legacy EEPROM clear keycodes (#18782) %!s(int64=3) %!d(string=hai) anos
reference_configurator_support.md f529580860 Basic keycode overhaul (#14726) %!s(int64=4) %!d(string=hai) anos
reference_glossary.md 014aa0661e Fix Space Cadet md link (#14300) %!s(int64=5) %!d(string=hai) anos
reference_info_json.md 4a0aa9ada2 Fix headers in info.json reference (#19202) %!s(int64=3) %!d(string=hai) anos
reference_keymap_extras.md 4a8bd7b9a5 Rename keymap_extras headers for consistency (#16939) %!s(int64=4) %!d(string=hai) anos
serial_driver.md 40aa9c8745 spelling fix (#18831) %!s(int64=3) %!d(string=hai) anos
spi_driver.md 0e59827023 Merge remote-tracking branch 'upstream/master' into develop %!s(int64=5) %!d(string=hai) anos
squeezing_avr.md fb6e821541 Add Elite-Pi converter (#18236) %!s(int64=4) %!d(string=hai) anos
support.md e4823aadec Fix capitalisation of "GitHub" (#9184) %!s(int64=6) %!d(string=hai) anos
sw.js 303f425c6b Fix up info boxes. %!s(int64=8) %!d(string=hai) anos
syllabus.md f4966a19d6 [Docs] Squeezing space out of AVR (#15243) %!s(int64=4) %!d(string=hai) anos
tap_hold.md fd4c3f46fb Align dynamic tapping term keycode names (#18963) %!s(int64=3) %!d(string=hai) anos
translating.md 7164e8eeb5 Add yet another dictionary for the QMK Firmware docs sidebar heading (#7504) %!s(int64=6) %!d(string=hai) anos
uart_driver.md 04b51e381e Update UART driver API (#14839) %!s(int64=4) %!d(string=hai) anos
understanding_qmk.md 5233c69bc6 Remove thermal printer. (#18959) %!s(int64=3) %!d(string=hai) anos
unit_testing.md 1c0347b8b8 Remove SERIAL_LINK feature (#14727) %!s(int64=4) %!d(string=hai) anos
usb_nkro.txt 995c3141a6 convert docs to lowercase and underscores %!s(int64=9) %!d(string=hai) anos
ws2812_driver.md 27dec8d16d [Core] Allow custom timings for WS2812 PIO driver (#18006) %!s(int64=3) %!d(string=hai) anos

README.md

Quantum Mechanical Keyboard Firmware

What is QMK Firmware?

QMK (Quantum Mechanical Keyboard) is an open source community centered around developing computer input devices. The community encompasses all sorts of input devices, such as keyboards, mice, and MIDI devices. A core group of collaborators maintains QMK Firmware, QMK Configurator, QMK Toolbox, qmk.fm, and this documentation with the help of community members like you.

Get Started

?> **Basic** [QMK Configurator](newbs_building_firmware_configurator.md)
User friendly graphical interfaces, no programming knowledge required. ?> **Advanced** [Use The Source](newbs.md)
More powerful, but harder to use.

Make It Yours

QMK has lots of features to explore, and a good deal of reference documentation to dig through. Most features are taken advantage of by modifying your keymap, and changing the keycodes.

Need help?

Check out the support page to see how you can get help using QMK.

Give Back

There are a lot of ways you can contribute to the QMK Community. The easiest way to get started is to use it and spread the word to your friends.