Remapping Keys with QMK and VIA: A Beginner's Guide
What QMK and VIA actually are, the difference between them, how layers and key remapping work, and why programmable firmware is one of the most useful and overlooked features on a mechanical keyboard.
The single most underrated feature on a mechanical keyboard isn’t the switches or the case — it’s whether you can reprogram what every key does. This is what QMK and VIA enable, and it’s the difference between a keyboard you adapt to and one that adapts to you. Most beginners ignore it because the names sound technical. They shouldn’t.
This pairs naturally with the layouts guide: smaller boards rely entirely on remapping and layers to stay usable, so understanding this makes compact boards far less intimidating.
QMK and VIA, plainly
QMK (Quantum Mechanical Keyboard) is open-source keyboard firmware — the software that runs on the keyboard’s own controller and decides what each physical key sends to the computer. It is extremely powerful and, in its raw form, requires editing configuration files and compiling firmware. That’s the part that scares people off, and it’s also the part most people never have to touch.
VIA is a simple desktop application that talks to QMK-compatible keyboards in real time. It shows your keyboard’s layout on screen; you click a key, pick what you want it to do, and it changes instantly — no compiling, no flashing, no files. For the vast majority of users, VIA is the entire interface to QMK they will ever need.
So the practical relationship: QMK is the engine; VIA is the easy steering wheel. You want a board that is “QMK/VIA compatible.” Then you use VIA and never think about QMK’s internals.
(You’ll also see ZMK, the equivalent open firmware focused on wireless boards, and VIAL, a VIA fork supporting more boards. Same idea: programmable firmware with a friendly app.)
Why this matters more than people think
Without programmable firmware, your keys do what the manufacturer decided. With it:
- Fix anything that annoys you. Swap Caps Lock to Control or Escape. Move a misplaced key. Put Delete somewhere reachable. Small fixes that compound over thousands of hours of typing.
- Make compact boards usable. A 60% or 65% only works because arrows, function keys, and navigation live on a layer you define. Programmable firmware is what makes a small board practical rather than a compromise.
- Per-key, per-board, no host software. The remap lives on the keyboard itself. Plug it into any computer — work, home, a friend’s — and your layout comes with it. Nothing to install on the host.
This is why “QMK/VIA support” is a feature worth prioritizing when buying, on par with hot-swap. It future-proofs the board against your own preferences changing.
Layers: the core concept
A layer is a complete alternate set of key assignments, active while you hold (or toggle) a specific key. This is the idea that makes small keyboards work, and it’s worth understanding even on a full-size board.
Think of it like the Shift key, generalized. Shift is, in effect, a layer: hold it and every key sends its “shifted” value. Programmable firmware lets you define your own layers with whatever you want on them.
A typical setup on a compact board:
- Layer 0 (base): normal letters, numbers, modifiers.
- Layer 1 (hold Fn): arrows on I/J/K/L or H/J/K/L, function keys on the number row, media controls, Delete, Page Up/Down.
- Layer 2 (optional): RGB controls, less-used functions, symbols.
Hold the layer key, the relevant keys become their layer-1 functions; release, they’re letters again. Once configured, it becomes muscle memory within a week or two — the same way Shift did.
Key behaviors worth knowing
VIA exposes more than simple remaps. The ones beginners actually benefit from:
- Layer keys —
MO(1)activates a layer while held;TG(1)toggles it on/off. The foundation of compact-board usability. - Tap-hold (mod-tap) — one key does one thing tapped and another held. The classic: Caps Lock that sends Escape when tapped and acts as Control when held. Genuinely useful, slightly takes adjustment.
- Macros — one key sends a sequence (a phrase, an email, a shortcut chord). Useful in moderation; easy to over-engineer.
Start with simple remaps and one layer. Add tap-hold and macros only once the basics are second nature. Over-configuring a brand-new layout you don’t have muscle memory for yet is a common way to make a board feel worse, not better.
How to actually do it (with VIA)
The real-world process, in plain terms:
- Confirm the board is VIA-compatible before buying — manufacturers state this. (If it’s QMK but not VIA-ready, there are extra steps; for a first programmable board, choose VIA-ready.)
- Open VIA on your computer and connect the keyboard by cable. It detects the board and draws its layout.
- Click a key on the on-screen layout, then click the function you want it to have. It applies immediately — press the physical key to confirm.
- Set up one layer: assign a held key as your layer key, switch to that layer’s tab in VIA, and place arrows/function keys/media where you want them.
- Test by typing normally. Adjust anything that feels wrong. Because it’s instant, iteration is fast and risk-free — you can always revert a key.
There is no compiling and nothing to break in this flow. A bad remap is undone by clicking the key and choosing something else.
When you’d touch raw QMK
Honestly: most people never need to. You’d edit QMK source directly only for advanced behaviors VIA doesn’t expose, or for a board that isn’t VIA-ready. For the first programmable board, choose VIA-ready hardware and you get nearly all the benefit with none of the compiling. Treat raw QMK as an optional later rabbit hole, not a prerequisite.
What to do next
- When buying, treat QMK/VIA compatibility as a priority feature, especially on a compact board.
- Start with a couple of simple remaps (Caps Lock is the classic first one).
- Build exactly one layer for arrows and function keys; learn it before adding more.
- Add tap-hold and macros only after the basics are muscle memory.
Programmable firmware turns a fixed object into one you tune to yourself — the same philosophy as switch swaps and stabilizer tuning, applied to the layout. For the hardware side of those choices, see the first keyboard guide and the rest of our mechanical keyboard guides.
Related
How to Find Your Switch Preference With a Switch Tester
A practical method for discovering which mechanical switch you actually like — how to use a switch tester properly, why first impressions mislead, and how to translate a test into a confident purchase.
Keyboard Sound Mods: Foam, Tape, and the Pursuit of Thock
An honest guide to keyboard sound mods — case foam, the tape mod, PE foam, and switch films — what each actually changes, how much, in what order to try them, and which ones are not worth the effort.
Understanding the Mechanical Keyboard Hobby and Its Jargon
A plain-English orientation to the mechanical keyboard hobby — the vocabulary, the group-buy culture, the endgame myth, and how to engage with the community without getting overwhelmed or overspending.