There are more options: 1. dart has introspection API. maybe interfacing with it would be enough 2. tanslating dart to nim so that nim only could be used (hot reloading gone) working on the graphic engine directly.
<https://github.com/Tensegritics/ClojureDart> Is another similar project. Got it working but compilation speeds are very slow :-/ But their documentation might have some additional hints they had to care about to get it working. Hot reloading did not work. This would solve the UI problem on all platforms. Eg NimX on Huawei P10 plus is slow (webgl). Didn't check out the other alternatives.