The Story
When I started my collection, as expected, I had only a few CDs, a few movies, books, and issues of Arkas. I remembered exactly what I owned, and when I wanted to buy something it was easy to avoid buying something I already had.
The first collection that began to grow, and which I have been maintaining for at least 30 years, was Arkas. The result was that I eventually ended up with quite a few duplicate issues.
The problem became bigger when I started collecting CDs, which was also a hobby that began at a very young age. At some point my collection was destroyed, and I rebuilt it, this time twice as large. It became impossible to remember what I had already bought, which resulted in me buying some duplicates.
All my notes are in Obsidian, so naturally I created four Markdown files there, one for each category (CDs, Blu-Rays, Books, Arkas). The process was extremely simple and still works to this day. I created one table per page and simply entered the discs or anything else I bought. I would not put the CDs in their place, for example, until I had recorded them. Since we are talking about plain text files, this only takes a few minutes. I also kept the format very simple, such as Artist | Title. In my life, simple things work; complex ones I stop using after a while.
However, I had one problem. I could not view my lists on my phone when I was in a store. No big deal, I thought; I would write a PHP application that reads these files and displays them on a website. Which is exactly what I did. I converted the files inside Obsidian using the Webpage HTML Export extension by Nathan George, and the PHP system simply stripped out the junk code and displayed them on a page. This is how the Project Collections was created, which I have on GitHub: https://github.com/tomgineer/collections. There was no database, no users, no administration, nothing. It was simple, and that is why it worked. Just a mechanism that scanned for changes in the HTML files I uploaded.
It worked well, but it did not have a database. As the size of my collection grew, searches and other things I wanted to do started to not work the way I wanted. So I decided that it was time to add a database, include my favorite framework, and turn it into a more serious project. I rewrote the whole thing in three days. That is how the Collections II Project was created: https://github.com/tomgineer/collections2, which is what you are looking at now.
It now works exactly the way I want. It still scans HTML files that I export from Obsidian, but this time it separates them nicely into categories and stores them in the database.
This simple little system works perfectly. I continue to enter products in Obsidian, meaning I always have them in the classic Markdown format that I like, and then I simply export them and they appear on the World Wide Web.