All Projects → keyboardio → Chrysalis

keyboardio / Chrysalis

Licence: gpl-3.0
Graphical configurator for Kaleidoscope-powered keyboards

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Chrysalis

Xboxkeyboardmouse
Keyboard and mouse for Xbox One streaming on Windows 10
Stars: ✭ 235 (-9.96%)
Mutual labels:  keyboard, gui
Fabgl
Display Controller (VGA, SSD1306, ST7789, ILI9341), PS/2 Mouse and Keyboard Controller, Graphics Library, Sound Engine, Game Engine and ANSI/VT Terminal for the ESP32
Stars: ✭ 534 (+104.6%)
Mutual labels:  keyboard, gui
kiwi
Kiwi turns your Pimoroni Keybow into a fully customizable poor-man's Elgato Stream Deck!
Stars: ✭ 40 (-84.67%)
Mutual labels:  keyboard
Litedbviewer
LiteDB Viewer is a simple tool that let you open a LiteDB database file and shows its contents; think of it as a GUI for LiteDBShell
Stars: ✭ 258 (-1.15%)
Mutual labels:  gui
Image-Sort
Sorts your image at high speed
Stars: ✭ 15 (-94.25%)
Mutual labels:  keyboard
kurinji
Kurinji Input Map aims to decouple game play code from device specific input api. This is achieved by providing apis that allows you to map game actions to device input events instead of directly handling device inputs.
Stars: ✭ 47 (-81.99%)
Mutual labels:  keyboard
Play With Algorithm Visualization
Codes of my MOOC Course <Play with Algorithm Visualization>. Updated contents and more demos or practices are also included. 我在慕课网上的课程《看得见的算法》Java示例代码。课程的更多更新内容及辅助练习也将逐步添加进这个代码仓。
Stars: ✭ 255 (-2.3%)
Mutual labels:  gui
LowLevelInput.Net
A thread safe and event driven LowLevelMouse and LowLevelKeyboard Hook
Stars: ✭ 32 (-87.74%)
Mutual labels:  keyboard
Pysciter
Python bindings for Sciter
Stars: ✭ 261 (+0%)
Mutual labels:  gui
TTInputVisibilityController
Lightweight controller to keep your inputs visible when the keyboard is presented.
Stars: ✭ 21 (-91.95%)
Mutual labels:  keyboard
Cura
3D printer / slicing GUI built on top of the Uranium framework
Stars: ✭ 3,401 (+1203.07%)
Mutual labels:  gui
Pancake
Lightweight, Fast, Easy-to-use HTML5 2D game framework!
Stars: ✭ 79 (-69.73%)
Mutual labels:  keyboard
jyutping
Cantonese Jyutping Keyboard for iOS. 粵語粵拼輸入法鍵盤
Stars: ✭ 23 (-91.19%)
Mutual labels:  keyboard
Vue Touch Keyboard
Virtual keyboard component for Vue.js 2.x. Designed to Raspberry Pi Touch Display
Stars: ✭ 255 (-2.3%)
Mutual labels:  keyboard
SwipeType
Implementing same algorithm "swype keyboard" for .NET and Unity
Stars: ✭ 20 (-92.34%)
Mutual labels:  keyboard
Termkit
Terminal Kit - Console UI toolkit for Swift applications
Stars: ✭ 256 (-1.92%)
Mutual labels:  gui
STM32Keyboard
No description or website provided.
Stars: ✭ 15 (-94.25%)
Mutual labels:  keyboard
rustyvibes
A Rust CLI that makes mechanical keyboard sound effects on every key press
Stars: ✭ 56 (-78.54%)
Mutual labels:  keyboard
react-keyboard-shortcuts
A declarative library for handling hotkeys based on explicit priority in React applications
Stars: ✭ 23 (-91.19%)
Mutual labels:  keyboard
Postgui
A React web application to query and share any PostgreSQL database.
Stars: ✭ 260 (-0.38%)
Mutual labels:  gui

Chrysalis

Chrysalis screenshot

Downloads

Latest production builds Latest development builds

About

Chrysalis is a graphical configurator for Kaleidoscope-powered keyboards. While still under development, 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 Hardware

Chrysalis supports the Keyboardio Model01 and the Keyboardio Atreus, along with the original Atreus. There's also preliminary support for the Dygma Raise.

The ErgoDox EZ (and any other keyboard wired like it), the SOFT/HRUF Splitography, KBDFans KBD4x, and older, Teensy-based OLKB Planck keyboards are also supported, as long as they run suitable firmware.

Supported operating systems

Chrysalis is primarily developed under Linux, but we target all three major operating systems, and test our releases on Windows and macOS too. That said, our testing is done on Ubuntu 18.04 LTS, Windows 10, and macOS 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.

Installation

From installer packages

Click on the badge for your operating system's packaging system above

macOS Homebrew

brew update && brew upgrade
brew install --cask chrysalis

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.

Debugging

There are sample ENV file & debugging configurations provided in the dev/sample directory. There is also an example launch.json for VSCode under the .vscode directory under dev/sample/.vscode/launch.json. To debug the main process, you may wish to launch from an IDE (without using the above in a terminal), configurations for VSCode are provided. If using the launch or compound configurations, the timeout properties must allow enough time for the app to fully launch before the debugger(s) stop trying. In the case of compound, this applies to the renderer and main process debugger.

Note: The ports defined in your .env.development & your debugging configuration must match.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].