WebSharper.UI.Next is a UI library featuring a dataflow layer for expressing time-varying values. It integrates with DOM and makes it simple to construct animated UI in the browser.
Available for experimentation on NuGet.
This library will also likely be released as part of WebSharper 3.0, to become the recommended way to construct UI in WebSharper. We also have plans for releasing the library as standalone JavaScript with TypeScript bindings.
These articles cover various design choices and aspects of the system:
- Dataflow - explains the dataflow system
- Leaks - explains how most memory leaks are avoided
- Sharing - helps understanding sharing and identity
- Monoids - explains use of monoids in the API
- EventStreams - provides a rationale for omitting event stream combinators
- FRP - discusses connections to Functional Reactive Programming
- Components - gives simple component design guidelines
- CML - discusses integrating Concurrent ML as a future direction
- Video: Tackle UI with Reactive DOM in F# and WebSharper - in this Community for FSharp event, Anton Tayanovskyy presents the basics of the library and the motivations for the dataflow design
This design is a result of vibrant discussion and experimentation. The list of people who have contributed time, ideas and code includes:
- Simon Fowler
- Anton Tayanovskyy
- Andras Janko
- Loic Denuziere
- Adam Granicz
- Vesa Karvonen