Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
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…
Ruby
Branch: master
Pull request Compare This branch is 1 commit ahead, 328 commits behind jlong:master.

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
bin
lib
spec
tasks
test_project
.document
.gitignore
CHANGELOG.rdoc
LICENSE
QUICKSTART.rdoc
README.rdoc
Rakefile
VERSION
serve.gemspec

README.rdoc

Serve

Serve is a small web server (based on WEBrick) that makes it easy to serve ERB or HAML from any directory. Serve is an ideal tool for building HTML prototypes of Rails applications. Serve can also handle SASS, Textile, and Markdown if the appropriate gems are installed.

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:

Or visit the project page here:

All development now takes place on GitHub:

License

Serve is released under the MIT license and is copyright © 2007-2009 John W. Long and Adam I. Williams. A copy of the MIT license can be found in the LICENSE file.

Something went wrong with that request. Please try again.