public
Description: Serve is a rapid prototyping framework for Rails applications. It is designed to compliment Rails development and enforce a strict separation of concerns between designer and developer. Using Serve with Rails allows the designer to happily work in his own space creating an HTML prototype of the application, while the developer works on the Rails application and copies over HTML from the prototype as needed. This allows the designer to focus on presentation and flow while the developer can focus on the implementation.
Homepage: http://rubyforge.org/projects/serve/
Clone URL: git://github.com/jlong/serve.git
serve /
name age message
file .gitignore Fri Jul 18 16:16:46 -0700 2008 add email.txt to .gitignore [John W. Long]
file History.txt Sat Oct 25 11:48:45 -0700 2008 updated history for 0.9.10 [John W. Long]
file License.txt Tue Sep 18 06:44:27 -0700 2007 A few tweaks git-svn-id: svn+ssh://rubyforge.o... [jlong]
file Manifest.txt Sat Oct 25 12:01:16 -0700 2008 updated Manifest.txt [John W. Long]
file Quickstart.textile Fri Jul 18 09:14:33 -0700 2008 Added support for _layout.html.erb as a layout ... [karnowski]
file README.txt Fri Sep 19 11:55:43 -0700 2008 updated README for ERB [John W. Long]
file Rakefile Tue Feb 19 18:54:44 -0800 2008 rearranged lib directory and brok lib/serve.rb ... [jlong]
directory bin/ Sat May 31 09:23:25 -0700 2008 refactored bin/serve to use new Application cla... [jlong]
directory config/ Mon Sep 24 22:30:47 -0700 2007 wording updates git-svn-id: svn+ssh://rubyforg... [jlong]
directory lib/ Sat Oct 25 11:46:01 -0700 2008 bumped version to 0.9.10 [John W. Long]
directory log/ Mon Sep 17 22:00:09 -0700 2007 initial import git-svn-id: svn+ssh://rubyforg... [jlong]
directory script/ Mon Sep 24 22:58:36 -0700 2007 added files for project site git-svn-id: svn+s... [jlong]
file setup.rb Mon Sep 17 22:00:09 -0700 2007 initial import git-svn-id: svn+ssh://rubyforg... [jlong]
directory spec/ Sat May 31 19:00:39 -0700 2008 first pass at support for erb git-svn-id: svn... [jlong]
directory tasks/ Tue Feb 19 18:54:44 -0800 2008 rearranged lib directory and brok lib/serve.rb ... [jlong]
directory test_project/ Sat Oct 25 11:41:12 -0700 2008 changes for haml 2.0.3 [John W. Long]
directory website/ Mon Sep 24 22:58:36 -0700 2007 added files for project site git-svn-id: svn+s... [jlong]
README.txt
== Serve

Serve is a small Ruby script that makes it easy to start up a WEBrick server
in any directory. Serve is ideal for HTML prototyping and simple file sharing.
If the haml, redcloth, and bluecloth gems are installed serve can handle Haml,
Sass, Textile, and Markdown (in addition to HTML and ERB).


=== Usage

At a command prompt all you need to type to start serve is:

  $ serve

This will launch a WEBrick server which you can access from any Web browser at
the following address:

  http://localhost:4000

Once the server is going it will output a running log of its activity. To
stop the server at any time, type CTRL+C at the command prompt. By default the
serve command serves up files from the current directory. To change this
behavior, `cd` to the appropriate directory before starting serve.


=== Advanced Options

The serve command automatically binds to 0.0.0.0 (localhost) and uses port
4000 by default. To serve files over a different IP (that is bound to your
computer) or port specify those options on the command line:

  $ serve 4000               # a custom port

  $ serve 192.168.1.6        # a custom IP

  $ serve 192.168.1.6:4000   # a custom IP and port


=== Rails Applications

For your convenience if the file "script/server" exists in the current
directory the serve command will start that instead of launching a WEBrick
server. You can specify the environment that you want to start the server
with as an option on the command line:

  $ serve production         # start script/server in production mode


=== File Types

Serve presently does special processing for files with following extensions:

textile :: Evaluates the document as Textile (requires the Redcloth gem) 
markdown :: Evaluates the document as Markdown (requires the Bluecloth gem)
erb :: Experimental support for ERB
haml :: Evaluates the document as Haml (requires the Haml gem)
sass :: Evaluates the document as Sass (requires the Haml gem)
email :: Evaluates the document as if it is an e-mail message; the format is identical to a plain/text e-mail message's 
source
redirect :: Redirects to the URL contained in the document


== View Helpers

If you drop a file called view_helpers.rb in the root of a project, you can define custom helpers for your Haml and ERB 
views. Just declare the ViewHelpers module and begin declaring your helpers:

  module ViewHelpers
    def custom_method
      "Request object: #{request.headers['user-agent']}"
    end
  end


=== Installation and Setup

It is recommended that you install serve via RubyGems:

  $ sudo gem install serve


=== More Information

For more information, be sure to look through the documentation over at
RubyForge:

* http://serve.rubyforge.org

Or visit the project page here:

* http://rubyforge.org/projects/serve

All development now takes place on GitHub:

* http://github.com/jlong/serve


=== License

Serve is released under the MIT license and is copyright (c) 2006-2008
John W. Long. A copy of the MIT license can be found in the License.txt file.


Enjoy!

--
John Long :: http://wiseheartdesign.com