Developer experience has been my consistent focus when #Ratatui #Ruby and its #MVU runtime #Tea (The #Elm Architecture).

For example, look at this great #Router #DSL! For most cases, this will save you a ton of code and headaches. But when you need full control, you've got it.

Try it now: https://git.sr.ht/~kerrick/ratatui_ruby-tea

Learn more: https://sr.ht/~kerrick/ratatui_ruby/

#DeveloperExperience #DX #TUI #TerminalUserInterface #Software #Functional #Programming #SoftwareEngineering

Today there's no game news but more general F# content from my side
Some time ago I wrote an MVU package for Avalonia, it was not finished but I decided to give it a try again
This time the project leans more on Avalonia itself rather than go full MVU, this offers an MVU API but, with more Avalonia native mechanisms like observable bindings
Controls are created once and then just binds are updated which is quite performant!
https://github.com/AngelMunoz/Mvuish.Avalonia

#dotnet #fsharp #avalonia #mvu

GitHub - AngelMunoz/MVUish.Avalonia

Contribute to AngelMunoz/MVUish.Avalonia development by creating an account on GitHub.

GitHub

what if we could implement the MVU (Model-View-Update) pattern in GTK 4 in such a declarative way?

last night I had this idea and quickly put together a sketch of how it might look in code. I should clarify that I haven't written a single line; it's 100% a thought experiment for now

the thing would be to use JS/Rust/Vala for all state logic (Model/Update) and let Blueprint/XML define the UI (View) in a super clean way, connecting everything with data binding and messages

here are the two snippets I came up with for this concept, which I called Styx (provisional name™)

what do you think? do you see potential in an approach like this?

#GTK #GNOME #MVU

MauiReactor: An MVU Approach for .NET MAUI - .NET Blog

A look at how the Model-View-Update pattern can complement the .NET MAUI ecosystem

.NET Blog
MauiReactor: An MVU Approach for .NET MAUI - .NET Blog

A look at how the Model-View-Update pattern can complement the .NET MAUI ecosystem

.NET Blog
MauiReactor: An MVU Approach for .NET MAUI - .NET Blog

A look at how the Model-View-Update pattern can complement the .NET MAUI ecosystem

.NET Blog
Using C# Markup to Create Graphical Interfaces in .NET MAUI

C# Markup can simplify the creation of interfaces using C# through the chaining of extension methods.

Telerik Blogs

In his online book, Iced (the GUI library) explains that the Model-View-Update design pattern fits well with Rust because it is suited to purely functional languages. And libcosmic (based on Iced) in its own book goes even further: MVU adheres to Rust's “aliasing XOR mutability” rule².

BTW I realize that MVU is not limited to simple apps if associated with an async mechanism.

¹ https://book.iced.rs/architecture.html (see "The Elm Architecture")
² https://pop-os.github.io/libcosmic-book/mvu.html

#RustLang #Iced #ibcosmic #MVU

Architecture - iced — A Cross-Platform GUI Library for Rust

Bridging the Gap Between MVU and MVVM

Pixel-Perfect Multi-Platform Applications with C# and WinUI for Windows, WebAssembly, iOS, macOS, Android and Linux

Uno Platform