Elm-like abstractions for F# apps
Switch branches/tags
Clone or download


Elmish: Elm-like abstractions for F# applications targeting Fable.

Gitter Windows Build status Mono Build Status NuGet version

Elmish implements core abstractions that can be used to build applications following the “model view update” style of architecture, as made famous by Elm. The library however does not model any "view" and is intended for use in conjuction with a DOM/renderer, like React/ReactNative or VirtualDOM. Those familiar with Redux may find Elmish a more natural fit when targeting React or ReactNative as it allows one to stay completely in idiomatic F#.

Elmish abstractions have been carefully designed to resemble Elm's "look and feel" and anyone familiar with post-Signal Elm terminology will find themselves right at home.

See the docs site for more information.

Using Elmish

v2.0 and above releases of Fable.Elmish target Fable 2.x and use dotnet SDK and can be installed with paket:

paket add nuget Fable.Elmish -i

If targeting CLR, please use Elmish package: paket add nuget Elmish -i

For v1.x release information please see the v1.x branch

Building Elmish

As part of Fable 2.x ecosystem, elmish depends on dotnet SDK. Unless the SDK is installed and is in the path the build will download and install it locally:

Just run fake:

./build.sh or build


Please have a look at the guidelines.