garden
ClojureDart
Our great sponsors
garden | ClojureDart | |
---|---|---|
2 | 27 | |
1,329 | 1,337 | |
- | 2.8% | |
4.2 | 9.1 | |
3 months ago | 4 days ago | |
Clojure | Clojure | |
- | - |
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.
garden
-
What working with Tailwind CSS every day for 2 years looks like
Thanks for the vanilla-extract recommendation, I'll be using this!
In my case, tailwind was useful for providing a handy set of vocabularies for simple and common stylings. But once customizations start to pile on, we're back into SCSS. Using 2 systems at once meant additionally gluing them with the postcss toolchain, so effectively we have 3 preprocessors running for every style refresh.
Looking in at TypeScript from the clojurescript ecosystem though, I'm still yet to see an equal to https://github.com/noprompt/garden or https://github.com/Jarzka/stylefy: single language, excellent composability, compile-time anonymous class names, inline styles... almost like they solved CSS (except for typing)
-
Clojure Single Codebase?
I spent some time doing this ~3 years ago, so I don't know about now, but to my knowledge it was the only language where you could really use one language for everything: no HTML (via hiccup), no CSS (via garden), clojure/clojurescript everywhere, and no shell (via babashka).
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
https://github.com/scicloj/clojisr
https://fennel-lang.org
What are some alternatives?
stylefy - Clojure(Script) library for styling user interface components with ease.
gallery - Flutter Gallery was a resource to help developers evaluate and use Flutter
Rete.js - Rete.js is a framework for creating visual interfaces and workflows. It provides out-of-the-box solutions for visualization using various libraries and frameworks, as well as solutions for processing graphs based on dataflow and control flow approaches.
valence-native - A React environment for cross platform desktop apps
Photon - Lightning fast and portable programming language!
vim-iced - Clojure Interactive Development Environment for Vim8/Neovim
unocss - The instant on-demand atomic CSS engine.
babashka - Native, fast starting Clojure interpreter for scripting
stitches - [Not Actively Maintained] CSS-in-JS with near-zero runtime, SSR, multi-variant support, and a best-in-class developer experience.
language - Design of the Dart language
truss - A TypeScript DSL for writing utility CSS in React/JSX
slsa - Supply-chain Levels for Software Artifacts