MFlow: Web app server for stateful processes with safe, composable user interfaces.

[ application-server, bsd3, library, web ] [ Propose Tags ]

A Web framework with some unique features thanks to the power of the Haskell language. MFlow run stateful server processes. Because flows are stateful, not isolated request-responses, the code is more understandable, because all the flow of request and responses is coded by the programmer in a single function. Allthoug single request-response flows and callbacks are possible.

Technically it is a Web application server for stateful processes (flows) that are optionally persistent. These processes interact with the user trough interfaces made of widgets that return back statically typed responses to the process that sent the interface (including links). The process is coded in pure haskell (with optional XML from Haskell Server Pages). It adopt and extend the formlet/applicative approach. The interfaces and communication are abstract, but it has bindings for HSP, Text.XHtml and byteString , Hack and WAI but it can be extended to non Web based architectures.

It includes Application Server features such is process and session timeouts and automatic recovery of flow execution state.

This release add transparent back button management, cached widgets, callbacks, modifiers, heterogeneous formatting AJAX, and WAI integration.

It is designed for coding an entire application can be run with no deployment with runghc in order to speed up the development process.

See MFlow.Forms for details

Altroug still it is experimental, it is used in at least one future commercial project. So I have te commitment to continue its development. There are many examples in the documentation and in the package.

To do:

  • Clustering

Modules

[Last Documentation]

  • MFlow
    • MFlow.Cookies
    • MFlow.FileServer
    • MFlow.Forms
      • MFlow.Forms.Admin
      • MFlow.Forms.Ajax
      • MFlow.Forms.HSP
      • MFlow.Forms.XHtml
    • MFlow.Hack
      • MFlow.Hack.Response
      • MFlow.Hack.XHtml
        • MFlow.Hack.XHtml.All
    • MFlow.Wai
      • MFlow.Wai.Response
      • XHtml
        • MFlow.Wai.XHtml.All

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.0.0, 0.0.1, 0.0.2, 0.0.3, 0.0.4, 0.0.5, 0.0.5.1, 0.0.5.2, 0.0.5.3, 0.1.5.0, 0.1.5.1, 0.1.5.2, 0.1.5.3, 0.1.5.4, 0.1.5.5, 0.2.0.0, 0.2.0.1, 0.2.0.2, 0.2.0.3, 0.2.0.4, 0.2.0.5, 0.2.0.6, 0.2.0.7, 0.2.0.8, 0.2.0.9, 0.3.0.0, 0.3.0.1, 0.3.0.2, 0.3.1.0, 0.3.1.1, 0.3.2.0, 0.3.3, 0.4.0, 0.4.1, 0.4.2, 0.4.4, 0.4.5, 0.4.5.1, 0.4.5.2, 0.4.5.3, 0.4.5.4, 0.4.5.5, 0.4.5.6, 0.4.5.7, 0.4.5.8, 0.4.5.9, 0.4.5.10, 0.4.5.11, 0.4.5.12, 0.4.5.13, 0.4.6.0
Dependencies base (>4.0 && <5), bytestring, case-insensitive, conduit, containers, directory, extensible-exceptions, hack, hack-handler-simpleserver, hsp, http-types, mtl, old-time, parsec, RefSerialize, stm (>2), TCache, text, transformers, utf8-string, vector, wai, warp, Workflow, xhtml [details]
License BSD-3-Clause
Author Alberto Gómez Corona
Maintainer agocorona@gmail.com
Category Web, Application Server
Source repo head: git clone http://github.com/agocorona/MFlow
Uploaded by AlbertoCorona at 2012-09-15T10:19:41Z
Distributions
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 47343 total (144 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-12-24 [all 8 reports]