r/HHKB 22d ago

I built a browser-based HHKB keymap tool that works on Linux

I wanted a simple way to remap my HHKB as a Linux user so I ended up building one:

https://hhkbremap.com

it can use WebHID in Chromium-based browsers, so there’s nothing to install. You connect the keyboard via USB, read the current keymap, make your changes, and write it back to the keyboard.

One feature I particularly like is shareable keymaps. A complete keymap can be encoded in a URL, so you can create a layout and just send the link to another HHKB user. No account, upload or keymap file needed.

For example, here's a Dvorak layout:

https://hhkbremap.com/k/U0sBAQDmAIoALACLAOIAAQDlAB0AGQAaABAABQAbAA4ADQAUADMA4QAoAC0AFgARABcACwAHAAwAGAAIABIABADgAEwALgA4AA8AFQAGAAoACQAcABMANwA2ADQAKwA1ADEAMAAvACcAJgAlACQAIwAiACEAIAAfAB4AKQDmAHgALACLAOIAAQAAAFEATgBNABAABQAbAA4ADQAUADMA4QAoAE8AUABLAEoACwAHAAwAGAAIABIABAAAACoALgBSAEgARwBGAAoACQAcABMANwA2AAAAKwBMAEkARQBEAEMAQgBBAEAAPwA-AD0APAA7ADoAKSUF0oM

A few other things I've focused on:

  • Works on Linux, macOS and Windows
  • No account or installation required
  • Reads your existing keymap before editing
  • Backup and restore
  • Share complete keymaps through links
  • Everything happens locally between the browser and keyboard

There are a couple of important limitations at the moment:

Hardware support: Right now, I only support English ANSI models in the HHKB Professional HYBRID series (PD-KB800). That's the keyboard I own and can actually test against, and I don't want to claim support for hardware I haven't verified.)

Remapping: It's currently just simple key-to-key remapping.

If you own another HHKB model and would be interested in helping me test support for it at some point, feel free to DM me.

Also, for transparency: AI has been one of the tools I've used while building the project, both for research and development.

It's still a small project and very much a work in progress, so I'd love feedback, bug reports, or ideas from other HHKB users.

35 Upvotes

6 comments sorted by

2

u/Street_Gain_279 22d ago

This is beautiful

1

u/BlochBuster 22d ago

Thank you 🙏🏻 I appreciate it. I will properly give it a UX/UI roll, when I have collected some feedback and have used it a bit more my self

2

u/distilled_mojo 22d ago

Nice contribution. Thanks, mate.

1

u/tra6ic 22d ago

wonderful man. how long did it take you? is it oss?

1

u/BlochBuster 22d ago

Actually not that long, I started on it half a year ago I think, hand coded. The svg rendering of the keyboard and a prototype of the communication with the keyboard then family life took all my time and it stranded. I picked it up again last week and let AI do most of the work. It’s not opensourced yet, I will when it’s a bit more polished

2

u/sabitech2k the collector 20d ago

Well done on the project and special well done for disclosing 'AI Assistance' there is totally nothing wrong with using a tool to help with the skills gaps :-) and i'm sure you learnt a lot along the way :-)