A Haskell client for the Myxine GUI server.
Myxine is a language-agnostic local server that lets you build interactive applications in the browser using a RESTful API. This package defines high-level typed Haskell bindings for using Myxine to quickly prototype surprisingly high-performance GUIs.
Myxine itself runs as a local server, separately from these bindings. It is built in Rust, and can be installed using the standard Rust build tool cargo
:
$ cargo install myxine
This Haskell package does not manage the myxine
server process; it assumes that it is already running in the background (either started by an end-user, or managed by your own Haskell application).
Required extensions: This library relies on the OverloadedRecordFields
language extension, since a variety of browser event interfaces share field names/types. Without enabling it, you'll see many bewildering errors about ambiguous names. You may also find useful for concision the extensions NamedFieldPuns
and RecordWildCards
.