mod_perl logo perl icon
previous page: Apache/Perl Modulespage up: Productsnext page: mod_perl Related Software

Application Servers and Toolkits based on mod_perl






The mod_perl Developer's Cookbook

The mod_perl Developer's Cookbook

By Geoffrey Young, Paul Lindner, Randy Kobes
mod_perl Pocket Reference

mod_perl Pocket Reference

By Andrew Ford
Writing Apache Modules with Perl and C

Writing Apache Modules with Perl and C

By Lincoln Stein, Doug MacEachern
Embedding Perl in HTML with Mason

Embedding Perl in HTML with Mason

By Dave Rolsky, Ken Williams
mod_perl2 User's Guide

mod_perl2 User's Guide

By Stas Bekman, Jim Brandt
Practical mod_perl

Practical mod_perl

By Stas Bekman, Eric Cholet


Table of Contents

Description

There are several application servers and toolkits available designed to run under mod_perl, which might provide you with inline-Perl coding, or MVC (Model/View/Controller) frameworks.

You probably want to look at Choosing a Templating system for more information and in-depth analysis of some of the ones listed here.

The following frameworks are sorted alphabetically.



TOP

Apache::ASP

Apache::ASP (http://www.apache-asp.org/) provides an Active Server Pages port to the Apache Web Server with Perl scripting only, and enables developing of dynamic web applications with session management and embedded perl code. There are also many powerful extensions, including XML taglibs, XSLT rendering, and new events not originally part of the ASP API



TOP

Apache::PageKit

Apache::PageKit (http://pagekit.org/) is a web application framework that uses HTML::Template and XML to separate the Model, View, Content and Controller. Provides elegant solutions to many difficult web programming problems, including session management, language localization, authentication, form validation, and co-branding.



TOP

AxKit

AxKit (http://axkit.org/) is an XML Application Server for Apache. It provides on-the-fly conversion from XML to any format, such as HTML, WAP or text using either W3C standard techniques, or flexible custom code. AxKit also uses a built-in Perl interpreter to provide some amazingly powerful techniques for XML transformation.



TOP

The bivio OLTP Platform (bOP)

The bivio OLTP Platform (http://www.bivio.biz/hm/why-bOP) (bOP) is a declarative, multi-layered Perl application development framework. Adapters have been written for Apache/mod_perl, sendmail, Oracle, and PostgreSQL. The Model layer generates SQL for CRUD, lists, and HTTP forms. Views are content-independent hierarchies of widgets. Tasks control security, execution order, and state transitions. Facades map qualified names to URLs, strings, fonts, colors, icons, files, and views. bOP provides a full-suite of services including dynamic tracing, configuration, logging, class loading, type hierarchy, unit testing, and acceptance testing.



TOP

Catalyst

Catalyst is an elegant web application framework, extremely flexible yet extremely simple. It's similar to Ruby on Rails, Spring (Java), and Maypole, upon which it was originally based. Its most important design philosophy is to provide easy access to all the tools you need to develop web applications, with few restrictions on how you need to use these tools. However, this does mean that it is always possible to do things in a different way. Other web frameworks are initially simpler to use, but achieve this by locking the programmer into a single set of tools. Catalyst's emphasis on flexibility means that you have to think more to use it. We view this as a feature. For example, this leads to Catalyst being more suited to system integration tasks than other web frameworks.

Intro document http://search.cpan.org/~jrockway/Catalyst-Manual-5.700501/lib/Catalyst/Manual/Intro.pod

Main site page http://catalyst.perl.org/wiki



TOP

CGI::Application

CGI::Application is intended to make it easier to create sophisticated, reusable web-based applications. This module implements a methodology which, if followed, will make your web software easier to design, easier to document, easier to write, and easier to evolve.

CGI::Application builds on standard, non-proprietary technologies and techniques, such as the Common Gateway Interface and Lincoln D. Stein's excellent CGI.pm module. CGI::Application judiciously avoids employing technologies and techniques which would bind a developer to any one set of tools, operating system or web server.

There's a good article on perl.com about this framework http://www.perl.com/pub/a/2001/06/05/cgi.html.



TOP

DataBreeze Web Database Platform

DataBreeze is written entirely in Perl and utilizes mod_perl within Apache to speed performance. Feedback from the Perl/mod_perl/Apache community is important. You may download the software for evaluation at http://www.databreeze.com or simply logon and try DataBreeze directly online.

DataBreeze is very different from typical development tools because it utilizes a pre-built application framework that requires no programming. DataBreeze provides a template environment for building database applications that list, search, explore and edit relational data. The system includes integrated menus, forms, tree-views, security, session/state management and more, all in a Web Browser. DataBreeze can also be extended through the use of Event programs using Perl.

This is not free software but nothing is hidden, the complete Perl source code is included so that you may explore how it works.



TOP

Embperl

Embperl (http://perl.apache.org/embperl/) is a system for building dynamic websites with Perl. It gives you the power to embed Perl code in your HTML documents and the ability to build your Web site out of small reusable objects in an object-oriented style. You can also take advantage of all the usual Perl modules, (including DBI for database access) use their functionality and easily include their output in your web pages. Embperl has several features which are especially useful for creating HTML, including dynamic tables, form field processing, URL escaping/unescaping, session handling, and more.



TOP

Gantry

Gantry (http://www.usegantry.org) is a web application framework for Apache/mod_perl, CGI and Fast-CGI. Gantry's object oriented design allows for a pragmatic, modular approach to URL dispatching. Gantry supports MVC and initiates rapid development, offering an organized coding scheme for web applications.

It can take advantage of its sister project Bigtop, which allows you to describe the data of your application and have it generate or regenerate your database schema and module objects without destroying the portions you have customized.

Gantry also has a robust configuration abstraction layer Gantry::Conf that allows you to change how your application retrieves its configuration data without requiring any code changes.



TOP

Interchange

Interchange (http://www.icdevgroup.org/) is a flexible, high performance application server that handles state management, authentication, session maintenance, click trails, filtering, URL encodings, security policy. It's made up of the following components: database abstraction layer, generic templating system, transaction routing rules, customer information object, universal localization scheme, security blackout definition, profiles, filters, search language, and session management.

Some of Interchange's many modules are transaction management, pricing, personalization, payment processing, reporting, customer service, and search.



TOP

Jifty

Jifty is a way to build web applications. Homepage http://jifty.org/view/HomePage



TOP

Mason

Mason (http://www.masonhq.com/) is a powerful Perl-based web site development and delivery engine. With Mason you can embed Perl code in your HTML and construct pages from shared, reusable components. Mason solves the common problems of site development: caching, debugging, templating, simulating browser conditions, maintaining development and production sites, and more



TOP

Maypole

Maypole is a Perl framework for MVC-oriented web applications, similar to Jakarta's Struts. Maypole is designed to minimize coding requirements for creating simple web interfaces to databases, while remaining flexible enough to support enterprise web applications.

Homepage http://maypole.perl.org/



TOP

OpenInteract

OpenInteract (http://www.openinteract.org/) is a web application environment written in perl and geared to run on the Apache web server using the mod_perl plugin module. The environment is built to be not only friendly to people editing and changing a website's content, but also for the developers who can write code (or complex templates) and create entire applications.



TOP

OpenFrame

OpenFrame (http://openframe.fotango.com/) is an open source application framework for distributed media applications. What all this buzzword-compliant mumbo-jumbo really means is that with OpenFrame you can write a single application for multiple downstream clients (ie, Web, WAP, iDTV, Email) and not have to worry about much except the presentation.



TOP

PLP

PLP (http://plp.juerd.nl/) is yet another Perl embedder, primarily for HTML documents. Unlike with other Perl embedders, there is no need to learn a meta-syntax or object model: one can just use the normal Perl constructs. PLP runs under mod_perl for speeds comparable to those of PHP, but can also be run as a CGI script.



TOP

The Template Toolkit

The Template Toolkit (http://template-toolkit.org/) is a fast, powerful and easily extensible template processing system written in Perl. It is ideally suited (but not limited) to the creation of static and dynamic web content. The Apache::Template module provides an Apache/mod_perl interface to the Template Toolkit, providing a quick and simple way to integrate its processing power into your web site.



TOP

Uttu

Uttu (http://uttu.tamu.edu/) is a web-application driver that provides support for writing application frameworks. This support includes configuration, database connectivity, caching, uri-to-filename translation, and application installation. Uttu makes working with multiple virtual hosts and HTML::Mason, Template Toolkit, or AxKit almost trivial.






TOP
previous page: Apache/Perl Modulespage up: Productsnext page: mod_perl Related Software