It is already done - in fact, all the query functions just build the javascript and call it on the client side by running execjs/2
or broadcastjs/2
. This functions just run any JS you give. At the beginning there were private, but I decided to open it to public as they may be useful in cases like yours
https://hexdocs.pm/drab/Drab.Query.html#execjs/2
https://hexdocs.pm/drab/Drab.Query.html#broadcastjs/2