Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

thank yous

  • Loading branch information...
commit c96aeedd0e0774f5b605746e6162387b88a043d1 1 parent 85e1a4c
Blake Mizerany authored
Showing with 56 additions and 13 deletions.
  1. +55 −13 README
  2. +1 −0  RakeFile
View
68 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
<form action='/' method="POST">
@@ -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
View
1  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
Please sign in to comment.
Something went wrong with that request. Please try again.