Design
Select a starting keyboard, click a key and change its legend, physical code, Base/Shift/Fn output or dimensions. The Fn layer is selected manually; it is not a real keyboard firmware layer. Drag a key to move it. Overlapping keys are flagged for review.
Test
Switch to Test layout. Click virtual keys, or focus the test pad and type on a physical keyboard. Mapping uses KeyboardEvent.code (physical key position), so it may not match the character printed on your actual keyboard. Ctrl/Alt/Meta combinations remain browser-controlled.
Export & privacy
Export JSON to reopen your editable layout, SVG for scalable diagrams, or PNG for a picture. Save up to 20 named local layout copies in My layouts. A best-effort draft saves in localStorage; it can be cleared by the browser. Use manual JSON backups. No account or remote upload is required.
Limitations
No firmware flashing, QMK/VIA export, system keyboard remapping, IME support or electrical keyboard scan simulation. Browser shortcuts and reserved OS keys cannot reliably be intercepted.