Saturday, January 1, 2011

Frameworks

Catalyst
Catalyst is one of the most popular web application frameworks in Perl and has a support for PSGI through Catalyst::Engine::PSGI. There's also psgi branch on Catalyst core to use PSGI by default.
Jifty
Jifty is a full-stack Perl web application framework that comes with continuations, form-based dispatch, ORM and A Pony. Jifty has replaced much of its internals with Plack modules.
CGI::Application
CGI::Application is a CGI.pm-based lightweight web framework. Any CGI::Application based applications can run as a PSGI application using CGI::PSGI and CGI::Application::PSGI.
HTTP::Engine
HTTP::Engine is a micro web application framework and is a "father of PSGI/Plack" since we owe lots of code and ideas. HTTP::Engine itself now has PSGI Interface support as an adapter since 0.03 on CPAN.
Dancer
Dancer is a Sinatra-like micro web application framework and has supported PSGI since version 0.9904.
Mason
Mason allows you to embed code in HTML templates and can now run on any PSGI supported web server using HTML::Mason::PSGIHandler
Squatting
Squatting is a Camping-inspired Web Microframework and has a support for PSGI through Squatting::On::PSGI.
Continuity
Continuity is a Coro based web application libary that supports Continuations to build statefull applications and support PSGI via Coro server since version 1.1.1 on CPAN.
Maypole
Maypole is a Struts-inspired MVC web application frameworks built on top of Class::DBI ORM. Maypole applications can run as PSGI applications using Maypole::PSGI.
Tatsumaki
Tatsumaki is a web application framework built on top of Plack and AnyEvent: natively supports non-blocking I/O through psgi.streaming and psgi.nonblocking, non-blocking HTTP clients, long-poll Comet services and server push.
Mojolicious
Mojolicious is Merb and Sinatra inspired web framework and has zero dependencies to non-core Perl modules. It has a native PSGI adapter since 0.999920 on CPAN.
Other frameworks
There are lots of other individual frameworks that supports PSGI and Plack. Some of them are not available on CPAN but are developed on github: Web::Simple, Angelos, Ark, Schenker, Noe, Kamui and WebNano.

No comments: