0.15.0
The following release focuses on making zenaura more beginner friendly through trageted changes.
AsyncDispacher
Now zenaura developers don't need to fully understand how coroutines and asycio work. They can simply call dispacher to dispach asynchrhouns events within the event loop.
Also we made zenaura event driven through dispacher.bind, users now can hook components callback to events in the document, window, or by id.
This will allow to more cleaner event managmenent, and simplified version than it used to be.
Also I have simplified the app router running by a facade , users now only have to add app.run() instead of importing asyncio
Following this change, I updated mutator, also added mutates and graceful error handling. Mutator remain as is for asynchrouns callbacks like api fetching and so on. mutates for regular python call backs