Berkeley DB XML is a native XML database engine for use within your product. Made available as a C++ library with language bindings for Java, Perl, Python, PHP, and Tcl, it integrates directly into your application (it is not a standalone database server). It provides XQuery access into a database of document containers. XML documents are stored and indexed in their native format using Berkeley DB as the transactional database engine.
Eidetic is a middleware library for building database driven applications with Perl and Template::Toolkit. It provides handlers for displaying, editing, searching, and administrating data. It provides an interface-generic way of building db apps allowing Web, command line, or daemon styles of interfaces. It is currently used by several applications, including STP, docsys, and rackview.
Tk::Text::Viewer is a text widget that can display text files under TK. It enable the user to search text and navigate in a Text widget. The reason for creating this module is that it doesn’t require downloading of modules other that Tk, and a need for simple user interaction. The package includes a text viewer demo program that can be used as a stand-alone browser.
News::Overview is a Perl object that manages condensed information about Usenet posts in the overview format. It accepts information from an NNTP XOVER command, and allows for basic searching and sorting of the referenced articles. It was designed to be part of several other news modules.
TCB::Library is a DBIx::Frame object written to keep track of library books at the TCB Group at UIUC. It provides a Web interface for adding books to the library, for users to check out and return them, and for reminder messages to be sent out periodically to list what books are checked out. This is actually a fairly basic function of research groups, but doesn't have a standard software package.
FileHandle::Unget is a Perl module which is a drop-in replacement for FileHandle. It allows more than one byte to be placed back on the input. It supports an ungetc(ORD) which can be called more than once in a row, and an ungets(SCALAR) which places a string of bytes back on the input.