public
Description: A very fast & simple Ruby web server
Homepage: http://code.macournoyer.com/thin/
Clone URL: git://github.com/macournoyer/thin.git
Search Repo:
macournoyer (author)
Wed Jan 09 19:29:16 -0800 2008
commit  e6ff51a05d896b34bd5cc3b2de315f22ab524635
tree    44d087f9e5c68ce4a476857de5db7560173fe5d7
parent  8d16c531e8f5dff763b4038ad9bf2d77448c1078
thin /
name age message
folder .gitignore Sat Jan 05 19:49:21 -0800 2008 Restore usage and download pages on web site. [macournoyer]
folder CHANGELOG Wed Jan 09 06:42:08 -0800 2008 Fix typo in thin script usage message and expan... [macournoyer]
folder COPYING Wed Jan 09 19:29:16 -0800 2008 Add some thing to do [macournoyer]
folder README Tue Jan 01 19:54:11 -0800 2008 Fix typos [macournoyer]
folder Rakefile Mon Jan 07 18:58:18 -0800 2008 Refactor Rakefile into seperate .rake files [macournoyer]
folder TODO Wed Jan 09 19:29:16 -0800 2008 Add some thing to do [macournoyer]
folder benchmark/ Mon Jan 07 21:14:43 -0800 2008 Update announcement email and make benchmark sc... [macournoyer]
folder bin/ Wed Jan 09 06:42:08 -0800 2008 Fix typo in thin script usage message and expan... [macournoyer]
folder doc/ Sun Dec 16 15:28:13 -0800 2007 Update benchmarks and web site [macournoyer]
folder example/ Sun Dec 16 18:36:57 -0800 2007 Add dependencies to gemspec [macournoyer]
folder ext/ Sat Jan 05 05:26:21 -0800 2008 Fix parser to be Ruby 1.9 compatible [Aman Gupta] [macournoyer]
folder lib/ Tue Jan 08 18:39:18 -0800 2008 Rename thin script options to be the same as mo... [macournoyer]
folder site/ Sat Jan 05 19:49:21 -0800 2008 Restore usage and download pages on web site. [macournoyer]
folder spec/ Sun Jan 06 21:36:26 -0800 2008 Add URL rewriting to Rails adapter so that page... [macournoyer]
folder tasks/ Mon Jan 07 21:34:42 -0800 2008 Updated announcement email [macournoyer]
README
== Thin
Tiny, fast & funny HTTP server

Thin is a Ruby web server that glues together 3 of the best Ruby libraries in web history:
 * the Mongrel parser: the root of Mongrel speed and security
 * Event Machine: a network I/O library with extremely high scalability, performance and stability
 * Rack: a minimal interface between webservers and Ruby frameworks
Which makes it, with all humility, the most secure, stable, fast and extensible Ruby web server
bundled in an easy to use gem for your own pleasure.

=== Installation
For the latest stable version:

 sudo gem install thin

or using my mirror (might be more recent):

 sudo gem install thin --source http://code.macournoyer.com

Or from source:

 git clone http://code.macournoyer.com/git/thin.git
 cd thin
 rake install
 
Or from the Subversion mirror (might be out of date):

 svn co http://code.macournoyer.com/svn/thin/trunk thin

=== Usage
A +thin+ script is offered to easily start your Rails application:

 cd to/your/rails/app
 thin start

But Thin is also usable through Rack +rackup+ command.
You need to setup a config.ru file and require thin in it:
  
 cat <<EOS
 require 'thin'
 
 app = proc do |env|
  [200, {'Content-Type'=>'text/html'}, ['hi']]
 end
 
 run app
 EOS
 rackup -s thin
 
See example/config.ru for details and rackup -h

=== License
Ruby License, http://www.ruby-lang.org/en/LICENSE.txt.

=== Credits
The parser was stolen from Mongrel http://mongrel.rubyforge.org by Zed Shaw.
Mongrel Web Server (Mongrel) is copyrighted free software by Zed A. Shaw
<zedshaw at zedshaw dot com> You can redistribute it and/or modify it under
either the terms of the GPL.

Thin is copyright Marc-Andre Cournoyer <macournoyer@gmail.com>

Please report any bug at http://code.macournoyer.com/thin/trac.fcgi/newticket
and security issues directly to me at macournoyer@gmail.com.