keymapp: gRPC client for the Keymapp API

[ bsd3, control, library, program ] [ Propose Tags ] [ Report a vulnerability ]

This library provides a client for interacting with the Keymapp API. It can be used as a Haskell library, or via the provided CLI executable, which is inspired by Kontroll.


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0
Change log CHANGELOG.md
Dependencies base (>=4 && <5), colour (>=2.3 && <2.4), directory (>=1.2.3 && <1.4), exceptions (>=0.10 && <0.11), grapesy (>=1.0 && <1.2), keymapp, mtl (>=2.2 && <2.4), optparse-applicative (>=0.18 && <0.20), prettyprinter (>=1.7 && <1.8), proto-lens (>=0.7 && <0.8), proto-lens-runtime (>=0.7 && <0.8), text (>=1.2 && <2.2), unliftio-core (>=0.1.1 && <0.3) [details]
License BSD-3-Clause
Copyright Copyright(c) Frederick Pringle 2026
Author Frederick Pringle
Maintainer frederick.pringle@fpringle.com
Uploaded by fpringle at 2026-06-25T19:23:13Z
Category Control
Home page https://github.com/fpringle/keymapp
Distributions
Executables keymapp
Downloads 0 total (0 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for keymapp-0.1.0

[back to package description]

Keymapp client library and CLI

This library provides a client for interacting with the Keymapp API to control a ZSA keyboard. It can be used as a Haskell library, or via the provided CLI executable, which is inspired by Kontroll.

For example library use, see the examples directory.

Building and running the CLI

In the root directory, run nix-shell (or use direnv) to load a development shell with ghc, cabal etc. Then just run the following to see a list of available commands:

$ cabal run keymapp --
...
$ cabal run keymapp -- status
version:   1.3.7
keyboard:
  name:    Moonlander MK1
  version: Mvvpr/orAw9d
  layer:   1

LED mapping

Some of the commands require you to provide an LED index. See this table for a mapping of which keyboard keys correspond to which indices on a ZSA Moonlander MK1.