ClojureDart
HumbleUI
Our great sponsors
ClojureDart | HumbleUI | |
---|---|---|
27 | 5 | |
1,331 | 1,111 | |
2.3% | 3.4% | |
9.2 | 8.0 | |
14 days ago | 28 days ago | |
Clojure | Clojure | |
- | 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.
ClojureDart
- ClojureDart – Clojure Dialect for Flutter and Dart
- Embedding Clojure into iOS Applications
-
Why Lisp?
> "ClojureDart is production-ready: you can ship applications right now.
Source: https://github.com/Tensegritics/ClojureDart
See a live demo here: https://www.youtube.com/watch?v=dqBeGpuedf0
ClojureDart is very similar to ClojureScript, which the GP is already comfortable with.
-
Is Clojure the only language you need?
Ah, and there is also a new version of Clojure in active development - ClojureDart. It is a port of Clojure language to Dart with the primary goal of using Flutter framework and getting a native mobile and desktop UI.
-
So you're using a weird language
There is a port of the Clojure language to Dart with Flutter support: https://github.com/Tensegritics/ClojureDart
-
What features should a Lisp IDE have?
Now https://github.com/Tensegritics/ClojureDart exist to build GUI with flutter.
-
language bindings?
There are ways, but it is generally a lot of work, for example there is ClojureDart https://github.com/Tensegritics/ClojureDart . Though unusually that sort of thing is normal for Clojure, because it is a hosted language (Clojure -> JVM, ClojureScript -> JS, etc).
- Jumping back in!
-
Clojure Single Codebase?
Something to checkout for mobile and desktop is: https://github.com/Tensegritics/ClojureDart
-
Clojure Scripting on Node.js
Basically, you take a programming language and make it work on a platform that meant to be programmed using a different PL. Clojure is hosted by design - it's not Java, but can be used to program for JVM. It ain't Javascript, but can be used to target nodejs and browser; not an [official] CLR language, but you can write .Net programs. You can use Clojure to make Flutter apps with ClojureDart. You can integrate Python into Clojure with libpython-clj. Or write Clojure to target Erlang/OTP; or Rust; or R; There's even a clojure-like language for Lua - Fennel.
There's something about Clojure people like so much, they want it to work atop any platform.
https://github.com/Tensegritics/ClojureDart
https://github.com/clj-python/libpython-clj
https://github.com/clojerl/clojerl
https://github.com/clojure-rs/ClojureRS
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.
What are some alternatives?
gallery - Flutter Gallery was a resource to help developers evaluate and use Flutter
teavm - Compiles Java bytecode to JavaScript, WebAssembly and C
valence-native - A React environment for cross platform desktop apps
membrane - A Simple UI Library That Runs Anywhere
vim-iced - Clojure Interactive Development Environment for Vim8/Neovim
cljfx - Declarative, functional and extensible wrapper of JavaFX inspired by better parts of react and re-frame
slsa - Supply-chain Levels for Software Artifacts
skija - Java bindings for Skia
babashka - Native, fast starting Clojure interpreter for scripting
convex - Convex Main Repository - Decentralised platform for the Internet of Value
language - Design of the Dart language
jdeploy - Developer friendly desktop deployment tool