Apache::Session is a persistence framework whose purpose is to provide session management to Web developers. It is designed to work with Apache and mod_perl, but it does not depend on them and will work with any Web server. This module provides a set of classes that give the developer maximum functionality. Session data can be stored in a database, flat files, or shared memory.
CGI::Application is a Perl framework intended to make it easier to create sophisticated, reusable Web-based applications. This module implements a methodology which can make 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.
Embperl gives you the power to embed Perl code in your HTML or XML/XSLT documents and the ability to build your Web site out of small reusable objects in an OO-style. It can also build taglibs and use caching. You can also take advantage of hundreds of Perl modules which have already been written for such tasks as database access to a growing number of database systems. Embperl has several features especially useful for creating HTML, including dynamic tables, formfield-processing, escaping/unescaping, session handling, and more. Embperl is a server-side tool, which means that it's browser-independent. It can run in various ways: under mod_perl, as a CGI script, or offline.
The HTML::Template module attempts to make using HTML templates simple and natural. It extends standard HTML with a few new tags for variables, loops, if/else blocks and includes. A file written with HTML and these new tags is called a template. Using this module you fill in the values for the variables and loops declared in the template. This allows you to seperate design (the HTML) from the data, which you generate in the Perl script. While there are many other HTML template systems available, this module is simple and fast. It doesn't try to reinvent Perl CGI, it just augments HTML with a few new and very useful abilities.
The Image::Size module for Perl provides a clean interface for fetching image dimensions (and type, when unknown) from graphics files in a wide variety of common formats. It is a pure Perl extension (no C or XS linking required) that has been tested on a variety of UNIX, Linux and BSD systems, as well as MacPerl and Windows ports of Perl. It was designed around and tuned for use in CGI application development, but is useful in other areas as well.
Jellybean is a Perl Object server that allows people to write custom applications following a simple interface and framework. It's conceptually similar to Zope, but has peer communication potential. It has its own tiny Web server which serves static pages, CGIs, or transforms URIs into method calls on objects, and allows users to create their own behavior.
QuickImage is an open-source utility for adding drawings and graphs to your Web applications. It was designed primarily for use with the SteelBlue Application Server, but is general enough to be used in many programming environments. The QuickImage package contains both Java classes that can draw images on the client's browser and a C++ program that can draw images on the Web server. They both interpret the same set of graphics commands, and you only need one version to add drawings to your Web applications.
The Sethi Family Guestbook is a multi-format guestbook script written as a single PHP file that requires no installation. It features page spanning, (optional) private comments, user-selection of number of entries per page to display, multiple guestbook formats (elegant, simple, or standard), and background color. No database is required. It supports image verification using random text as part of a CAPTCHA system. It also uses other techniques to foil spam robots. It supports multiple formats, mangled email display, and a fully customizable interface.