packages feed

salvia-1.0.0: salvia.cabal

Name:               salvia
Version:            1.0.0
Description:        
  Salvia is a feature rich modular web server and web application framework
  that can be used to write dynamic websites in Haskell. From the lower level
  protocol code up to the high level application code, everything is written as
  a Salvia handler. This approach makes the server extremely extensible. To see
  a demo of a Salvia website, please see the /salvia-demo/ package.
  .
  All the low level protocol code can be found in the /salvia-protocol/
  package, which exposes the datatypes, parsers and pretty-printers for the
  URI, HTTP, Cookie and MIME protocols.
  .
  This Salvia package itself can be separated into three different parts: the
  interface, the handlers and the implementation. The /interface/ module
  defines a number of type classes that the user can build the web application
  against. Reading the request object, writing to the response, or gaining
  direct access to the socket, all of these actions are reflected using one
  type class aspect in the interface. The /handlers/ are self contained modules
  that implement a single aspect of the Salvia web server. The handlers expose
  their interface requirements in their type context. Salvia can have multiple
  /implementations/ which can be switched by using different instances for the
  interface type classes. This package has only one implementation, a simple
  accepting socket loop server. The /salvia-extras/ package has two additional
  implementations. Keeping a clear distinction between the abstract server
  aspects and the actual implementation makes it very easy to migrate existing
  web application to different back-ends.

Synopsis:           Modular web application framework.
Cabal-version:      >= 1.6
Category:           Network, Web
License:            BSD3
License-file:       LICENSE
Author:             Sebastiaan Visser
Maintainer:         sfvisser@cs.uu.nl
Build-Type:         Simple

Library
  GHC-Options:      -Wall -fno-warn-orphans
  HS-Source-Dirs:   src

  Build-Depends:    base ==4.*,
                    bytestring ==0.9.*,
                    containers >= 0.2 && < 0.4,
                    directory ==1.0.*,
                    fclabels ==0.4.*,
                    MaybeT-transformers == 0.1.*,
                    monads-fd ==0.0.*,
                    network >= 2.2.1.7 && < 2.3,
                    old-locale ==1.0.*,
                    process ==1.0.*,
                    threadmanager ==0.1.3,
                    pureMD5 ==1.0.*,
                    random ==1.0.*,
                    safe ==0.2.*,
                    stm ==2.1.*,
                    time ==1.1.*,
                    transformers ==0.1.*,
                    unix >= 2.3 && < 2.5,
                    utf8-string ==0.3.*,
                    salvia-protocol ==1.0.*,
                    split ==0.1.*,
                    text >= 0.5 && < 0.8

  Exposed-modules:  Network.Salvia
                    Network.Salvia.Interface
                    Network.Salvia.Handlers
                    Network.Salvia.Impl

                    Network.Salvia.Impl.Config
                    Network.Salvia.Impl.Context
                    Network.Salvia.Impl.Handler
                    Network.Salvia.Impl.Server

                    Network.Salvia.Handler.Banner
                    Network.Salvia.Handler.Body
                    Network.Salvia.Handler.CGI
                    Network.Salvia.Handler.Close
                    Network.Salvia.Handler.Cookie
                    Network.Salvia.Handler.Directory
                    Network.Salvia.Handler.Dispatching
                    Network.Salvia.Handler.Environment
                    Network.Salvia.Handler.Error
                    Network.Salvia.Handler.Extension
                    Network.Salvia.Handler.File
                    Network.Salvia.Handler.FileSystem
                    Network.Salvia.Handler.Head
                    Network.Salvia.Handler.Log
                    Network.Salvia.Handler.Method
                    Network.Salvia.Handler.Parser
                    Network.Salvia.Handler.Path
                    Network.Salvia.Handler.Printer
                    Network.Salvia.Handler.Put
                    Network.Salvia.Handler.Range
                    Network.Salvia.Handler.Redirect
                    Network.Salvia.Handler.Rewrite
                    Network.Salvia.Handler.VirtualHosting