macOS
brew install zapplocal Homebrew formula metadata
brew
Flash ZSA keyboards from your terminal. Version 1.0.2 via Homebrew; verified 2026-07-09.
install
brew install zapplocal Homebrew formula metadata
overview
Flash ZSA keyboards from your terminal
history
Zapp is ZSA Technology Labs' open-source Rust CLI for flashing ZSA ergonomic keyboards from a terminal instead of using a browser or the larger Keymapp application.
ZSA introduced Zapp on 2026-04-07 as a small terminal tool for users who do not flash through a browser and want something lighter or more automation-friendly than Keymapp. The README describes it as a cross-platform CLI for flashing ZSA keyboards including Voyager, Moonlander, Ergodox EZ, Halfmoon, and Planck EZ variants.
The project structure is intentionally split between a `zapp` CLI binary and `zapp-core` library code for USB device detection, firmware parsing, and flashing protocols such as STM32 DFU and HALFKAY.
Zapp's adoption is young and vendor-specific. Its README already documents Homebrew, openSUSE, Arch/AUR, Nix flakes, source installation through Cargo, release binaries, and Linux udev rules, which is the right packaging surface for a USB firmware-flashing tool.
The ZSA announcement positions Zapp as automation-friendly: it can flash a local firmware file or Oryx URL, and `zapp update` can read layout and revision data from a keyboard flashed with Oryx firmware without storing login credentials.
Users run `zapp flash firmware.bin`, `zapp flash firmware.hex`, or pass an Oryx layout URL. Zapp downloads or parses the firmware, waits for the keyboard to enter bootloader mode, detects the device over USB, and flashes it. On Linux, users need udev rules so the USB device is accessible without root.
Zapp is package-nerd significant because it turns a vendor hardware workflow into a normal CLI package: installable with Homebrew or distro tools, auditable as open-source Rust, and friendly to repeatable firmware workflows.
It also shows the packaging details that make hardware CLIs different from pure text tools: firmware formats, USB permissions, udev rules, bootloader modes, and platform-specific flashing protocols are part of the package experience.
security posture
No matching local secret-handling manifest was found for zapp. Nucleus package metadata is still published here so future coverage has a stable package URL.
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
zapp | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
install metadata
| Package key | brew:zapp |
|---|---|
| Version | 1.0.2 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/zapp |
| Homepage | https://github.com/zsa/zapp |
| Repository | https://github.com/zsa/zapp |
| Upstream docs | https://github.com/zsa/zapp#readme |
| License | MIT |
| Source archive | https://github.com/zsa/zapp/archive/refs/tags/v1.0.2.tar.gz |
| Last updated | 2026-07-09T11:51:39Z |
| Pulse | updated |
| Build dependencies | rust |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | zapp |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.