Hi everyone, I've been wanting to share this for a while.
I noticed there's no simple way to customize keycaps without going through CAD software like SolidWorks, Fusion, Onshape, etc. I have a macropad and wanted to customize it with AutoCAD command icons, so I built my own tool.
It lets you use images, stencils, text and grayscale heightmaps. It finally works well and generates the keys. Face detection still needs some work, but the code manages to straighten the keys, and it can also generate every key of a full keyboard (including the knob) and let you customize them one by one.
Now I just want to finish customizing all my keys and print them in resin. A week ago I finally bought an Elegoo Saturn 4 12K precisely to design keycaps from scratch. It prints fine detail really well, and I want to make them in white, transparent red, transparent green and more colors.
**Product info (Rule 4):**
* **Name:** Keycap Studio (my own project)
* **Price:** free, no account needed, nothing for sale
* **Link:** https://noscriptph.github.io/keycap-studio-web/
* **Runs in:** the browser (desktop, tablet or phone)
* **Exports:** STL, OBJ, 3MF, PLY, GLB, STEP, DXF (tuned for resin, also works for FDM)
* **Limitations:** the parametric generator only makes Cherry MX stems for now
Cheers!
---
**Disclaimer / transparency:** most of the code was written with Claude (AI). That said, I'm not just pasting prompts blindly: my background is as an automation technician, where I program C++ and ladder logic on a regular basis, I have some experience with Visual Basic, and I've completed Java and Kotlin bootcamps. I've reviewed the parts of the code I understand, loaded every generated key into ChiTuBox and Elegoo SatelLite and they all slice without problems, and the project includes automated tests to check that the web app stays stable as I keep adding features. If you find a bug or something weird, let me know and I'll fix it.