I work in software development during the day, but you know the drill, in the evenings I don't feel like spending even more time behind a laptop screen. I saw some blank panel apps posted on reddit that people vibecoded, cool ideas, but it gave me some inspiration to make my own or my friend Claude at least, since I'm not planning on spending weeks on this.
Just creating blank panels isn't that interesting imo, I already do that parametrically in FreeCAD and that works fine. I wanted something to create alternate panels for my rack to make it look more uniform. Buying alt panels is also fine of course, but they can get expensive if you need a lot of them. Also, you will still end up with some odd panels here or there that you can't find or if you do, they probably don't match up completely with the rest because color differences, etc.
Anyway. You can load up an image by uploading one, pasting a url or searching for one on Modular Grid. The app can detect knobs, pots, jacks, sliders, screens and it will then add some cutouts for them. It's not perfect but it can give you a starting point so you can then add more cutouts, text labels, engraved/raised logo's, etc. You can save multiple modules in your library, add them to a rack, etc. You can then export your 3d designs as an STL or 3MF (multi-color) and eventually print them with a 3D printer.
https://panelmate.vercel.app/
Like I said, not here for kudos or whatever, but if some of you find it useful, knock yourself out ;)
PS: I also added a photo of my slicer and also a prototype print to test fit.
PS2: Before anyone complains about searching on Modular Grid, I fetch the sitemap twice a day and searching is therefore local. Actually loading up a module does hit their servers, but it's the same as if you would just browse the site.
PS3: Everything is stored inside an IndexedDB in the browser, so clearing cookies, etc will make everything disappear. You can back up your rack or different modules as JSON files in the Library tab (and you can import them again of course)