FSharp.Data.Adaptive
Avalonia.FuncUI
FSharp.Data.Adaptive | Avalonia.FuncUI | |
---|---|---|
1 | 22 | |
241 | 855 | |
0.8% | 2.2% | |
5.6 | 8.3 | |
about 2 months ago | 7 days ago | |
F# | F# | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
FSharp.Data.Adaptive
-
F# and WebAssembly
This is not the case though! Fun.Blazor takes advantage of the FSharp.Data.Adaptive library which works more-less like an excel spreadsheet's cells, each value is fixed unless it's being computed by another this allows performant updates on-demand, and with the help of adaptiview() {} it can leverage those same efficient updates to allow performant views in F#, in essence adaptiviews are hook-like abstractions.
Avalonia.FuncUI
- Use Rails
- Uno: Create Beautiful Cross Platform .NET Apps Faster
- AvaloniaUI: Create Multi-Platform Apps with .NET
- Course using F#: Write your own tiny programming system(s)
-
ASP.NET Core Blazor
For those interested in .NET languages with alternative compilation targets, Elmish (https://elmish.github.io/elmish/) is pretty unique.
We use F# on the front end (instead of TS), and thanks to the Fable compiler (which transpiles F# to JS, Python, Dart, PHP and Rust), most of the benefits of an Elm-style model in the UI can be ported to all sorts of different outputs languages. The rust target is in beta, but its promising because the WASM bundle size stands to be dramatically lower.
While the default is reactivity library for Elmish is React, you can swap in Avalonia/FuncUI (https://github.com/fsprojects/Avalonia.FuncUI) pretty easily as well.
-
GUI development with Rust and GTK 4
The code to declare/build the widgets is quite nice. Modifying widgets by hand on certain signals or manually re-wiring all the signals seems a bit outdated to me.
Wonder if something like FuncUI [1] could be built on top of it.
[1] https://github.com/fsprojects/Avalonia.FuncUI
-
Desktop UI with F# web frameworks?
OTOH, if desktop really is the primary focus, and if you can drop the idea of reusable UI code, then Avalonia is a great choice for F# as you can use a Avalonia.FuncUI and/or Elmish.Avalonia.
- Functional cross platform UI in F#
-
Why does it seem like Microsoft is actively ignoring AvaloniaUI?
And one more MVU for you https://github.com/fsprojects/Avalonia.FuncUI
- Is Maui dead on arrival?
What are some alternatives?
Bolero - Bolero brings Blazor to F# developers with an easy to use Model-View-Update architecture, HTML combinators, hot reloaded templates, type-safe endpoints, advanced routing and remoting capabilities, and more.
Fabulous - Declarative UI framework for cross-platform mobile & desktop apps, using MVU and F# functional programming
elmish - Elm-like abstractions for F# apps
MySqlConnector - MySQL Connector for .NET
Fun.Blazor.Sample - A Fun.Blazor Starter github template
Avalonia - Develop Desktop, Embedded, Mobile and WebAssembly apps with C# and XAML. The most popular .NET UI client technology
React - The library for web and native user interfaces.
openiddict-core - Flexible and versatile OAuth 2.0/OpenID Connect stack for .NET
Vue.js - This is the repo for Vue 2. For Vue 3, go to https://github.com/vuejs/core
Elmish.WPF - Static WPF views for elmish programs
Svelte - Cybernetically enhanced web apps
Sutil - Lightweight front-end framework for F# / Fable. No dependencies.