Skip to content


Switch branches/tags


Failed to load latest commit information.
Latest commit message
Commit time
Sep 10, 2020
Sep 10, 2020
Sep 10, 2020
Sep 10, 2020
Dec 28, 2021
Sep 10, 2020
Sep 10, 2020
Sep 23, 2020


design and test virtual 3d keyboards.

getting started

nvm use
npm install
npm start


colorways: Any PR's for new colorways will be accepted as long as there is a real physical version of that colorway, or an ongoing group buy.

layouts: The goal of this project is not to recreate every possible keyboard layout, therefore I have no plans to add any new layouts myself. However PR's for new layouts will be accepted as long as they are not too similar to current layouts.

adding new colorways

run the command npm run create-colorway COLORWAY_ID "COLORWAY_NAME" to create the file: /src/config/colorways/colorway_COLORWAY_ID. Edit this file directly or paste json from the advanced section of the editor tab.

A note on three.js version

This project was built before the depreciation of THREE.Geometry there are currently no plans to update three past version 125 as this would require a rewrite of the case and key geometry to support BufferGeometry.


json configuration for layouts and keymaps are based on qmk. keymaps can be changed by switching the corresponding keycodes.

NOTE: Special keys from keyboards with custom firmware (e.g. layer switching) may not trigger keydown events, as these are not supported in javascript


alt example image

alt example image

alt example image