ClearSilver is a high-performance, powerful, and language-neutral HTML template system. It enforces a separation between presentation code and application logic which makes writing, debugging, and maintaining Web pages easier. It can be used from C/C++, Python, Perl, Java, and Ruby. It runs on Windows and Unix.
CmDO (pronounced "commando") is a tool that makes it easier to build other tools. It selectively exposes Python modules and functions as a complete command line interface. Specifically, CmDO finds modules in standard locations, interprets command line arguments, invokes functions, imports modules on demand, and supplies help. It also manages documentation resources containing structured text.
Construct is a Python library for declaratively defined data structures, called "constructs". These constructs can both parse data into an object and build an object into data. Constructs handle fields of either byte or bit granularity, structs, unions, sequences, repeaters, adapters, validators, switching, pointers, on-demand (lazy) parsing, and many more. The library defines a large number of primitive constructs, as well a large inventory of file formats and network protocols.
EZ Reusable Objects (EZRO) is a Web application that can be used by non-technical staff to manage content as "objects." Content objects containing text, video, and audio can be shared, modified, and re-styled to appear via a traditional Web site, an on-line course, an innovative "Coach," or as a community of interest site. It is highly scalable and can be used for public Web sites, secure environments, and private intra/extranets.
EmPy is a system for embedding Python expressions and statements in template text. It takes an EmPy source file, processes it, and produces output. This is accomplished via expansions, which are special signals to the EmPy system and are set off by a special prefix (by default the at sign, '@'). It can expand arbitrary Python expressions and statements in this way, as well as a variety of special forms. Textual data not explicitly delimited in this way is sent unaffected to the output, allowing Python to be used in effect as a markup language. Also supported are callbacks via hooks, recording and playback via diversions, and dynamic, chainable filters. The system is highly configurable via command line options and embedded commands.
Gnosis Utils contains several Python modules for XML processing, plus other generally useful tools: xml.pickle (serializes objects to/from XML, API compatible with the standard pickle module), xml.objectify (turns arbitrary XML documents into Python objects), xml.validity (enforces XML validity constraints via DTD or Schema), xml.indexer (full text indexing/searching), and many more.