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

[ 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.

Versions [faq],,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Dependencies base (>1 && <1), bytestring, containers, data-default, filepath, json (>=0.4.4 && <0.6), mtl, network, parsec, safe, snap-core, snap-server, text, threepenny-gui, time, transformers, utf8-string [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 Mon Dec 19 06:56:50 UTC 2016
Category Web, GUI
Home page
Source repo head: git clone git://
Uploaded by HeinrichApfelmus at Sun Jul 21 12:21:04 UTC 2013
Distributions LTSHaskell:, NixOS:, Stackage:
Executables threepenny-examples-chat, threepenny-examples-use-words, threepenny-examples-missing-dollars, threepenny-examples-dragndropexample, threepenny-examples-buttons, threepenny-examples-bartab
Downloads 14640 total (518 in the last 30 days)
Rating 2.25 (votes: 2) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs not available [build log]
All reported builds failed as of 2016-12-19 [all 7 reports]


  • Control
    • Control.Event
  • Graphics
    • UI
      • Graphics.UI.Threepenny
        • Graphics.UI.Threepenny.Attributes
        • Graphics.UI.Threepenny.Core
        • Graphics.UI.Threepenny.DragNDrop
        • Graphics.UI.Threepenny.Elements
        • Graphics.UI.Threepenny.Events
        • Graphics.UI.Threepenny.JQuery



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