gi-gtk-declarative
MetalNanoVG
gi-gtk-declarative | MetalNanoVG | |
---|---|---|
5 | 1 | |
283 | 209 | |
- | 0.5% | |
2.7 | 0.0 | |
4 months ago | 5 months ago | |
Haskell | C | |
Mozilla Public License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
gi-gtk-declarative
-
Is Haskell capable of this?
Have a look at https://reflex-frp.org/, or https://owickstrom.github.io/gi-gtk-declarative/, they are an interesting and different way of working with UI in a non imperative way.
-
[ANN] Monomer, a GUI library for Haskell
What are the main differences to and advantages over gi-gtk-declarative?
-
Apply git patch to package listed in extra-deps in stack build
Yeah, if you are interested enough to check out my PR at gi-gtk-declarative (https://github.com/owickstrom/gi-gtk-declarative/pull/90), then you will see how much I bent over backwards to avoid laying the foundations for an ormolu/fourmolu-like situation. Although, given that the project appears to be the only maintained declarative gui library in Haskell, I think the single-point-of-failure needs to be addressed.
MetalNanoVG
-
[ANN] Monomer, a GUI library for Haskell
It's not ideal, but the feature set used by Monomer has been stable for quite a while. It's also a kind of small library, which makes porting it to other backends feasible (a version for Metal, which I have not tested, can be found here)
What are some alternatives?
monomer - An easy to use, cross platform, GUI library for writing Haskell applications.
nanovg - Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations.
Skia - Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.
reflex - Interactive programs without callbacks or side-effects. Functional Reactive Programming (FRP) uses composable events and time-varying values to describe interactive systems as pure functions. Just like other pure functional code, functional reactive code is easier to get right on the first try, maintain, and reuse.
static-haskell-nix - easily build most Haskell programs into fully static Linux executables
imgui - Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies
nanovg_vulkan - Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations. (added Vulkan support)
egui - egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native