https://github.com/donn/nudelta
Open source NuPhy Console alternative
https://github.com/donn/nudelta
air75 console halo75 keyboard linux nuphy remap
Last synced: 11 months ago
JSON representation
Open source NuPhy Console alternative
- Host: GitHub
- URL: https://github.com/donn/nudelta
- Owner: donn
- License: gpl-3.0
- Created: 2022-10-14T06:24:26.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2025-03-23T23:54:30.000Z (about 1 year ago)
- Last Synced: 2025-04-19T02:16:07.949Z (11 months ago)
- Topics: air75, console, halo75, keyboard, linux, nuphy, remap
- Language: JavaScript
- Homepage:
- Size: 2.28 MB
- Stars: 548
- Watchers: 17
- Forks: 26
- Open Issues: 21
-
Metadata Files:
- Readme: Readme.md
- Changelog: Changelog.md
- License: License
Awesome Lists containing this project
README
ν∂ / Nudelta
> Note: This software is in beta. NuPhy® is a registered trademark of NuPhy Studio.
> Nudelta is an unofficial product and is not affiliated with NuPhy Studio.
[Download](https://github.com/donn/nudelta/releases/latest)

An open-source alternative to the [NuPhy Console](https://nuphy.com/pages/nuphy-console) created by reverse-engineering the keyboards' USB protocol.
What this has:
* Support for NuPhy Air75 and Halo75 on Windows 10+, macOS 11+, and Linux
* Loading and saving keymap modifications from a `.yml` configuration file
* The ability to back up and dump keymaps to binary formats (CLI)
* The ability to dump keymaps to a human-readable hex format (CLI)
What this DOESN'T have:
* Macros
* Support for Air60, Halo65, etc.
* I don't have them.
* RGB Control
* I don't need that, personally.
Contributions are super appreciated for all of these.
## Running Requirements
* Windows 10 or higher
* macOS 13 or higher
* Linux 2.6.39 or higher with glibc 2.17 or higher.
### Build Requirements
* C++17 Compiler
* Clang recommended for macOS/Linux
* MSVC recommended for Windows
* Cmake
* Node 14+ with Yarn
## Build
```sh
git clone https://github.com/donn/nudelta
cd nudelta
git submodule update --init --recursive
rm -rf build
yarn
yarn build-native # CLI / Library
yarn build # GUI
```
The Linux AppImage will be found under ./dist, and the Mac app will be found under ./dist/mac.
## Using the CLI
You will need to use **sudo** on Linux. On macOS, you will need to grant Input Monitoring permissions to whichever Terminal host you're using to run Nudelta, likely Terminal.app.
No special permissions are required on Windows as far as I can tell.
### Load a custom profile
```sh
nudelta -l ./donns_remap.yml
```
The configuration .yml file is simple: there's a top level object called "keys": which is a map of physical keys on the actual keyboard to their replacements:
```yml
keys:
capslock: esc
```
See [example.yml](example.yml) for a profile and somewhat more detailed examples.
You can find a list of:
* Replaceable keys (for the Windows mode) in [res/air75/indices_win.yml](res/Air75/indices_win.yml).
* Replacement keycodes in [res/air75/default_keymap_win.yml](res/Air75/default_keymap_win.yml).
### Reset keymap to default
```sh
nudelta -r
```
## License
The GNU General Public License v3 or, at your option, any later version. Check '[License](/License)'.