Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

some people seem to be confusing Clack for another web framework. I a…

…ppended README to describe what Clack is.
  • Loading branch information...
commit afe043ab821f0f05cfe0b94bb9b0b3ee4f913842 1 parent fcf1280
@fukamachi authored
Showing with 20 additions and 1 deletion.
  1. +20 −1 README.markdown
View
21 README.markdown
@@ -1,6 +1,6 @@
# Clack - Web Application Environment for Common Lisp
-Clack is a Web Application Environment for Common Lisp inspired by Python's WSGI and Ruby's Rack. Your awesome framework should base on this.
+Clack is a web application environment for Common Lisp inspired by Python's WSGI and Ruby's Rack. Your awesome framework should base on this.
## Usage
@@ -15,6 +15,22 @@ Clack is a Web Application Environment for Common Lisp inspired by Python's WSGI
Now access [http://localhost:5000/](http://localhost:5000/) and Clack may show you "Hello, Clack!".
+## About Clack
+
+### What is Clack?
+
+Clack is an interface between CL web applications and web servers. It wraps HTTP requests and responses in the simplest way. This means that it unifies the API for web servers, web frameworks, and software in between (the so-called middleware) into a single method call.
+
+But not only that.
+
+### Middleware is really needed
+
+Clack provides an idea "Middleware". It allows you to develop something you need without rewriting the existing framework. It can filter HTTP request before it is passed to the application, and can modify HTTP response the application generates.
+
+This idea is based on that loose coupling is good for writing reusable products.
+
+There are some middlewares bundled with Clack. You can find them at more below chapter "Bundle Middleware" in this document.
+
## Installation
Clack is now available on [Quicklisp](https://www.quicklisp.org/beta/).
@@ -118,6 +134,9 @@ Middleware is one of the Clack Component. It takes another Application and runs
* Clack.Middleware.Logger - Logging in Clack Application or Middleware.
* Clack.Middleware.Session - Session management.
* Clack.Middleware.OAuth - Authorization by OAuth.
+* Clack.Middleware.Csrf - Provides easy way to protect from CSRF.
+* Clack.Middleware.Clsql - For CLSQL connection management.
+* Clack.Middleware.Rucksack - For wrapping Rucksack transaction.
### How to write Middleware?
Please sign in to comment.
Something went wrong with that request. Please try again.