views:

397

answers:

4

Hi everyone, I've got an idea for an idiotically simple application, one that converts HAML and SASS into HTML & CSS files for the user by watching directory changes (like Compass). Almost all the components are already available in the community, I just need to figure out what to use for the front-end.

The catch:

It must be:

  1. a standalone app (i.e. users must NOT be required to install Ruby or HAML),
  2. that looks good,
  3. and is available in several platforms (linux, mac, windows).

So far I know very little about:

  • RubyScript2Exe: which packages ruby applications for you

  • Adobe AIR: desktop-style web-development...but is it easy to integrate with Ruby?

  • Adobe Flex: Is this only for web-based development?

  • Java /jRudy: (I get scared just thinking about it)

  • FXRuby: a ruby GUI toolkit which is unfortunately too old-fashioned (read 'ugly') to attract the audience I'm looking to target (designers and HTML developers....no, I'm not planning to charge for it, just want to make an attractive app)

  • Shoes: Another ruby-based GUI toolkit that may or may not suffice...is there a GUI builder for this?

Of course, other options are more than welcome.

If you provide an answer, please be kind enough to also leave a link to a good starter tutorial that integrates Ruby and your technology of choice?

+5  A: 

I recently had to decide on a Windowed front end for a simple app. I looked into FXRuby, TKRuby, Shoes and WXRuby.

Shoes was the only one that helped me make my app. The rest were (probably) more powerful but the cost in complexity (compared to Shoes) seemed vast. I had never had to sit down and work with a big ugly window API before and didn't want to learn one just to achieve my simple report generator. It wasn't clear how to take code for these API's and reliably generate an executable. Shoes' built in packager works nicely for me.

The one problem I had with Shoes was the trouble getting documentation. I eventually learned that running shoes -m launches a shoes app which acts as a very useful manual. The official tutorial is a worthwhile (and short) read. That's located here.

Shoes served me well and will be my first port of call on any simple utility i choose to make in the future.

deau
Upvoted just for the tutorial, which is more a work of art than instruction.
zetetic
+1  A: 

Oh, hotness flows from my pores about this question. I believe the future of the internet lies over thisaway Cappuccino. I know it sounds like a plug but I swear, I'm just impressed as hell by 280slides and Atlas. A web framework that's built using Cocoa's interface builder and can be compiled for both Cocoa natively as well as a kickass web page by a simple drop-down box? Hot hot hot. Boiling maybe?

Chuck Vose
Haha, yeah, I saw the presentation about it and had forgotten. Thanks for the reminder! Only thing is that's still in beta (from what I remember), and I couldn't tell if there were reasonable Ruby bindings for it either. Do you know about any Ruby integration with Cappuccino?
btelles
I'm not sure how much integration there is. It's a pretty different framework so I know that my answer wasn't totally good but it's exciting anyways. Probably the Ruby-cocoa bindings would be a place to start if you're really going to go that way but Atlas should pretty much cover the programming aspects I think. In reality, I'd hit up Shoes or bowline. Bowline has been getting a lot of press even though it makes me sad to not use _why branded software.
Chuck Vose
+1  A: 

Limelight is another alternative. It's JRuby based and available as a binary install for Windows and OSX, or as gem for any platform. There is a tutorial and screencast linked on the Limelight homepage.

I haven't used it, but thought it was worth a mention (I did download for Windows, but couldn't get it to launch - I suspect my work proxy is causing problems).

My vote would be for Shoes as well.

i5m
+1  A: 

have you had a look at titanium desktop? might be what your looking for

Sara
Yup, thanks for the hint. It's not stable yet. I tried it on Linux and Windows and it hung on both...I think it's still in Alpha...but I look forward to being able to mark this as the best answer.
btelles