How to go from a ruby script to a working website?


#1

As you’ve probably guessed by the title, total newbie here.

My main interest is developing web stuff, and for that I started
learning programming through PHP. However, I discovered Ruby and
immediately fell in love with it.

I started following Chris P.'s Learn to Program and with the knowledge
I got so far, I started building a few very simple programs of my own.
The thing is that they’re all limited to the Terminal (I have a mac),
but what I really want is to use them through a web interface (inputs,
forms, submit, etc) so I can also experiment with Javascript/AJAX.

However, I have no clue how to do that and can’t seem to find
information on it anywhere. It seems the only way to access Ruby
programs through a webpage is with the aid of frameworks like Rails and
Merb, and they seem like too much trouble for what would be a simple
one-page app. I guess could use Camping or only the Merb-core, but I
would like to understand exactly what I’m doing, and just basically be
able do it all by myself.

So, what am I missing? What is the link between .rb and .html?


#2

You could use the Merb-core in combination with the passenger mod for
Apache. That mod allows you to run rails and merb applications just like
php applications. Just upload and go. And indeed you could use Rails,
but it’s easier to start with a merb application.

Example:
http://www.modrails.com/documentation/Users%20guide.html#_merb

As you can see passenger mod supports multiple simple frameworks. So
maybe you could try one of those.

Regards,

Daniel


#3

On Thu, Oct 16, 2008 at 8:56 PM, Hoesel, Daniël van <
removed_email_address@domain.invalid> wrote:

As you’ve probably guessed by the title, total newbie here.

\

Using merb-core for a one page app is not a silly idea. You can use it
with
a very_flat (1 file) merb application.

to genearte the stubs to get you going for this use

merb-gen very_flat my_app

then run it with

merb -I <app_file>

HTH
~Daniel


#4

On Oct 16, 5:19 am, Ralph W. removed_email_address@domain.invalid wrote:

forms, submit, etc) so I can also experiment with Javascript/AJAX.

However, I have no clue how to do that and can’t seem to find
information on it anywhere. It seems the only way to access Ruby
programs through a webpage is with the aid of frameworks like Rails and
Merb, and they seem like too much trouble for what would be a simple
one-page app. I guess could use Camping or only the Merb-core, but I
would like to understand exactly what I’m doing, and just basically be
able do it all by myself.

So, what am I missing? What is the link between .rb and .html?

start with cgi.rb
learn about webrick
comprehend rack
all “explodes” from there


#5

Take a look at one of the frameworks that has been built on top of Ruby
such as Merb or Rails


#6

Ralph W. wrote:

they seem like too much trouble for what would be a simple
one-page app. I guess could use Camping or only the Merb-core, but I
would like to understand exactly what I’m doing, and just basically be
able do it all by myself.

For a one-pager app, look at Sinatra. I’ve only given it a quick try,
but it looks a lot cleaner and simpler than Camping.


#7

Thanks for all the replies.

I’ve looked into your suggestions with more depth, and the possibility
I’m liking the most is the Phusion’s Passenger mod.

But first I think I’m gonna try liquid’s mini-tutorial on how to use
just merb-core to get a one-page app working. It looks like the more
hands-on approach, and it’s what I’m looking for at the moment.

I had read about Sinatra earlier, but it looks like the project is
offline. Vintage looks interesting, but it appears to be somewhat
abandoned.

Just something else that isn’t quite clear to me: my app should be
written in an erb file, right? Or HAML or the like.


#8

On Fri, Oct 17, 2008 at 8:27 AM, Ralph W. removed_email_address@domain.invalid wrote:

offline. Vintage looks interesting, but it appears to be somewhat
abandoned.

Just something else that isn’t quite clear to me: my app should be
written in an erb file, right? Or HAML or the like.

Hi Ralph,

You can use erb or haml for your views. It depends on what you’re
comfortable with. My personal preference is haml but each to his own.

Cheers
Daniel


#9

On Thu, Oct 16, 2008 at 5:19 AM, Ralph W. removed_email_address@domain.invalid wrote:

forms, submit, etc) so I can also experiment with Javascript/AJAX.

However, I have no clue how to do that and can’t seem to find
information on it anywhere. It seems the only way to access Ruby
programs through a webpage is with the aid of frameworks like Rails and
Merb, and they seem like too much trouble for what would be a simple
one-page app. I guess could use Camping or only the Merb-core, but I
would like to understand exactly what I’m doing, and just basically be
able do it all by myself.

So, what am I missing? What is the link between .rb and .html?

Vintage may be of interest to you, although the documentation seems to
be sparse.

http://rubyforge.org/projects/vintage/


#10

On Thu, Oct 16, 2008 at 09:57:06PM +0900, Jim McKerchar wrote:

Take a look at one of the frameworks that has been built on top of Ruby
such as Merb or Rails

With an answer like that, I’m not sure you actually read the OP.


#11

On Thu, Oct 16, 2008 at 5:27 PM, Ralph W. removed_email_address@domain.invalid wrote:

Thanks for all the replies.

I’ve looked into your suggestions with more depth, and the possibility
I’m liking the most is the Phusion’s Passenger mod.

But first I think I’m gonna try liquid’s mini-tutorial on how to use
just merb-core to get a one-page app working. It looks like the more
hands-on approach, and it’s what I’m looking for at the moment.

I think merb is a great choice.

I had read about Sinatra earlier, but it looks like the project is
offline. Vintage looks interesting, but it appears to be somewhat
abandoned.

I want to point out that just because there hasn’t been a Vintage
release in awhile does not mean it has been abandoned. It’s purpose
is relatively simple and probably does not require many updates.

Michael G.


#12

On Thu, Oct 16, 2008 at 06:19:14PM +0900, Ralph W. wrote:

However, I have no clue how to do that and can’t seem to find
information on it anywhere. It seems the only way to access Ruby
programs through a webpage is with the aid of frameworks like Rails and
Merb, and they seem like too much trouble for what would be a simple
one-page app. I guess could use Camping or only the Merb-core, but I
would like to understand exactly what I’m doing, and just basically be
able do it all by myself.

For extremely simple stuff – like turning a basic command-line utility
into a Web application – I use the hell out of eRuby. The Wikipedia
page for eRuby offers a little information about it, including some
“hello world” level examples and brief mentions of three different
implementations:

https://secure.wikimedia.org/wikipedia/en/wiki/ERuby

The way it’s used, once you get it working, is surprisingly similar to
how PHP is used with mod_php on most Webservers. The difference is
primarily that it uses Ruby instead of PHP (obviously), in terms of how
one interacts with it. There are a few gotchas in making the transition
from PHP to eRuby, though, as a bunch of stuff works subtly differently
(such as default paths).