Skip to content
Browse files

rewrote README, the Installation part.

  • Loading branch information...
1 parent 43df145 commit 4797523620ae64d118c57efde42838c14e048877 @fukamachi committed Feb 20, 2011
Showing with 20 additions and 1 deletion.
  1. +20 −1 README.markdown
View
21 README.markdown
@@ -24,7 +24,12 @@ It is a really cool product written by [Tomohiro Matsuyama](http://twitter.com/#
Clack and cl-annot isn't in Quicklisp's repository yet ([now on request](https://github.com/quicklisp/quicklisp-projects/issues/120)). Then I think ASDF-INSTALL is the best way to setup them.
(asdf-install:install "https://github.com/arielnetworks/cl-annot/tarball/master")
- (asdf-install:install "https://github.com/fukamachi/clack/tarball/master")
+
+Next, [download Clack](https://github.com/fukamachi/clack/tarball/master), extract it and put it in a place where ASDF can find it.
+
+In the end, you can load Clack with [Quicklisp](https://www.quicklisp.org/beta/).
+
+ (ql:quickload :clack)
## Application
@@ -34,6 +39,20 @@ Clack Application is just a lambda. It takes exactly one argument, the "Request"
#'(lambda (req)
'(200 (:content-type "text/plain") ("Hello, World"))))
+### Clack.App.Route
+
+Clack is not a Web Application Framework. But Clack can also be used as such way.
+
+Clack bundles "Clack.App.Route", written by [Tomohiro Matsuyama](http://twitter.com/#!/m2ym). It allows you to write an URL-based dispatcher, like Ruby's Sinatra.
+
+ (defroute app (req)
+ (GET \"/\" #'index)
+ (GET \"/login\" #'login)
+ (POST \"/login\" #'authorize)
+ (GET \"/member/:id\" #'member))
+
+ (clackup #'app)
+
### The Request
Example: http://localhost:4242/sns/member?id=3

0 comments on commit 4797523

Please sign in to comment.
Something went wrong with that request. Please try again.