threepenny-gui: GUI framework that uses the web browser as a display.

[ bsd3, gui, library, web ] [ Propose Tags ]

Threepenny-GUI is a GUI framework that uses the web browser as a display.

It's cheap and easy to install because everyone has a web browser installed.

Internally, the library implements a small web server that serves a HTML/JavaScript page with the GUI elements. You can freely manipulate the HTML DOM and handle browser events from your Haskell code.

Stability forecast: This is an experimental release! Send us your feedback! Significant API changes are likely in future versions.

NOTE: This library contains examples, but they are not built by default. To build and install the example, use the buildExamples flag like this

cabal install threepenny-gui -fbuildExamples
Versions [faq],,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Change log
Dependencies attoparsec-enumerator (==0.3.*), base (==4.*), bytestring (==0.10.*), containers (>=0.4.2 && <0.6), data-default (==0.5.*), deepseq (==1.3.*), filepath (==1.3.*), hashable (>=1.1.0 && <1.3), json (>=0.4.4 && <0.6), MonadCatchIO-transformers (==0.3.*), network (>=2.3.0 && <2.5), parsec, safe (==0.3.*), snap-core (==0.9.*), snap-server (==0.9.*), stm (>=2.3 && <2.5), template-haskell (>=2.7.0 && <2.9), text (==0.11.*), threepenny-gui, time (==1.4.*), transformers (==0.3.*), unordered-containers (==0.2.*), utf8-string (==0.3.*), vault (==0.3.*), websockets (==0.8.*), websockets-snap (==0.8.*) [details]
License BSD-3-Clause
Author Chris Done, Heinrich Apfelmus
Maintainer Heinrich Apfelmus <apfelmus at quantentunnel dot de>
Revised Revision 1 made by HerbertValerioRiedel at 2015-09-18T12:41:27Z
Category Web, GUI
Home page
Bug tracker
Source repo head: git clone git://
Uploaded by HeinrichApfelmus at 2013-11-21T13:50:33Z
Distributions LTSHaskell:, NixOS:, Stackage:
Executables threepenny-examples-use-words, threepenny-examples-missing-dollars, threepenny-examples-drummachine, threepenny-examples-dragndropexample, threepenny-examples-currencyconverter, threepenny-examples-crud, threepenny-examples-chat, threepenny-examples-buttons, threepenny-examples-bartab
Downloads 25093 total (140 in the last 30 days)
Rating 2.25 (votes: 2) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Successful builds reported [all 1 reports]





Build example executables.


The library uses some techniques that are highly non-deterministic, for example garbage collection and concurrency. Bugs in these subsystems are harder to find. Activating this flag will expose more of them.


Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees