The threepenny-gui package

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

Threepenny-GUI is a small 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! Basic functionality should work. 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



Dependencies base (==4.*), bytestring, containers, data-default, filepath, json (>=0.4.4 && <0.6), mtl, network (<2.6), parsec, safe, snap-core, snap-server, stm, text, threepenny-gui, time, transformers, utf8-string [details]
License BSD3
Author Chris Done, Heinrich Apfelmus
Maintainer Heinrich Apfelmus <apfelmus at quantentunnel dot de>
Category Web, GUI
Home page
Source repo head: git clone git://
Uploaded Fri Aug 2 09:17:40 UTC 2013 by HeinrichApfelmus
Updated Sun Dec 18 23:10:32 UTC 2016 by HerbertValerioRiedel to revision 1   [What is this?]
Distributions LTSHaskell:, NixOS:, Stackage:, openSUSE:
Executables threepenny-examples-chat, threepenny-examples-use-words, threepenny-examples-missing-dollars, threepenny-examples-drummachine, threepenny-examples-dragndropexample, threepenny-examples-buttons, threepenny-examples-bartab
Downloads 11278 total (219 in the last 30 days)
Rating 2.25 (votes: 2) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI





Build example executables.


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