Show HN: Open sourcing a data flow engine for Clojure/Script
domino-clj.github.io
domino-clj.github.io
https://github.com/sixthnormal/clj-3df
Which offers Datalog queries that deliver you fast, minimal diffs of data upon updates from external sources (e.g. Kafka). Build on differential dataflow, which is very cool.
The goal for the library is primarily to provide a way to organized the business logic. One example use would be hooking it up to re-frame. Re-frame events can feed inputs into Domino, and it will run through the event graph and produce a new state for the re-frame db.
Another use case is to use Domino as a state machine on a server. You can hook up HTTP endpoints as inputs, run through the events to decide what actions need to be performed, and then dispatch effects to handle HTTP responses, and so on.
I mostly focus on building simpler things than this needs in my spare time, but I've worked on projects where a good dataflow library would have spared quite the headache.