🌐
VIA
caniusevia.com
VIA | VIA
Compatible with 1400+ keyboards and easily added to other QMK keyboards. ... Configure, test and design in one place - VIA is the last application you'll need for your keyboard.
Docs
In order for VIA to configure a keyboard, it requires a definition of the keyboard - the physical layout of keys, any layout options, and other configurable elements like rotary encoders (knobs), lighting, etc.
Configuring QMK
YES will not enable VIA and you will be most confused. This will enable dynamic keymaps, raw HID message handling and bootmagic lite. ‘Bootmagic Lite’ is the ability to hold down Esc (or some other key) while plugging in the keyboard to both jump to bootloader and reset the EEPROM.
Firmware
Precompiled QMK firmware for VIA-supported keyboards
Supported Keyboards
Compatible as of 1/11/2026
🌐
VIA
usevia.app
VIA
Your keyboard's best friend
Discussions

Keyboard: VIA / VIAL support? - Framework Laptop 16 - Framework Community
Hey all, I was digging around out of interest to see how configuring the QMK keyboard works, and it seems… well, painful to say the least, or it is with the official QMK tools (which, have poor Linux support from what I’ve read). I did run across a new project which is based on the QMK ... More on community.frame.work
🌐 community.frame.work
0
July 22, 2023
VIA "Searching for devices..." - Firmware, programming, and hardware compatability - KeebTalk
I’ve been having trouble getting VIA to see any of my three compatible keyboards. I’ve tried different cables, tried all the USB ports on my machine, even tried it on two different operating systems - so I figure I must be missing something, and probably something simple. More on keebtalk.com
🌐 keebtalk.com
0
September 16, 2021
VIA is game-changing!
With Vial you can do even more. It adds quite a lot of qol features over VIA. Let's you configure tap-dance, key-combos and key overrides instead of only plain macros. And you can change QMK settings on the fly. And it still has a proper desktop app instead of being browser based... More on reddit.com
🌐 r/MechanicalKeyboards
28
54
August 2, 2024
How do I download VIA?
Heres the GitHub release page. Find the latest release (at the time of writing is 2.0.5). Then under “assets” find the file for your operating system (for windows, it’s “via-2.0.5-win.exe) and download it More on reddit.com
🌐 r/keyboards
19
32
August 5, 2022
🌐
Reddit
reddit.com › r/mechanicalkeyboards › via is game-changing!
r/MechanicalKeyboards on Reddit: VIA is game-changing!
August 2, 2024 -

Hi all,

Hope your weekend goes/is going well! I recently got my first* mechanical keyboard, and one of the chief reasons I wanted to get one was to customize it any way I'd like. As a result, I had VIA(L) support high up in my must-haves. About a week into ownership of the same, I think I have settled on a layout that makes sense to me (but of course, I am open to feedback and questions!).

I will document my journey with VIA in this post. Hopefully it proves helpful to someone or encourages them to start using VIA(L). I would also love to see how your layers are setup, so please do share them!

Intro (skip if you know what VIA is)

For those with a VIA supported keyboard (including basically all Keychrons and some Royal Kludge boards!), I would strongly urge you to give it a try as it is super-easy, doesn't even need you to install any application on your computer and will likely make you more productive! All you have to do is go to https://usevia.app/ using any Chromium-based browser (Edge, Brave, Chrome, etc.); since Firefox doesn't give the browser access to the system's HID devices for increased security. All settings you change are automatically applied and saved to your keyboard. The most awesome feature imo is that because VIA can be used as a webapp, one can access it from any WebHID supported browser (check here for support) on any device!

Adding Macros

First order of business was adding macros to speed up my most used keyboard shortcuts. This is how I initially coded M0 to activate Windows' Snipping Tool:

{KC_LGUI, KC_LSFT, KC_S}

This is a "chord" type macro. While this M0 macro worked correctly, I faced an issue with M1 (Win Shift T) and M2 (Ctrl Win V) macros which I also coded as chords in the same way. Whenever activated, the modifier keys of the macros (Win & Shift for M1; Ctrl & Win for M2) would stay active even after I was done activating them, and remained that way till I activated the macro again.

I am not sure if this is the best way to go about this, but coding macros as a combination of keystrokes pressed and released with an amount of delay solved the problem. So, M0 would now look like this:

{+KC_LGUI}{+KC_LSFT}{+KC_T}{10}{-KC_LGUI}{-KC_LSFT}{-KC_T}

I also incorporated these delays for the other macros. Additionally, I added another macro M3 (Win + Period) to be make access to the emoji menu easier.
The annoying thing about adding macros is that on the face of it, the VIA webapp appears to have a perfectly functional macro editor (similar to the one in Logitech G Hub) as below:

However, it doesn't seem to be possible to add commands (unlike the Logitech G Hub Macro editor) through this GUI interface. The record function also doesn't seem to work (at least for the macros I was trying to add) even when in full screen. So, this editing layout appears only once I type the script in the script tab. It is still great seeing a visual description of just what exactly the script does, along with the option to change or remove keys and delay times, but adding a + button to add a key or delay would have made it perfect and much more accessible by making the learning curve much easier.

In any case, learning QMK scripting should be fairly easy, so this is not a big issue. Just something I wanted to put out there in case others have the same issues as me.

That's basically it for macros. I had the option to add as many as 16 (M0 through M15), although you would also need to make sure that all your scripts fit into the board's memory.

Using multiple layers (aka a 2nd "Fn" key)

Perhaps the biggest change you can make for your keyboard habits compared to my last post is learning to use multiple layers. I recently saw this YouTube video in my feed showing how to make the Caps Lock key more useful, which inspired me to remap the Caps Lock key (which I rarely use anyway) on my Bridge75 Plus to a combo Caps Lock and Fn key using QMK's Layer Tap (LT) function in VIA.

So now, if I press the Caps Lock key normally, it acts like a regular CL key. However, if I press it for more than the duration of a tap, it acts as the Fn key! I also much prefer having the Fn key accessible to my left hand, because then I always have access to it (to access keys on the right side, I'd need to remove my hand from the mouse; and shifting hands from left to right side is just inconvenient). I remapped the old Fn key to the Right Ctrl key since I do use it a fair bit.

This facilitated the other big change - I moved all of the keyboard's factory configurable options to layer 2. While holding the Caps Lock key, the Left Shift key is used to access the second layer.

This is how layer 0 (default layer) looks like now:

The function row came with predefined functions for layer 1 (which I think is based on the default Apple layout), of which I modified keys F5-F12. I rarely use the media keys on any keyboard since my I use my G502 (thanks to G-Shift) for that.
Here are the other functions accessed through this layer:

  • The += key launches the calculator. Right now, it's only marginally faster than pressing the win key, typing "ca" and hitting enter, but I expect this to improve as I incorporate this into my muscle memory.

  • E key: Emoji menu via macro M3 (Win + period)

  • T key: M1 for OCR via PowerToys (Win + Shift + T)

  • S key: M0 for snipping tool (Win + Shift + S)

  • V key: M2 for paste as plain text via PowerToys (Ctrl + Win + V)

  • Win key: Right click menu

With the Caps Lock key held, holding the Left Shift key makes layer 2 accessible::

All factory configurable settings (connection mode, RGB controls, debounce time, battery level indicator & switching to Apple layout) have been moved to Layer 2 as I would prefer to have layer 1 for stuff used more often.

That's all of it! While there is another layer (3) available to use, I don't see myself making use of it at least for this keyboard. I imagine it might be more useful on smaller keyboards (40%, 60% etc.).

Most of the changes next are likely going to be trying to make layer 1 even more efficient/productive. If you read all of this, thanks for persevering through and I hope you took away something useful. Happy typing and enjoy the weekend!

🌐
GitHub
github.com › the-via › app
GitHub - the-via/app
VIA is a powerful, open-source web-based interface for configuring your QMK-powered mechanical keyboard. It allows you to customize your keymaps, create macros, and adjust RGB settings (if it has RGB) on the fly, without needing to recompile ...
Starred by 1.4K users
Forked by 287 users
Languages   TypeScript
🌐
Keychron
keychron.com › blogs › archived › how-to-use-via-to-program-your-keyboard
How to use VIA to program your keyboard – Keychron
November 22, 2023 - VIA is an app that can easily configure keyboard keys with QMK firmware, here is a guide to walk you through.
🌐
epomaker
epomaker.com › blogs › guides › how-to-use-via-for-beginners
How to Use VIA (Beginner's Guide) – epomaker
January 11, 2024 - What is VIA? VIA is a powerful cross-platform keyboard customization software that allows users to easily personalize their keyboards with various settings. If you are a mechanical keyboard enthusiast, it is a tool you shouldn't miss.
Find elsewhere
🌐
KeebFinder
keeb-finder.com › home › keyboards › via-compatible mechanical keyboards: ultimate customization
VIA Mechanical Keyboards: Easy Customization | KeebFinder
Find the perfect VIA-enabled mechanical keyboard to elevate your typing precision and gaming performance.... Show more ... VIA (Vial an Improved Alternative) is powerful, open-source firmware configuration software that works in conjunction with QMK.
🌐
YouTube
youtube.com › arcamus
How to Program Mechanical Keyboards | VIA Tutorial - YouTube
AboutPressCopyrightContact usCreatorsAdvertiseDevelopersTermsPrivacyPolicy & SafetyHow YouTube worksTest new features · © 2024 Google LLC
Published   August 26, 2023
Views   96K
🌐
Kinetic Labs
kineticlabs.com › blog › what-are-via-and-qmk-for-mechanical-keyboards
What are VIA and QMK for Mechanical Keyboards?
That said, each hardware, like your keyboard or mouse comes with its own firmware that instructs its processes and helps it communicate with other software and hardware that may be running on your computer. So yes, QMK and VIA are types of firmware that determine how your keyboard run its processes.
🌐
NuPhy
nuphy.com › pages › via-usage-guide-for-nuphy-keyboards
VIA Usage Guide for NuPhy Keyboards
Note: We are in the process of getting our code submission to enable auto-detection by the VIA Configurator merged into the official branch. This page will be updated once we receive new information. 1. Connect your device with the provided USB cable to the keyboard, which should be set to the wired mode, then go to VIA’s official online configurator at usevia.app with a Chromium-based browser.
🌐
VIA
caniusevia.com › firmware downloads
Firmware Downloads | VIA
1 week ago - kelwin_utopia88_via.hex · keyboardio_atreus_via.hex · keycapsss_3w6_2040_via.uf2 · keycapsss_plaid_pad_rev1_via.hex · keycapsss_plaid_pad_rev2_via.hex · keycapsss_plaid_pad_rev3_via.hex · keychron_c1_pro_ansi_white_via.bin · keychron_c2_pro_ansi_white_via.bin ·
🌐
Cerakey
cerakey.com › home › all blogs › all blogs
In-Depth Guide to VIA Software: Mastering Your Mechanical Keyboard Customization
September 5, 2024 - VIA software is an open-source, real-time keyboard configurator that simplifies the process of customizing mechanical keyboards. Unlike other tools like QMK Configurator, VIA provides a graphical interface that updates instantly as you make ...
🌐
GitHub
github.com › the-via
VIA · GitHub
Userspace for the open-source QMK keyboard firmware. the-via/qmk_userspace_via’s past year of commit activity
🌐
Super User
superuser.com › questions › 1843526 › how-to-remap-missing-iso-layout-key-to-unused-using-via-keyboard-software
How to remap missing iso-layout key to unused using VIA keyboard software - Super User
May 24, 2024 - On ISO keyboard layout there is an extra key between left-shift and qwerty-Z key. I'm using a azerty-BE keyboard layout on an ANSI keyboard which does not have that key. In azerty-be layout the ext...
🌐
epomaker
epomaker.com › blogs › software › via-online-software
VIA Online Software – epomaker
May 26, 2025 - Find the Software, Firmware, Manual or json files here. ... Respond within 48 hours. Emails from Support may fail to send if you use iCloud. We recommend contacting Support via Gmail.
🌐
Keebio
docs.keeb.io › via-technical
VIA and QMK Firmware | Keebio Documentation
Before we dive into what VIA is, let's go over what QMK Firmware is first in case you're not sure. QMK Firmware is an open-source keyboard firmware, and most keyboards within the mechanical keyboard community use QMK.
🌐
GitHub
github.com › the-via › keyboards
GitHub - the-via/keyboards
VIA is a powerful, open-source web-based interface for configuring your QMK-powered mechanical keyboard. It allows you to customize your keymaps, create macros, and adjust RGB settings (if it has RGB) on the fly, without needing to recompile ...
Starred by 755 users
Forked by 1.1K users
Languages   TypeScript 88.6% | Python 10.5% | JavaScript 0.9%
🌐
Framework Community
community.frame.work › framework laptop 16
Keyboard: VIA / VIAL support? - Framework Laptop 16 - Framework Community
July 22, 2023 - Hey all, I was digging around out of interest to see how configuring the QMK keyboard works, and it seems… well, painful to say the least, or it is with the official QMK tools (which, have poor Linux support from what I’ve read). I did run across a new project which is based on the QMK tools, but with greatly improved compatibility and with proper Linux support, but I’ve found out that, in order to use it, the keyboard firmware needs to support something called VIA.
🌐
KeebTalk
keebtalk.com › learning and discussion › firmware, programming, and hardware compatability
VIA "Searching for devices..." - Firmware, programming, and hardware compatability - KeebTalk
September 16, 2021 - I’ve been having trouble getting VIA to see any of my three compatible keyboards. I’ve tried different cables, tried all the USB ports on my machine, even tried it on two different operating systems - so I figure I must…