Rack: a Ruby Webserver Interface

Rack provides an minimal interface between webservers supporting Ruby and Ruby frameworks.
News
- February 26th, 2008
- Rack 0.3 has been released!
- November 10th, 2007
- Rack has been presented at the Euruko 2007. Slides and a paper are available at http://chneukirchen.org/talks/.
- October 2007
- Ryan Allen gave a presentation on Rack (PDF).
- May 16th, 2007
- Rack 0.2 has been released!
Documentation
Read The Rack interface specification and other documentation.
Supported Handlers
- Rack::Handler::Mongrel (also with Swiftcore's evented_mongrel, just require it before Rack.)
- Rack::Handler::WEBrick
- Rack::Handler::FastCGI
- Rack::Handler::CGI
- Rack::Handler::SCGI
- Rack::Handler::LSWS
Web servers that include their own handlers:
Supported Adapters
- Rack::Adapter::Camping
- Coset
- Halcyon
- Maveric
- Merb
- Racktools::SimpleApplication
- Ramaze
- Sinatra
- Vintage
Blurb
Personifi uses Rack cause we like it's elegant design, speed and fast turn around time. With Rack we serve billions of requests per month. It makes our life good!—Armin Roehrl, Lead Engineer of Personifi
TODO
Currently, we can need help in these things:
- Please help test Thin's Rails handler.
- If you know JRuby, help write a Servlet adapter.
- If you know Sandbox, maybe something that would let Rack work with a Sandbox (I think it would be needed if frameworks stand on each other feet.)
- Figure out how to use Mongrel’s URL classifier for URLMap (IOWA has a cleaned and modularized version of it, I heard).
- Spread the word! Write cool Rack apps!
License
Rack is licensed under the very liberal MIT License.
Get it!
Releases:
- Rack 0.3
- rack-0.3.0.tar.gz (5e92f2901d2dc77eb0453fc3acdd6c4a07fc167a)
- rack-0.3.0.tar.gz (Rubyforge)
- Rack 0.2
- rack-0.2.0.tar.gz (f1063711f228d19875a3211d71308b5c)
- rack-0.2.0.tar.gz (Rubyforge)
- Rack 0.1
- rack-0.1.0.tar.gz (79b46158b7b30adcd7a9148cc7ed4305)
- rack-0.1.0.tar.gz (Rubyforge)
Or, via Gems:
gem install rack
Mirror, may be more recent:
gem install rack --source http://chneukirchen.org/releases/gems
Currently, bleeding-edge Rack is available via darcs:
darcs get http://chneukirchen.org/repos/rack/
The respository is browsable online, too.
Contact
Send patches, questions or bugs
to chneukirchen@gmail.com, or
visit the Rack IRC channel #rack
at Freenode.
More information
- Introducing Rack, an introductory blog post by Christian Neukirchen.
- Rack project at Rubyforge.
- racktools provides various tools for rack that make web development a charm.
© 2007 Christian Neukirchen