Skip to content
This repository was archived by the owner on Oct 11, 2025. It is now read-only.

haskell-wasm/ghc-wasm-miso-examples

Repository files navigation

Notice

Thanks to miso community's active integration with the GHC wasm backend, the upstream miso library already builds fine with wasm, and the various official examples are based on wasm!

If you're looking into an example project of using miso with the GHC wasm backend, please check the official miso examples instead. This repo is now (thankfully) obsolete and therefore archived.

The original README contents are kept below for historical reference:

ghc-wasm-miso-examples

Chat on Matrix

The GHC wasm backend supports the JSFFI feature, allowing Haskell wasm apps to interop with JavaScript seamlessly in the browser. This repo contains a few examples to demonstrate this ability, all of which based on the miso frontend framework as well as an experimental jsaddle-wasm library under the hood.

See also: ghc-wasm-reflex-examples

Live demo

Building

With nix

Within the nix develop shell:

cd frontend
wasm32-wasi-cabal update
./build.sh

If you pass additional arguments to build.sh, they will be redirected to wasm-opt, otherwise a dev build without wasm-opt will be performed.

The artifacts will be available in frontend/dist.

Without nix

You can set up the toolchain by either:

  • Using ghc-wasm-meta directly to set up ghc head or ghc 9.10
  • Using ghcup to set up ghc 9.10 (9.10.1.20241021 or later, with TemplateHaskell support) and cabal >=3.15.

Also install Sass.

Then:

source ~/.ghc-wasm/env
cd frontend
./build.sh

Acknowledgements

The examples are vendored and modified from the following projects:

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published