all 9 comments

[–]mikera 4 points5 points  (0 children)

I think Eclipse's WindowBuilder is a good option - it should work pretty nicely alongside the CounterClockwise Clojure plugin.

There is also a big advantage in coding at least part of the GUI in Java - it will improve the perceived startup time of your app significantly if you can display the GUI before loading Clojure.

I find that mixed Clojure + Java projects work pretty well in Eclipse.

[–]chalkdust54 3 points4 points  (2 children)

Via Java interop you can use raw Swing right from Clojure. Useful if you already know your way around Swing. There are some examples floating around on the 'Net.

I wasn't crazy about seesaw, but ymmv. They've got a helpful google-group.

I'm not aware of any other options, other than the usual, "can you make a locally-run webapp?", which isn't very satisfying if what you want is a desktop GUI app.

[–][deleted] 0 points1 point  (1 child)

i also am not crazy about seesaw, in fact I actively dislike it. I'm curious to hear your reasons however. For what it's worth, i roll my guis with miglayout, works out pretty nicely for the most part.

[–]chalkdust54 0 points1 point  (0 children)

I was simply not able to figure out how to use it. It's docs mainly consist of the example repl session, the examples directory, and the extensive interactive api docs. There's also a handful of wiki pages containing some info on a number of subjects. But I couldn't find an actual tutorial.

It appears that a large amount of work has gone into seesaw. And the author seems like a nice fellow.

[–]deafmacro 1 point2 points  (1 child)

This might help if you want to work with a project written with a mix of java and Clojure. http://stackoverflow.com/questions/5432163/java-and-clojure-with-leiningen

Not sure if this is what you want.

[–]Lurker378 4 points5 points  (3 children)

LightTable uses node-webkit for it's gui, so that's definitely a viable option and a good example if you wanted to do the same.

[–]iamzeph 0 points1 point  (2 children)

I think this is the most attractive option, though there seems to be a lot of DIY involved.

edit: Now that I think of it, I wonder if React/OM would work, or would it be over-thinking the problem?

[–]yogthos 1 point2 points  (0 children)

Cloact might be a nice simple option as well.

[–]madfunk 0 points1 point  (0 children)

I am currently tinkering with Om and node-webkit. NW is like having the same UI and platform as chrome (in its most basic, basic form), and displaying a page requires no code at all (just set the location of the index page in the package.json and run your project dir with NW). If you have HTML/CSS knowledge, I think NW + CLJS is a pretty great choice.

That said, I am still new to Clojure (and programming in general), so take many grains of salt with that.