There's loads of mini-keyboards, but they are always unpleasant to type on. Partly, it's size and that cannot be changed. But trying out various BLE keyboards for this project, they all had bad 'tactile characteristics'.
So I ordered samples of all tact switches and mini-buttons I could find. And found that by far the best was the type of mini switch used for mouse buttons: very light in touch (which you need on a tiny keyboard), and a decent tactile feedback. They really worked for a programmers' keyboard!
That find sparked the keyboard part of the project. Making your own is fun anyway. I found almost ready-made BLE code on github from chegewara, the Apple II layout keyboard matrix was easy to implement.
I initially developed it as a standard Bluetooth BLE 'HID keyboard', then added serial port output. So the keyboard hardware can serve three purposes: just as a generic BLE keyboard for PC or phone, then as a serial keyboard for projects, and lastly, because the esp32 inside has plenty of capacity, it can run my 6502 emulation and TFT display to be a stand-alone retrocomputer or terminal (either over serial, wifi, or Bluetooth even). So, multi-purpose, and that adds to the idea of the esp65 being a retro-playground and not just a 6502 supercomputer...