I wouldn't want to use Docker. (otherwise I can easily use MongoDB, with pseudo-file based.) It should be easy to install for end-users.
If I use Kotlin, I might try h2 database; but Kotlin is harder to code than TypeScript in general...
Some other criteria are
- User input queries (Actually, I converted it to JSON, before inputting to ORM.)
- Joins. I am trying to develop an app compatible with Anki (schema), and it involves a lot of joining.
- Maintenance. NeDB and LokiDB seem not to be actively maintained anymore. Have tried PouchDB, but not sure about stability; although CouchDB should be well maintained.
- JSON support, in order to evaluate
Record<string, string>-- can even be something like JSON1 extension