I've been using CastleDB to organize my database and it has everything I needed to quickly define the static data for my entities BUT it has a few bugs that make it too frustrating to work with (mainly along the lines of the editor not saving my database properly and making it unreadable at random whenever i edit the name of a column or add a new sheet/table and with no way to know at what line in the json file this error is occurring at).

So I would ideally want another database manager that is the same but isn't broken. The alternatives I've tried (though they aren't entirely suited for this purpose) are mongoDB (issues being that there doesn't seem to be any automated structure defining to the database.), SQLite3 (which doesn't have arrays which i need, and i want all data associated with a single entity to be observable at once and not spread across different tables through refrences), postgreSQL using pgAdmin (which has arrays but I can't see the data from rows referenced from other tables and thus has the same issue as SQL).

All of the above have the issue of having no way to reference other rows of tables in such a way that doesn't have me writing the same ID multiple times to be able to identify what I am referencing just by looking at it. I'm surprised that pgAdmin doesn't have this drop-down foreign key list feature as SQL relies on referencing other tables and just expects you to know all the id's of your tables by heart or requiring you to go back and forth between tables.

Everything castleDB does could theoretically be done in both sqlite or mongoDB but i have yet to spot something as similar and straightforward for my needs.

Any suggestions would be much appreciated.

edit: I've tried all the big names, looking more and more like I'll just have to code my own db manager for my own future convenience if it isn't too much work. I'll spitefully call it "FortressDB", Bootleg CastleDB but it actually works 😂.

2 Answers 2


Took a while but it was worth it https://github.com/KnightNine/FortressDB


I've had a similar issue but, I've settled with sqlite... I use text fields as ids, which are descriptive enough like in example for items: broad_sword, long_sword etc... The interface with SQLiteStudio is ok, since when you click on a foreign key column, it show's you it's data etc.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.