An easy to use, cross platform, GUI library for writing Haskell applications.
Go to file
2021-07-16 00:01:10 -03:00
app Make vertical font spacing configurable 2021-07-16 00:01:10 -03:00
assets Update tasks 2021-06-27 22:04:25 -03:00
cbits Refactor/rename render thread functions 2021-07-06 01:52:30 -03:00
docs Do not set focus to empty path 2021-06-26 20:48:34 -03:00
examples Add threaded flags to examples. Update tasks 2021-07-06 20:39:08 -03:00
src Make vertical font spacing configurable 2021-07-16 00:01:10 -03:00
test/unit Make vertical font spacing configurable 2021-07-16 00:01:10 -03:00
.ghci Simplify Renderers image interface. Replace existsImage with getImage 2020-12-16 23:53:55 -03:00
.ghcid Fix continuous window resizing 2021-07-05 16:47:55 -03:00
.gitignore Include monomer.cabal into repository (previously ignored with .gitignore) 2021-06-13 22:25:06 -03:00
.headroom.yaml Add initial batch of Haddock documentation 2021-05-28 20:08:01 -03:00
.hlint.yaml Make zstack handle mouse according to used regions. Make stack adjust its size to its content. Simplify related settings 2020-12-28 23:00:25 -03:00
ChangeLog.md Initial commit 2019-09-23 11:46:21 -03:00
Info.plist Add whell support to dial and slider 2021-05-08 14:50:05 -03:00
LICENSE Minor adjustment to license 2020-07-10 22:08:19 -03:00
monomer.cabal Add threaded flags to examples. Update tasks 2021-07-06 20:39:08 -03:00
package.yaml Add threaded flags to examples. Update tasks 2021-07-06 20:39:08 -03:00
profile.sh Initial commit 2019-09-23 11:46:21 -03:00
README.md Add tests for labeledCheckbox and labeledRadio 2021-06-26 23:21:08 -03:00
Setup.hs Initial commit 2019-09-23 11:46:21 -03:00
stack.yaml Revert glyph height change to nanovg 2021-07-04 10:45:06 -03:00
stack.yaml.lock Revert glyph height change to nanovg 2021-07-04 10:45:06 -03:00
tasks.md Make vertical font spacing configurable 2021-07-16 00:01:10 -03:00
test-cases.md Add scroll resize test. Add pending value drag tests for integralField. Complete original testing plan 2020-12-26 17:03:03 -03:00
watch-tests.sh Improve inputField, add new tests 2020-11-15 23:58:26 -03:00

Monomer

An easy to use, Elm/Flutter inspired, GUI library for writing native applications in Haskell.

Objectives

  • It should be easy to use.
  • It should be possible to extend it with custom widgets.
  • It should work on Windows, Linux and macOS.
  • It should have good documentation.
  • It should have good examples.

Ideally, in the future, this project will

  • Be able to run in mobile.
  • Support Vulkan/Metal.

Why would you want to use this library

  • You want to write your application in Haskell.
  • You want to write a native, not Electron based, application.
  • You prefer not to use Gtk.

These are not objectives for this project

  • Have a native look and feel.
  • Be a research project pushing the boundaries on how GUIs are created.

Current limitations

  • Multi-platform features depend on what SDL already provides.
    • Copy/paste is only supported for text, not images.
  • Text input capabilities are basic, supporting only left to right editing at the moment.