pyratemp is probably (one of) the smallest complete template-engines for Python (with about 500 LOC). It has a very small set of special syntax in the templates. This reduces complexity and the probability of bugs and lead to an easy-to-use and intuitive user-interface. It uses embedded Python-expressions (in a "sandbox"), is well documented, has full Unicode-support, and produces very good error-messages, which is very useful when creating new templates.
Nevow is a Web application construction kit. It is designed to allow the programmer to express as much of the view logic as desired in Python, and includes a pure Python XML expression syntax, named stan, to facilitate this. It also provides rich support for designer-edited templates, using a very small XML attribute language to provide bi-directional template manipulation capability.
Twisted Web includes an HTTP/1.0 protocol implementation for both servers and clients. It also includes a resource framework for implementing rich, dynamic web applications. It includes support for authentication either via HTTP AUTH, session URLs, or session cookies. It supports CGIs and a custom PB-based distribution mechanism for serving content from separate, persistent processes. It includes SOAP and XML-RPC support for both clients and servers. It also makes it particularly easy to deploy new servers with novel or ephemeral use-cases, often with only a single short command.
txOpenID is an implementation of the OpenID Identity Provider specification, written using Twisted Web and Divmod's Nevow. It reads authentication data and user Web sessions out of a MySQL database using MySQLdb and Twisted Enterprise's adbapi layer. txOpenID currently supports version 1.1 of the OpenID specification.
Chouwa is a library that aims to ease the integration of Jinja2 into Django projects. It does this by providing equivalents of some of django's helper methods that depend on its template subsystem, as well as providing built-in globals and filters and providing a mechanism for user applications to introduce their own globals and filters.