README.md

Chrysalis

Chrysalis is a graphical configurator for Kaleidoscope-powered
keyboards. While still heavily under development, it's at a stage where it is
already usable for a number of tasks. To try it, you don't even need to flash
Kaleidoscope beforehand, Chrysalis can do that for you, as it ships with
reasonable default firmware for each supported board.

The primary purpose of the application is to allow one to configure their
keyboard without having to compile or flash firmware, by storing the
configuration on the keyboard itself, in EEPROM. There are no external tools
required, just Chrysalis itself.

Features

Layout editor to edit the keymap on-the-fly, with the ability to copy one
layer to another, and to set a default one.

Colormap editor to edit the per-key LED colormap on boards that support it.

Firmware upgrade to upload either the default, Chrysalis-enabled firmware that ships with the application, or a custom one.

Supported operating systems

Chrysalis is primarily developed under Linux, but we target all three major
operating systems, and test our releases on Windows and OSX too. That said, our
testing is done on Ubuntu 18.04 LTS, Windows 10, and OSX Mojave.

The protocol Chrysalis uses to communicate with the keyboard requires USB serial
support, which is known to be problematic on Windows prior to Windows 10.

Reporting issues

Chrysalis is alpha quality software. There will be bugs, missing features and
non-obvious things. Reporting any and all of these help us make the software
better, please feel free to open issues liberally!

Development

To launch the development environment, simply type yarn && yarn start. To do a
production build, use yarn run build:all, or limit it to a particular OS:
yarn run build:linux, yarn run build:mac or yarn run build:win. See the
scripts section of package.json for more scripts.