Clojure GUI or front-end - what are the options?

This page summarizes the projects mentioned and recommended in the original post on /r/Clojure

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • seesaw

    Seesaw turns the Horror of Swing into a friendly, well-documented, Clojure library

  • seesaw is still viable and runs on swing, which will run everywhere, probably forever. It's a bit closer to the underlying event model than the react style rendering in cljfx.

  • membrane

    A Simple UI Library That Runs Anywhere

  • 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.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • seesaw

    Fork of Seesaw and has capability of virtual dom like React.js does. (by ertugrulcetin)

  • I you consider seesaw, I forked it and added virtual dom functionality: https://github.com/ertugrulcetin/seesaw

  • code3dworld

    Learn programming in 3D World

  • I built code3dworld with re-frame + shadow-cljs + electron. The experience was really smooth and nice. If you need a desktop app, I highly suggest using this combination, I checked cljfx, but it seemed hard to be productive and flexible.

  • Wails

    Create beautiful applications using Go

  • Tauri[0] seems to be working with Clojurescript too, but backend would be Rust Another similar options is Wails [1] but backend would be Go. These projects work similar to Electron but instead of bundling Chrome they use host OS's webview. To go full lisp, maybe something similar can be possible with Janet + Cljs too. [0] https://tauri.studio/en/ [1] https://github.com/wailsapp/wails

  • skija

    Java bindings for Skia

  • You can take a look at Skija from Jetbrains. It's a wrapper around the Skia library used by Chrome, Xamarin, LibreOffice, among others.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • phronmophobic/membrane: A Simple UI Library That Runs Anywhere

    1 project | /r/Clojure | 24 Jul 2023
  • Vizia: A declarative GUI library written in Rust

    1 project | news.ycombinator.com | 5 Jul 2023
  • Cosmic Text: Pure Rust multi-line text handling

    7 projects | news.ycombinator.com | 2 Mar 2023
  • London Clojurians Talk: Simpler User Interfaces with Membrane (by Adrian Smith)

    1 project | /r/Clojure | 28 Nov 2022
  • Membrane: A Simple UI Library That Runs Anywhere

    1 project | news.ycombinator.com | 11 Nov 2022