Mika, an experimental frontend framework

Mika is an experimental frontend framework, bases on wasm-bindgen, inspired by Yew and Dominator. For more info, please visit the homepage linked below.

Links
Homepage https://limira-rs.gitlab.io/mika/
Repo https://gitlab.com/limira-rs/mika
Crate No release yet
Benchmark code https://github.com/limira/js-framework-benchmark/tree/add-mika-rust-framework (note that the code not on master branch)

At the end of this post is the benchmark result run on my machine. I don't include benchmark for Yew here because there is no implementation for keyed benchmark for it yet. Dominator is also not included because it implementation attach event listeners for every items, while other frameworks just have one global listener for all items.

Edit: The benchmark does not touch the most weakness in Mika. Currently Mika reset all rendered item in (in a list) unconditionally when the item need updating. So if the rendered item involves many data, the performance will be worse, but it only limits to items that need to be updated.

I appreciate any kind of feedback. I will make a PR for the benchmark after your feedback.

2 Likes

I forgot to mention about the weakness in Mika that not touch by the benchmark. I updated the post, but also copied it here for who already read the original post:

Edit : The benchmark does not touch the most weakness in Mika. Currently Mika reset all rendered item in (in a list) unconditionally when the item need updating. So if the rendered item involves many data, the performance will be worse, but it only limits to items that need to be updated.

1 Like