A web-based configuration tool for the DYA keyboard series and ZMK keyboards.
Tune your keymap, trackball, and connections — right from your browser. No install required.
🚀 Open DYA Studio →
·
🧪 Dev preview
Open DYA Studio is the stable release. Dev preview tracks the latest main and may be unstable.
No keyboard at hand? Hit the Demo button on the splash screen to explore every feature with a simulated keyboard.
- Open studio.dya.cormoran.works in a supported browser (see below).
- Choose how to connect on the splash screen:
- USB — plug in your keyboard and pick its serial port.
- Bluetooth — pair and connect over BLE.
- Demo — no device needed; explore the app with a simulated keyboard.
- Configure away. Changes marked as unsaved can be saved to the keyboard's flash so they persist across reboots.
Tip
The UI is available in English and 日本語 — use the language toggle in the top-right corner.
| Platform | USB (Web Serial) | Bluetooth (Web Bluetooth) |
|---|---|---|
| Chrome / Edge (desktop) | ✅ | ✅ |
| Android (Chrome) | ❌ | ✅ |
| iOS (Bluefy) | ❌ | ✅ |
| Firefox / Safari | ❌ | ❌ |
Edit key bindings and layers with a visual editor — equivalent to ZMK Studio, with a slightly easier UI. Add, reorder, rename, and delete layers, and watch key presses stream live from the keyboard.
Create and edit macros and combos at runtime, without rebuilding firmware.
Adjust the embedded trackball in real time: pointer sensitivity (0.1×–10×), sensor rotation for different mounting angles, axis snapping, scroll behavior, and automatic layer switching — all per input processor, scoped to the layers you choose.
Name, switch, and unpair BLE profiles. Choose whether USB or Bluetooth wins when both are connected. See which OS each host is detected as, override it per profile, and set a default layer per connection target or per OS — the keyboard switches layers automatically when you switch devices.
Tweak power management (idle and deep-sleep timeouts) for each half of the keyboard or all devices at once, and edit advanced firmware settings directly from the browser.
Inspect battery levels, firmware build info, and uptime for both halves. Hunt down key chatter with the interactive key-switch diagnostics view, watch the trackball sensor's raw surface frames, and copy a full support report to share when asking for help.
- Any ZMK keyboard with ZMK Studio enabled: the keymap editor works out of the box.
- DYA keyboards (and keyboards built on cormoran's ZMK fork + modules): everything above — trackball tuning, connection management, per-OS default layers, diagnostics, and more.
Warning
cormoran's ZMK fork is experimental and optimized for DYA keyboards. It may contain unstable or breaking changes — use it with other keyboards at your own risk.
| Keyboard | Description | Links |
|---|---|---|
| DYA Dash | 40% split keyboard with embedded trackball, for mobile use | Design · Docs · Buy |
| DYA2 | Next-gen 60% split, standard row-staggered layout — coming soon | Booth |
Follow #dya_kbd on X, or reach the maintainer @cormoran707.
Stack: React 19, TypeScript, Vite, Tailwind CSS v4, Radix UI
git clone https://github.com/cormoran/dya-studio.git
cd dya-studio
npm install
npm run dev # Start dev server at http://localhost:5173npm run build # Production build
npm run lint # Lint code
npm test # Run tests
npm run test:coverage # Test coverage- Development Guide — design system, component patterns, and implementation guidelines
- Testing Guide — testing patterns and examples




