Skip to content

Latest commit

 

History

History
65 lines (34 loc) · 2.87 KB

README-why.md

File metadata and controls

65 lines (34 loc) · 2.87 KB

📱 Versatility of Web Technology for Cross-Platform App Development

image

We want to use F# for its cross-platform app development

Flutter from Google is the most successful framework for cross-platform app development.

image

The problem is for some unknown reason, it uses Dart programming language.


.NET MAUI from Microsoft is another major cross-platform framework.

image

Surprisingly, Microsoft does not support F#.net much in MAUI.

[Enhancement] F# Support from Day 1

Therefore, for F# developers, these major frameworks are unusable.

Hybrid app on Web technology

There is another option: Hybrid app.

Capacitor

image

Capacitor is a Hybrid app framework that is based on the Web technology.

The vast and versatile web development ecosystem provides us with the variety of options such as MaterialUI etc..

WASM?

WebAssembly (WASM) is certainly a future of the web.

Bolero: F# in WebAssembly

The challenge with WASM is that it's still maturing. The most critical issue is the limited number of options available due to the small ecosystem, especially for F#.

Versatility of Web Technology for Cross-Platform App Development

The vast ecosystem of web technology empowers us to build almost anything.

The web language is JavaScript, and thanks to Fable, we can now compile F# code that runs seamlessly in the browser.

image

F#
Fable Compiler running on .NET (dotnet fable)
JavaScript running in the browser

Why VanJS

image

VanJS: About - the Story behind VanJS

But I think, in a nutshell, the best way to describe it is: VanJS is the scripting language for UI, just like bash is the scripting language for terminal.

Being the scripting language for UI , is the fundamental principle that guides the design of VanJS . It's based on JavaScript so that it can work in as many environments as possibles, not only for websites, but also for webviews which most major OSes support.