The Problem
About once a year, I get so frustrated with the mountain of DigiKey bags swallowing my lab that I dedicate an entire day to nothing but cleaning up. Last year’s effort involved buying about 20 clear Ikea SAMLA boxes and 50 ESD-safe bins, which worked well. The challenge this year, however, is keeping track of stock, especially with multiple internal and external projects running simultaneously.
There is no shortage of free and paid apps out there, but I was disappointed with most of what I saw. Everything has moved to web based tools that require spinning up Docker images or dealing with a dependency nightmare.
The other issue is ease of use. Most tools don't seem to prioritize data entry, which is a major hurdle when you have hundreds of parts. While this is primarily a first-time setup problem, it’s still a pain. So, I decided to build my own while experimenting with agentic coding.
AI Coding
Part of the promise of Gen AI is the ability for everyone to have their own highly customized software. I had Claude generate a detailed prompt that boiled down to:
- Desktop app: Python + Qt + SQLite
- Minimal Interaction: Limited keyboard or mouse input for part entry
- Hardware Optimized: Built for barcode scanners and Zebra ZP 450 label printers
- Smart Entry: Details should be auto-filled using distributor APIs
My first attempt at one-shotting the app produced a functional tool, but it required several UX changes, so I decided to iterate step-by-step. 5,000 lines of code, 23 commits, and 2 days later, I had an app I was happy with.
MCUBin: Simple Open Source Inventory
The result is a lightweight app with a clean, table-based UI.

The "Add Part" dialog puts the most important fields at the top. Since Mouser static bags include these fields as barcodes, and each scan sends a newline, the focus automatically moves to the next text box. Once the quantity is entered, a part lookup is performed, and the entry can be saved instantly.

Things went so well with Claude that I decided to build a label editor too. Every field can be customized and the layout can be saved as a template.

Conclusion
It’s extremely satisfying to create custom tools that I simply wouldn't have had the time to build without AI. Claude was able to implement features with minimal guidance, and the more I refined my requests, the better the results became. It's scary to think where we'll be in 1 year.
However, there are downsides. It’s very easy to introduce bugs as the app grows in complexity. I also don’t have a good understanding of the overall architecture since I didn’t write the code myself. This is fine for internal tools, but I wouldn’t ship a commercial product built entirely this way.
The Code
Give it a try if you're interested.
GitHub Repository: Netlist-Studio/mcubin