HumbleUI
membrane
Our great sponsors
HumbleUI | membrane | |
---|---|---|
5 | 7 | |
1,111 | 548 | |
4.1% | - | |
8.0 | 7.8 | |
29 days ago | 19 days ago | |
Clojure | Clojure | |
Apache License 2.0 | Apache License 2.0 |
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.
HumbleUI
-
Is Clojure the only language you need?
So you can see, there are really a lot of choices but none of them dominates, which means they all have flaws. You can read a good article from Niki Tonsky where Clojure UI problems are discussed. Also to address the problems Niki Tonsky started the development of a new UI for Clojure, called Humble UI. So now we have one more option :)
-
So you're using a weird language
If you don't mind being stuck on Windows you could use Visual C# or Visual Basic, they have edit-and-continue too. https://learn.microsoft.com/en-us/visualstudio/debugger/edit... I've worked with the SuperTux C# level editor in the past. C# was actually pretty nice for GUI stuff.
There doesn't seem to be a good GUI framework for Clojure. There was Seesaw but it hasn't been updated since 2019. There is a guy developing a new framework https://github.com/HumbleUI/HumbleUI/ but it's WIP. I guess you could sidestep this by making it a webapp and using figwheel.
-
The shape of data
UI toolkits: https://github.com/HumbleUI/HumbleUI and https://github.com/phronmophobic/membrane
-
Ask HN: Does Java need a modern Java UI toolkit for desktop/web?
Nikita Prokopov is developing Humble UI which is worth keeping a close eye on. (Yes, it's Clojure, but Java interop is bound to emerge if it builds up a critical mass and catches on.)
-
The Decline and Fall of Java on the Desktop Part 1 (1999-2005)
I've made a few desktop apps in https://github.com/cljfx/cljfx (e.g., https://www.chronos-desk.com/), and cljfx (JavaFX + Clojure) is amazing and makes for rapid development, not to mention fun. I'm keeping an eye on https://github.com/HumbleUI/HumbleUI, which promises to be a step up.
membrane
- phronmophobic/membrane: A Simple UI Library That Runs Anywhere
-
London Clojurians Talk: Simpler User Interfaces with Membrane (by Adrian Smith)
User Interfaces are brittle, highly coupled, and inflexible. This talk will diagnose some of the root problems that plague user interfaces and show how a different approach can make UI programs dramatically simpler using Membrane (https://github.com/phronmophobic/membrane).
- Membrane: A Simple UI Library That Runs Anywhere
-
Textual in Clojure?
Closest I can think of is the terminal backend for membrane
-
The shape of data
UI toolkits: https://github.com/HumbleUI/HumbleUI and https://github.com/phronmophobic/membrane
-
Thoughts on Clojure UI framework
It would be cool to see more libraries in this space. I've been working on a similar library, https://github.com/phronmophobic/membrane. If you're not building on top of React, there's a huge untapped design space.
-
Clojure GUI or front-end - what are the options?
I built membrane for exactly this use case, https://github.com/phronmophobic/membrane. The graphics and event model is pure clojure with support for multiple platforms. Membrane is less mature than some of the other JVM options, but Swing/AWT/JavaFX have their own quirks.
What are some alternatives?
teavm - Compiles Java bytecode to JavaScript, WebAssembly and C
skija - Java bindings for Skia
cljfx - Declarative, functional and extensible wrapper of JavaFX inspired by better parts of react and re-frame
react-native - A framework for building native applications using React
react-native-web - Cross-platform React UI packages
convex - Convex Main Repository - Decentralised platform for the Internet of Value
Wails - Create beautiful applications using Go
jdeploy - Developer friendly desktop deployment tool
viscous - pprint that respects your space and time
warp - Create self-contained single binary applications
nimview - A Nim/Webview based helper to create Desktop/Server applications with Nim/C/C++ and HTML/CSS