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.
(defpackage simple-app
(:use :cl
:clack))
(in-package :simple-app)
(defvar *handler*
(clackup
#'(lambda (env)
'(200 (:content-type "text/plain") ("Hello, Clack!")))))
Now access http://localhost:5000/ and Clack should show you "Hello, Clack!".
To stop the server, execute (clack:stop *handler*)
.
Clack is available on Quicklisp.
(ql:quickload :clack)
- Hunchentoot
- Apache2 (mod_lisp2)
- FastCGI
Middleware is one of the Clack Component. It takes another Application and runs it.
- Clack.Middleware.Static - Serves static files.
- Clack.Middleware.Logger - Logging in Clack Application or Middleware.
- Clack.Middleware.Session - Session management.
- Clack.Middleware.Dbi - Middleware for CL-DBI connection management.
- Clack.Middleware.Csrf - Provides easy way to protect from CSRF.
- Clack.Middleware.Auth.Basic - Basic Authentication Middleware.
- Clack.Middleware.Clsql - For CLSQL connection management.
- Clack.Middleware.Postmodern - Middleware for POSTMODERN connection management.
- Clack.Middleware.Rucksack - For wrapping Rucksack transaction.
- Clack.Middleware.OAuth - Authorization by OAuth.
- Eitarow Fukamachi (e.arrows@gmail.com)
Copyright (c) 2011 Eitarow Fukamachi
Licensed under the LLGPL License.