Re: Well...
I took a component Tandy membrane keyboard (bought in one of their 10% off per day sales), opened it, scratched out some of the tracks and painted in the required replacement traces with conductive paint (intended to fix heated rear windscreen traces - also from Tandy) to make my (mostly) home-made ZX81 external keyboard. I put it into a case made from 1mm styrene sheet, with a long ribbon cable, which also included a power switch. The key labels were cut from a photo of a ZX81 from the cover of My Computer (the magazine), stuck on using clear tape.
The circuitry for the keys is a simple rectangular pattern, and there are convenient through-board holes on the board to solder the wires to, no additional circuitry needed (in fact, I don't think that it would be possible to use the I/O port on a ZX81, because of the way that the bus was split by isolating resistors the keyboard was read using Port In from the ULA from the wrong side of the isolating resistors)
Although I disposed of the keyboard about 20 years ago when my home-made power supply (which did not come when bought in kit form) went bang, taking the ZX81 with it, I recently came across and used the conductive paint (ironically to repair a fluid damaged Unicomp Model M), still usable 50 years after I bought it!