% svn co http://svn.w4py.org/Examples/CheetahKit
What does CheetahKit do?
CheetahKit adds a plugin to Webware which tells webware that any files ending with ".tmpl" should be processed by CheetahKit. When CheetahKit gets such a request, it gets the .tmpl file, compiles it into a .py file and stores it in WebKit/Caches/CheetahKit/. Then the .py file is compile and returned to Webware as a servlet. Very often problems with your template compiling can be debugged by reading the Python code that it generated. You can find this code in the Caches folder mentioned above.
In addition to compiling templates when they are needed, templates that have not been changed are cached in .py and .pyc form so they are fast to load the next time.
One thing to watch out for with this CheetahKit is inheriting templates from other templates. CheetahKit will only compile a template when WebKit requests that .tmpl file. If your template inherits from another template, the parent template is never called by WebKit, so it is never compiled. If you use inheritence, you will still have to compile the parent templates manually.