an important question - what did you build Thorium in? How happy are you with it?
My biggest regret is the database. During gameplay, the database needs to be in memory so the game loop has as little latency as possible, so the database is just for persistence when the app closes. I really should use something built for this purpose, like sqlite. But the database engine I'm using is designed to be transparent and convenient. It uses a JavaScript proxy to track any time a data mutation is made to the in-memory database, and dumps that to the JSON file on a throttle.
Everything else is meeting my needs just fine.