Public fork · Configuration UX
Keyboard configurator
A VIA/Vial-compatible web configurator fork for exposing custom keyboard capabilities that do not fit cleanly into the stock application, while preserving normal behavior for standard devices.
- Niche
- Capability-aware custom keyboard configuration
- Core stack
- TypeScript · React · WebHID
- Direction
- Richer RGB and firmware-specific controls
- Constraint
- Extensions must not weaken upstream compatibility
The niche
Custom firmware often becomes more capable than the generic configurator used to control it.
This fork occupies that gap. It keeps the familiar VIA model for ordinary keyboards while creating a path for device-specific capabilities—such as richer RGB profiles or custom firmware controls—to appear when the connected hardware actually supports them.
What is different
The extension model is capability-driven rather than fork-wide.
Device-specific features are isolated behind explicit support checks instead of leaking assumptions into the standard VIA path.
The direction goes beyond global effects toward profiles associated with layers, modifier families, combos and supported per-key behavior.
The configurator is developed alongside custom firmware so exposed controls map to real device concepts rather than generic settings panels.
The configurator remains directly usable through GitHub Pages instead of requiring a custom desktop installer.
Product & design thinking
The objective is not to create a separate app for one keyboard. It is to make specialization coexist with a general-purpose tool.
That means custom controls should appear because a device advertises or satisfies a capability contract, not because the application happens to know a hard-coded model name. Standard devices should continue to receive the ordinary VIA experience.
This keeps the product understandable: users see controls that correspond to what their firmware can actually do, while unsupported features simply stay out of the way.
Development approach
Extension points are kept narrow so upstream compatibility remains a constraint, not an afterthought.
The fork tracks VIA while placing richer behavior behind typed adapters and capability detection. GitHub Actions builds and publishes the `/app/` Pages target, giving firmware work a stable configuration surface that can evolve independently from upstream hosting.