From cd6e103c2c201459b0c649946da7a31e9da8595b Mon Sep 17 00:00:00 2001 From: Edgar Gonzalez Date: Tue, 8 Oct 2024 16:14:03 +0100 Subject: [PATCH 1/4] Working with Akkling session --- src/content/sessions/2024-10-18.md | 67 ++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 src/content/sessions/2024-10-18.md diff --git a/src/content/sessions/2024-10-18.md b/src/content/sessions/2024-10-18.md new file mode 100644 index 0000000..89a61d5 --- /dev/null +++ b/src/content/sessions/2024-10-18.md @@ -0,0 +1,67 @@ +--- +title: "Working with Akkling (F# API for Akka.NET)" +preview: "F# API for Akka.NET" +isDraft: true +date: 2024-10-18T15:00:00.000Z +slug: "2024/10/18" +champion: "Vagif Abilov" +zoomLink: "https://us06web.zoom.us/j/83103283643?pwd=WWl5AEbthJaPw02ao4R0bq0zdkwTOm.1" +zoomPasscode: "aka" +issueLink: "" +company: "Miles AS" +youtubeId: "" +--- + +# Topic + +Working with Akkling (F# API for Akka.NET) + +In this session we will explore Akkling, an F# API for Akka.NET. Akka.NET is a port of the Akka actor model framework from the JVM to .NET. Akkling is a library that provides a more idiomatic F# API for Akka.NET. + +Vagif will introduce Akka.NET and Akkling, and demonstrate how to use Akkling to build a simple actor system in F#. + +### Workshop plan + +- Scaffolding a project with SAFE template +- Serving the content of a file from a Saturn Web service +- Retrieving file content using HTTP requests in a Fable app +- Implementing playback of individual lines of a file +- Replacing direct calls to Fable.React with Feliz +- Adding Bulma CSS and FontAwesome to a Fable app (using CSS F# type provider) +- From file lines player to events player (parsing text lines with Thoth.Json decoder) +- Implementing event subscriptions using Web sockets (and Elmish.Bridge) +- Adding live tiles (presentation of state changes) +- Using Redux DevTools with Fable applications + +More details can be found at [Real-time event visualization using F# and Fable](https://github.com/object/FableWorkshop.2024/blob/main/FableWorkshop.md#workshop-plan). + +### Prerequisites + +- Visual Studio Code (running on Windows, Linux or macOS) +- Ionide F# plugin (Ionide-fsharp) by Ionide +- Basic understanding of F# +- .NET Core version 8.0 or later +- npm JavaScript package manager + +More details can be found at [Prerequisites](https://github.com/object/FableWorkshop.2024/blob/main/FableWorkshop.md#prerequisites) + +### Recommended tools and resources + +1. The [Elmish Book](https://zaid-ajaj.github.io/the-elmish-book) +2. An Introduction to [Elm](https://guide.elm-lang.org/), it helps to understand of Elmish and MVU architecture +3. REST Client [plugin](https://marketplace.visualstudio.com/items?itemName=humao.rest-client) by Huachao Mao to be able to execute HTTP request right from Visual Studio Code +4. Chrome browser +5. Redux DevTools Chrome extension (remember to enable it) + +More details can be found at [Recommended tools and resources](https://github.com/object/FableWorkshop.2024/blob/main/FableWorkshop.md#recommended-tools-and-resources) + +## Champions + +- [Vagif Abilov](https://github.com/object) + +### Resources + +- [Real-time event visualization using F# and Fable](https://github.com/object/FableWorkshop.2024/blob/main/FableWorkshop.md#real-time-event-visualization-using-f-and-fable) +- [Prerequisites](https://github.com/object/FableWorkshop.2024/blob/main/FableWorkshop.md#prerequisites) +- [Recommended tools and resources](https://github.com/object/FableWorkshop.2024/blob/main/FableWorkshop.md#recommended-tools-and-resources) +- [Elmish Book](https://zaid-ajaj.github.io/the-elmish-book) From 0b8d259103acf638f9d276e729f97320aba48493 Mon Sep 17 00:00:00 2001 From: Edgar Gonzalez Date: Tue, 8 Oct 2024 22:04:57 +0100 Subject: [PATCH 2/4] Update description --- src/content/sessions/2024-10-18.md | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/src/content/sessions/2024-10-18.md b/src/content/sessions/2024-10-18.md index 89a61d5..f015c69 100644 --- a/src/content/sessions/2024-10-18.md +++ b/src/content/sessions/2024-10-18.md @@ -1,12 +1,12 @@ --- -title: "Working with Akkling (F# API for Akka.NET)" -preview: "F# API for Akka.NET" +title: "Real-time event visualization using F# and Fable" +preview: "Real-time event visualization" isDraft: true -date: 2024-10-18T15:00:00.000Z +date: 2024-10-18T14:00:00.000Z slug: "2024/10/18" champion: "Vagif Abilov" zoomLink: "https://us06web.zoom.us/j/83103283643?pwd=WWl5AEbthJaPw02ao4R0bq0zdkwTOm.1" -zoomPasscode: "aka" +zoomPasscode: "real" issueLink: "" company: "Miles AS" youtubeId: "" @@ -14,11 +14,9 @@ youtubeId: "" # Topic -Working with Akkling (F# API for Akka.NET) +Real-time event visualization using F# and Fable -In this session we will explore Akkling, an F# API for Akka.NET. Akka.NET is a port of the Akka actor model framework from the JVM to .NET. Akkling is a library that provides a more idiomatic F# API for Akka.NET. - -Vagif will introduce Akka.NET and Akkling, and demonstrate how to use Akkling to build a simple actor system in F#. +In this session we explore how to build a real-time event visualization system using F# and Fable. ### Workshop plan From 72f28245eff6b1683a09e0c6c564679c6cde33e7 Mon Sep 17 00:00:00 2001 From: Edgar Gonzalez Date: Tue, 8 Oct 2024 22:06:48 +0100 Subject: [PATCH 3/4] format --- src/content/sessions/2024-10-18.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/content/sessions/2024-10-18.md b/src/content/sessions/2024-10-18.md index f015c69..34ba0c0 100644 --- a/src/content/sessions/2024-10-18.md +++ b/src/content/sessions/2024-10-18.md @@ -16,7 +16,7 @@ youtubeId: "" Real-time event visualization using F# and Fable -In this session we explore how to build a real-time event visualization system using F# and Fable. +In this session we explore how to build a real-time event visualization system using F# and Fable. ### Workshop plan From dcb5f42ad66b3a837c4d9677cea9a1fb4db9c5a3 Mon Sep 17 00:00:00 2001 From: Edgar Gonzalez Date: Wed, 9 Oct 2024 09:12:16 +0100 Subject: [PATCH 4/4] Update zoom link --- src/content/sessions/2024-10-18.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/content/sessions/2024-10-18.md b/src/content/sessions/2024-10-18.md index 34ba0c0..c06eaf3 100644 --- a/src/content/sessions/2024-10-18.md +++ b/src/content/sessions/2024-10-18.md @@ -5,7 +5,7 @@ isDraft: true date: 2024-10-18T14:00:00.000Z slug: "2024/10/18" champion: "Vagif Abilov" -zoomLink: "https://us06web.zoom.us/j/83103283643?pwd=WWl5AEbthJaPw02ao4R0bq0zdkwTOm.1" +zoomLink: "https://us06web.zoom.us/j/83103283643?pwd=kIYnfLSspPkQMrmcMXMVluZ96v7ucz.1" zoomPasscode: "real" issueLink: "" company: "Miles AS"