I have built this very simple CRM-like contractor invoicing and packaged it up as a Datahike example, would be nice to get feedback in case anybody is interested: https://github.com/replikativ/beleg/.
Does Datahike require a schema or does it work schema-less, too?
Both schema-on-write and schema-on-read are supported https://github.com/replikativ/datahike/blob/main/doc/schema.md
so schema-on-read is essentially no schema?
Not quite, you still want to declare refs. And the inputs need to follow the transactor DSL syntax, but it is fairly free. If you want to just pump in JSON-like data you can use https://github.com/replikativ/datahike/blob/main/doc/unstructured.md, this will not retain cross-references between entities in your data though (if you have them, i.e. if one entity somewhere in the JSON should have the same db/id as its representation elsewhere).
What kind of data do you want to insert?
You probably would like to look at the inferred schema at least: https://github.com/replikativ/datahike/blob/main/doc/unstructured.md#working-with-the-schema-directly
I'd like to try to use a datalog database as a sophisticated query engine for https://github.com/soulspace-org/overarch models. These models are essentially graphs of nodes and relationships, which are maps with some required keys. But I want to keep the maps open so you can attach any information/keys to those maps, you need. I don't need the db as a storage backend, as the model files should still live in git repositories.
Cool! This should also be possible with schema-on-write, you can always add attributes to the schema without a problem.