Options for a frontend of demo for a toy app

This page summarizes the projects mentioned and recommended in the original post on reddit.com/r/haskell

Our great sponsors
  • Scout APM - Less time debugging, more time building
  • SonarLint - Clean code begins in your IDE with SonarLint
  • SaaSHub - Software Alternatives and Reviews
  • htmx

    </> htmx - high power tools for HTML

    Another alternative is to use JavaScript or PureScript (Haskell-like language that compiles to JS) to build a separate frontend that communicates JSON or HTML (https://htmx.org) to/from your backend. Miso was already recommended to you which is a great project, but working with GHCJS is a nightmare from my personal experience.

  • binaryen

    A Haskell to WebAssembly compiler

    ghcjs is the way to go for you, and soon it might be asterius. i do not know how hard it is to set ghcjs up without a framework. but frameworks like obelisk (based on reflex-dom), shpadoinkle, and miso automate that for. i personally like obelisk for its functional reactive programming but it can get awkward and get in your way. so if gui programming is just a means to the end of this one small application and you are not really interested in it nor functional reactive programming, shpadoinkle or miso might suit you better. miso implements the elm architecture (also "TEA", "functional model view controller") and shpadoinkle implements something directly equivalent to the elm architecture. but shpadoinkle achieves more composable widgets by minimalizing the elm architecture. so i recommend shpadoinkle for its better concept although miso is more mature.

  • Scout APM

    Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.

  • miso

    :ramen: A tasty Haskell front-end framework

    ghcjs is the way to go for you, and soon it might be asterius. i do not know how hard it is to set ghcjs up without a framework. but frameworks like obelisk (based on reflex-dom), shpadoinkle, and miso automate that for. i personally like obelisk for its functional reactive programming but it can get awkward and get in your way. so if gui programming is just a means to the end of this one small application and you are not really interested in it nor functional reactive programming, shpadoinkle or miso might suit you better. miso implements the elm architecture (also "TEA", "functional model view controller") and shpadoinkle implements something directly equivalent to the elm architecture. but shpadoinkle achieves more composable widgets by minimalizing the elm architecture. so i recommend shpadoinkle for its better concept although miso is more mature.

  • scotty

    Haskell web framework inspired by Ruby's Sinatra, using WAI and Warp (Official Repository)

    Not that I'm much of an expert, but if you're talking about a very barebones static single-page-app, then you could very easily get by just using blaze-html to put your elements on the page, and then scotty is a basic web framework you could use to serve up your app.

  • imgui-ws

    Dear ImGui over WebSockets

    We have Haskell bindings for dear-imgui - https://hackage.haskell.org/package/dear-imgui. dear-imgui is basically the same thing as egui. I mention this because dear-imgui also has an extension that streams an application over websockets - https://github.com/ggerganov/imgui-ws. If we had Haskell bindings to this, then you'd be able to do exactly what is on the egui.rs website.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts