Bare XML is a "bare" XML parser with all primary parsing done via a simple state engine with about 20 or so different states. A tree structure is created during parsing, with all node names and values linked via pointers directly into the original text buffer. As such, Bare XML is extremely fast and simple. Currently, the parser is available in a perl module with Perl glue to turn the created tree into a Perl hash tree. The module name is XML::Bare.
Templayer is an HTML templating library for Python that offers an alternative to embedding code within the HTML or embedding HTML within code. Instead, Templayer adds a small amount of syntax to each and keeps the two separate and coherent. It also helps to promote secure Web application development by escaping strings by default, and by not trying to interpret code within template files.
CGI::ContactForm is a Perl module that generates a contact form for the Web and sends a message to a predestinated recipient. Unlike many form-to-mail programs, it's limited to this single purpose, but it allows you to set up a decently designed form with a minimum of effort. In other words, it's simple to use rather than flexible, even if there are quite a few customization possibilities.
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.
Webwidgets is a framework for writing Web applications as if they were desktop applications. It employs the same programming paradigm as GTK, Qt, etc. with a tree of widgets with callbacks for events such as a button press. It encapsulates page loads, session data, form handling, etc. into widgets with their own state. Webwidgets is focused on code reuse, rapid prototyping, and separation between graphic design, interaction design, and application logic. It is implemented in Python and uses the Webware application server framework.
CGI.pm uses objects to create Web fill-out forms on the fly and to parse their contents. Instead of remembering the syntax for HTML form elements, developers can just make a series of Perl function calls. An important fringe benefit of this is that the value of the previous query is used to initialize the form, so that the state of the form is preserved from invocation to invocation.
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.
Lumbricidae WORM (Widget Object Relational Mapper) is an SQLAlchemy binding for Webwidgets. SQLAlchemy presents database tables and rows as Python classes and objects. Webwidgets is a framework for writing Web applications as if they were desktop applications. WORM lets you easily map Webwidgets input fields, tables, and other widgets to database mapped classes, instances, and attributes. It requires the Argentum SQLAlchemy convenience library.