Hi @Rory_McCallion, thank you for your interest !
I am working on an offline-first app. It contains “documents” with a machine ID and a human-friendly name. Both IDs and names need to be unique and I need to retrieve documents by both, depending on the case.
Usually generating ID and ensuring secondary keys uniqueness would be done server-side by the DB. Here I need to do it client-side since the app is offline-first (ie. it would work without internet connectivity).
At first I wrote some custom code for this, then I thought generalizing this in a type-safe way would be a nice challenge. Hence this lib.
Aside from this use case, I have had the feeling several times before that some kind of lightweight client-side relational DB could be useful (ala sql.js, but in pure Elm). So I am temped to push the project further in this direction. However I don’t really have a concrete use case for this right now so it feels to me a bit like engineering for the sake of engineering… which is fun but also wasteful.