practicalli / practicalli/clojure
Desktop apps in Clojure
Nobody has claimed this yet.
- Dominant language
- Makefile
- Stars
- 117
- Forks
- 36
- PR merge metrics
- No merged PRs in 30d
Description
https://vlaaad.github.io/year-of-clojure-on-the-desktop
http://nils-blum-oeste.net/desktop-guis-with-clojure-in-2017-what-are-the-options/
JavaFX
https://github.com/cljfx/cljfx
Cljfx is a declarative, functional and extensible wrapper of JavaFX
https://github.com/cljfx/css
Simple Styling for cljfx
https://www.reddit.com/r/Clojure/comments/8uge0p/guis_and_clojure_how_can_i_do_it/
https://ahungry.com/blog/2019-07-22-Simple-non-Electron-Native-GUI-Development.html
fn(fx)
https://github.com/fn-fx/fn-fx
wrapper around JavaFX / OpenJFX to provide a "Virtual DOM"
https://github.com/nblumoe/clj-ui-spikes/tree/master/fn-fx-ui
a simple GUI with Clojure and JavaFX
Scene builder and FXML
Visually design your application using JavaFX scene builder, includes a few themes
https://gluonhq.com/products/scene-builder/
Is written in Java, so multiplatform
Choose base template, design app and save to an FXML file
Use https://github.com/zilti/clojurefx to consume that file
https://www.slideshare.net/netpyoung/using-fxml-on-clojure
Swing
https://github.com/daveray/seesaw
https://gist.github.com/daveray/1441520
https://stuartsierra.com/2010/01/02/first-steps-with-clojure-swing
Java Interop
Call Swing and AWT (abstract window toolkit) directly from Clojure via standard interop code.
Java Server Faces
https://www.primefaces.org/
Other options?
- Tck/tk
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Review the linked Clojure desktop-app resources, including JavaFX, fn-fx, FXML, Swing, Java interop, Java Server Faces, and Tk/tk. Decide which options belong in the project’s documentation and organize the relevant links and descriptions. Done means the desktop-app guidance is current, coherent, and covers any selected additional options.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- clojure, java
- Domain
- desktop-dev, documentation
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100