At least as important as any of that is that it lets me generate labels. I decided there was no possible way that I was going to do what some people do, namely use one system to track their collection and another to make labels.
Under the hood, my database is an sqlite3 database. My database application is a front end that handles entry of new records, searches, and label generation.
It is all open source and on Github for anyone who wants to use it.
I used to use a ruby on rail application to handle my micromount database. Rails is such a disaster and train wreck, that I abandoned that and converted my application to a ruby application. That had issues that arose due to ruby versions and problems with gems and packages. Nothing like the chaos and misery I experienced with rails, but it was still so bad that I finally rewrote the whole thing in python.
Tom's Mineralogy Info / tom@mmto.org