in reply to Eitan

I don't know how close it is to your requirements, but here's something in the early stages of development:

(h/t @lrhodes)

github.com/baskerville/plato/i…