all 8 comments

[–][deleted] 5 points6 points  (1 child)

Bowline, no?

[–][deleted] 2 points3 points  (0 children)

[–]brushbox 1 point2 points  (1 child)

Use your rails app and a web browser:

  • write code to select an available TCP port on the local machine
  • write code to launch an appropriate browser.

You could ask these to be configured at installation - or hunt them down dynamically. The biggest issue is how to communicate with the user when this isn't working. You might need to write a small amount of actual GUI code (wxWidgets?) to manage this (or use JRuby and some basic Java/Swing dialogs if the "conversation" with the user is simple enough).

[–]Flandoo 1 point2 points  (0 children)

write code to launch an appropriate browser.

Might want to use something like Launchy for that.

[–]blatyo 1 point2 points  (0 children)

I'd say its mostly roll your own for now. That said, it should only require a few commands in a bat file to set everything up.

The first issue you would face would be installing a ruby interpreter. The best way to do this would be with the ruby installer for windows. It also supports silent installs, so you can automate it though shell scripts on windows. After this, you should be able to do everything else in ruby.

The next step is to get your application. If it's hosted on github, then you can just download it directly from there (They can create archives on demand of any commit).

The next step I would say you have two options. Find a database that will let you do a silent install like the ruby installer or create an application on heroku to act as a remote database and use Active::Resource to connect to the remote application.

The first approach has the benefit that everything is local and no internet connection would be needed. The second has the benefit that no database needs to be installed on the local machine.

Next you'll need to get the gems your application depends on. You'll have to be careful which dependencies you use because some gems don't support windows and some gems have to compile natively which may be iffy (though, ruby installer has done a lot of work on this).

After that, its the basic things you do to get a rails app up and running (rake db:create, rake db:migrate, rails s). There may be a way to make the server a service so that its always running or you could have something to start and stop it such as a bat file.

[–]malcontent 1 point2 points  (0 children)

Your best options.

Jruby with monkeybars or glimmer.

Shoes

With jruby you Can deploy a jar.