Pretty cool stuff! I use Phoenix and Elixir at work and am actually working on a project presently that is leveraging it as well as Nim. Having said that, I wanted to point a few things out:
1. You mentioned that LiveView doesn't have stateful components, but it does indeed: <https://hexdocs.pm/phoenix_live_view/Phoenix.LiveComponent.html> 2. Inputs function the same way as you're describing in your framework There are a few things that Phoenix LiveView does that might be worth exploring on your end (maybe you already are): There are a few reasons though I'd pick Phoenix LiveView over Mono though... * Websockets are a must for me. I use them to provide signaling for my webrtc connections * A proper database is a must - Phoenix ships with an ORM named Ecto which provides DB migrations as well, and defaults to PostgreSQL * User sessions and authentication are also both necessary * The Erlang (BEAM) VM which is going to offer more scalability and the potential to be distributed than a single threaded http server written in Nim I think Mono is a great step towards something like Phoenix LiveView but I believe it also has a way to go before it could be considered for any serious production use. Very cool project though! I hope you continue to iterate on it! One final note - have you considered a name other than Mono? There's already a .NET project named Mono which is quite well known I believe.