For Cutouts, my new interactive graphics project, I used Mithril.js to simplify the task of rendering in the browser the interface of what essentially is a vector graphics editor.
I always try to minimize the use of dependencies in my projects, and Mithril offers a lot given how simple it is. A virtual DOM that updates the page in the most efficient manner every time the user interacts with the app’s HTML elements. It pretty much does the same thing that frameworks such as React or Vue do, with incredible simplicity.
It’s not necessary to transpile the code or use a dependency manager. Mithril.js can be used with a CDN. It’s a bit cumbersome to use Javascript instead of JSX to define the components, but its ease of use makes it worth it. The API is compact and easy to understand, so the learning curve is very smooth. Mithril does 90% of what React does with 10% of the complexity.