From c96aeedd0e0774f5b605746e6162387b88a043d1 Mon Sep 17 00:00:00 2001 From: Blake Mizerany Date: Thu, 4 Oct 2007 17:43:44 -0700 Subject: [PATCH] thank yous --- README | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++------------- RakeFile | 1 + 2 files changed, 56 insertions(+), 13 deletions(-) diff --git a/README b/README index 0551649..5db9111 100644 --- a/README +++ b/README @@ -10,35 +10,32 @@ Sinatra (C) 2007 By Blake Mizerany I'm going to move quick. I'll let you drool at your own pace. -- Create a file called lyrics.rb (or any name you like) +* Create a file called lyrics.rb (or any name you like) -- Add +* Add require 'rubygems' require 'sinatra' -- Run (yes, with just ruby) +* Run (yes, with just ruby) % ruby lyrics.rb == Sinata has taken the stage on port 4567! -- Take a moment and view the default page http://localhost:4567. Go ahead and bask in it's glory. +* Take a moment and view the default page http://localhost:4567. Go ahead and bask in it's glory. * Notice: * It didn't create any page to show you that default page (just a cool thing to see, that's all) * There was nothing generated other than a log file * Sinatra is a really cool name for a web-framework that's a DSL -- Modify lyrics.rb by adding: - +* Modify lyrics.rb by adding: get '/' do 'Hello World' end -- Refresh (no need to restart Sinatra): - +* Refresh (no need to restart Sinatra): http://localhost:4567 -- Modify again (then refresh): - +* Modify again (then refresh): get '/' do <<-HTML
@@ -51,7 +48,52 @@ I'm going to move quick. I'll let you drool at your own pace. post '/' do "Hello #{params[:name] || 'World'}!" end - -- Homework: -Use the Sinatra::Erb::EventContext or Sinatra::Haml::EventContext to do the same. Do them inline and as template files. +* Now you try: + Use the Sinatra::Erb::EventContext or Sinatra::Haml::EventContext to do the same. Do them inline and as template files. + +* Learn more cool stuff: + see Sinatra::Dsl + +* Create your own plugins! + 1. Create a 'vendor' directory in your app directory + 2. Lay it out like: + + myapp.rb : root + |- vendor + | - plugin_name + | - init.rb # load and hook here + | - lib + |- modules/classes here + + 3. Use it in your app! + + see $SINATRA_GEM_ROOT/vendor/erb or $SINATRA_GEM_ROOT/vendor/erb for examples. + +* Tell! +We would love to here what you're doing with Sinatra and any cool patches/features you would like. (blake { dot } mizerany [ at ] gmail) + +* Talk! +IRC (irc.freenode.com #sinatra) +Mailing List (sinatrarb@googlegroups.com) + +* Contribute + +We're using git as our scm.. cuz.. it rocks. You can get the latest source from http://repo.or.cz/w/sinatra.git + +NOTE: You can also get tar'd snapshots of each commit there too. So technically you don't need git to get the latest code. + +It's probably going to happen.. you'll find a bug. Please help by: + +* Sending a message to sintrarb@googlegroups.com with BUG: at the start of the subject (I'm working on a better tracking system) +* Please send patches or pull requests to (blake { dot } mizerany [ at ] gmail) don't forget the dot com. ;) + +== Thanks! + +- Ezra Zygmuntowicz (http://brainspl.at) for answering all those random questions over IM and all the poached code +- Ditto to Chris Wanstrath (errtheblog.com) and helping me keep things simple, and some cool tricks +- Ari Lerner over at CitrusByte for ideas, code, and enthusiasm +- Koshi (http://www.songbirdnest.com/jkoshi/blog) here at POTI, Inc. for the Sinatra mark +- Pete Golibersuch for the hat logo +- John Philip Green (http://www.linkedin.com/in/johngreen) for motivation and evangelism +- The team here at songbirdnest.com for cool ideas diff --git a/RakeFile b/RakeFile index 3f6a10a..65ce0ae 100644 --- a/RakeFile +++ b/RakeFile @@ -21,6 +21,7 @@ begin p.test_pattern = 'test/**/*_test.rb' p.include_rakefile = true p.rdoc_pattern = ['README', 'LICENSE'] << Dir.glob('lib/**/*.rb') << Dir.glob('vendor/**/*.rb') + p.docs_host = "bmizerany@rubyforge.org:/var/www/gforge-projects/sinatra/" end rescue LoadError -- 2.11.4.GIT