HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
qmk
qmk_firmware
C2017–2026
qmk / qmk_firmware

qmk_firmware

Open-source keyboard firmware for Atmel AVR and Arm USB families

44Distinct people
56Mentions
3Explicit recommenders
20.8KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Open-source keyboard firmware for Atmel AVR and Arm USB families

GitHub

Where it is used

The source check is incomplete. Verified examples will appear here.

What people are saying

That thing looks totally awesome! I especially like the steps taken to integrate mouse control into the design. A centered, integrated pointing device makes all computer…

1MachineElf used a recommendation phrase. 3 indexed comments match. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 8–Nov 15 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/15/2026, 4:00:59 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year56 dated mentions

Observed mentions: 2017-05-03 08:19:26 UTC to 2026-08-22 21:27:55 UTC.

02468102017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments20172018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 7 mentions; 0 submissions, 7 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 8 mentions; 0 submissions, 8 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 6 mentions; 0 submissions, 6 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 8 mentions; 0 submissions, 8 comments20212022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 4 mentions; 0 submissions, 4 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 8 mentions; 0 submissions, 8 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 10 mentions; 1 submissions, 9 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC202
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC707
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC808
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC606
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC808
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC404
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC808
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC1019
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC000
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC303

From the project README

An excerpt from the repository, fetched Nov 12, 2026.

Read the project’s introduction
Quantum Mechanical Keyboard Firmware 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 See the official documentation on docs.qmk.fm 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 Planck Preonic ErgoDox EZ Clueboard Cluepad Atreus 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.
Read the full README on GitHub

What Hacker News says

7 sources
A little more complicated, but a lot more versatile. I had a similar issue, where I wanted a large amount of extra keys for macros/hotkeys. I bought a planck kit from olkb (https://olkb.com/planck/) (which is just one of many keyboard kits that will run the QMK firmware (https://github.com/qmk/qmk_firmware)) built it and rewrote the keymap to output my special keys. Later I went on to wire up a couple simple industrial style footswitches to a cheapo arduino pro micro clone and put qmk on there. A few other interesting and smaller keyboard kits can be found from vendors like https://www.1upkeyboards.com/ (the sweet16 macropad/keypad) and https://keeb.io (the chocopad or just half of any of their "ortholinear" split keyboard pcbs.
In Setting up a second keyboard for more shortcuts in Emacs
- If you use 'normal' layout then you can use any keyboard. But mechanical switches allow to build ANY layout you would like (see links) - You can program most mechanical keyboards (https://github.com/qmk/qmk_firmware) and move any key whenever you like and use additional features like assigning different actions on key 'tap' and 'hold' - You can customize keycaps https://www.aliexpress.com/item/KBDfans-Free-shipping-Ergodo... https://www.aliexpress.com/item/KBDfans-Free-shipping-Ergodo...
In Why I use the IBM Model M keyboard that is older than me
so while it's not exactly the all in one service you describe, you can do something similar already: http://www.keyboard-layout-editor.com/ to design your layout, then http://builder.swillkb.com/ to design a layer case, files go to a laser cutting service, then you would need a controller of some sort (commonly something like a https://www.pjrc.com/teensy/), switches, diodes, usb ports, etc. then hand wire everything together. tmk/qmk is more or less a defacto standard in custom keyboard firmware: https://github.com/qmk/qmk_firmware here are some examples of people generating firmware with webtools, I don't know what they use on the backend. https://www.massdrop.com/configurator/ergodox http://qmk.thevankeyboards.com/
In Matias Click Switches: Tactile mechanical keyswitches

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.