Home

Awesome

Keycaps for mechanical keyboards

dmote-keycap produces three-dimensional geometry for keycaps: Either featureless maquettes for use in quick previews, or proper keycaps you can print and use on any common mechanical keyboard.

Clojars Project

Image of a Concertina thumb-key cluster using designs bundled with dmote-keycap

Features

dmote-keycap is both a library for scad-clj applications that draw keyboards, and a CLI (command-line interface) utility. Both offer:

dmote-keycap has no support for stabilizers, raised legends, or multiple materials (printing to simulate “double shot” injection moulding).

Usage

To run the utility and generate a printable model, enter lein run at your command line, in this folder. You must have Leiningen installed for that.

The CLI utility uses what the library exposes as dmote-keycap.models/keycap. That function takes a number of parameters and returns a scad-clj specification. Most function parameters are mirrored in the CLI. Parameters in both contexts are documented here.

For the use of dmote-keycap as a function library in keyboard design, two other namespaces are likely to be useful. dmote-keycap.data exposes various raw data and dmote-keycap.measure exposes functions for calculating how much space a keycap model would need.

Printing advice is available here.

License

Copyright © 2019–2023 Viktor Eikman

This software is distributed under the Eclipse Public License (EPL) v2.0 or any later version thereof. This software may also be made available under the GNU General Public License (GPL), v3.0 or any later version thereof, as a secondary license hereby granted under the terms of the EPL.


<a name="u_unit">^1</a>: Key size is measured in a traditional unit. 1 u is 19.05 mm (0.75”) per key mount. A 1 u cap is smaller at about 18.25 mm to allow for space between caps on adjacent mounts. For the same reason, a 2 u cap is more than twice as wide as a 1 u cap, and so on.