Ophelia 0.1

Thomas Lotze thomas at thomas-lotze.de
Sun Jul 23 00:51:38 CEST 2006

The first release of Ophelia, 0.1, has just been tagged. From README.txt:


Ophelia creates XHTML pages from templates written in TAL, the Zope Template
Attribute Language. It is designed to reduce code repetition to zero.

At present, Ophelia contains a request handler for the Apache2 web server.

Static content

Consider Ophelia as SSI on drugs. It's not fundamentally different, just a
lot friendlier and more capable.

Use Ophelia for sites where you basically write your HTML yourself, except
that you need write the recurring stuff only once. Reducing repetition to zero
comes at a price: your site must follow a pattern for Ophelia to combine your
templates the right way.

Consider your site's layout to be hierarchical: there's a common look to all
your pages, sections have certain characteristics, and each page has unique
content. It's crucial to Ophelia that this hierarchy reflects in the file
system organization of your documents; how templates are nested is deduced
from their places in the hierarchy of directories.

Dynamic content

Ophelia makes the Python language available for including dynamic content.
Each template file may include a Python script. Python scripts and templates
contributing to a page share a common set of variables to modify and use.

Ophelia's content model is very simple and works best if each content object
you publish is its own view: the page it is represented on. If you get content
from external resources anyway (e.g. a database or a version control
repository), it's still OK to use Ophelia even with multiple views per content
object as long as an object's views doesn't depend on the object's type or
even the object itself.

Trying to use Ophelia on a more complex site will lead to an ugly entanglement
of logic and presentation. Don't use Ophelia for sites that are actually web
interfaces to applications, content management systems and the like.


To use Ophelia, you need

- Apache2
- Python 2.3 or better
- mod_python 3.1 or better
- the zope package from Zope3

Ophelia is released under the Zope Public License, version 2.1. You can
access the source code repository at


browse it using ViewCVS at


and download the 0.1 release from


Ophelia is currently used to deliver its author's private web site.


More information about the Python-announce-list mailing list