Skip to content

Let's try Bolero, an F# web framework built on Blazor and Elmish

Photo of Aaron Stannard
Hosted By
Aaron S.
Let's try Bolero, an F# web framework built on Blazor and Elmish

Details

This is a great opportunity to create community, relationships, and learn about new technology!

SCHEDULE

5:30pm - Arrival/Registration + Food/Drinks + Networking

6:00pm - Speaker/Presentation

7:15pm - Food/Drinks + Networking

8:00pm - End

FOOD/DRINKS

Food and drinks will be provided! Please contact us if you have any dietary restrictions/food allergies.

DIRECTIONS AND PARKING INSTRUCTIONS

Meeting will be held in the offices of SmartDraw Software, 1780 Hughes Landing Blvd #1100 on the 11th floor.

Enter through the main doors of the building and take the elevator to the 11th floor; the door to SmartDraw's suite is in the elevator lobby on the 11th floor.

If you arrive at 1780 Hughes Landing after 6pm a member of the SmartDraw team will help you enter the building the travel up to the 11th floor.

Parking:

Park in the garage directly opposite. You'll need to take a ticket to enter but there is no fee to leave - parking is free.

Speaker & Talk

Christopher Bremer

Chris is the software simulation manager at NOV ReedHycalog in Conroe, TX.

Chris will be discussing the following:

### Let's try Bolero, an F# web framework built on Blazor and Elmish

When my team decided it was time to migrate one of our web apps away from AngularJS [1], Blazor seemed like a good fit. Javascript isn't really one of our core competencies, but we needed a more robust client than, say, HTMX. One of the devs suggested we look into Bolero. We prefer F# for our technical applications, and we were already familiar with some of the design principles espoused by the authors. Four months later, we are in production and quite pleased with the results!

Bolero is a library that brings functional Model-View-Update[3] to the Blazor ecosystem. In short, the MVU architecture attempts to decrease the complexity of modern asynchronous web apps. The application state (the "model") is stored immutably. Updates to the model are queued in a global message buffer, and all data flows in a single direction.

In this talk, I'll walk through a sample Bolero application4. I'll cover ways to avoid standard MVU pitfalls and show how to implement some nice UX features (debounce, polling, time travel(?!)). I'll show you how the discipline of MVU combined with the flexibility of F# (and the .NET ecosystem) simplifies UI development for a non front-end dev like me!

[1]: That's AngularJS, the original[2], not Angular 16.9

[2]: yes, in 2023.

[3]: AKA the elm architecture. There are other MVU architectures (Maui, SwiftUI, Redux) that take slightly different approaches.

Photo of North Houston .Net Users Group group
North Houston .Net Users Group
See more events
1780 Hughes Landing Blvd #1100
1780 Hughes Landing Blvd #1100 · The Woodlands, TX