There are quite a few good Python based web application frameworks available (Zope, CherryPy, Django to name a few) but they all focus on providing a fairly complete framework that performs well and is very versatile. These are desirable features of course but implementing this well comes with a price: complexity. It might be fairly simple to install and use these frameworks but really understanding them is not that easy. What I am looking for is a framework that can be thoroughly understood in little time so that we may focus on the how to implement important aspects of a web application framework and learn from the experience.
The Erica web application framework is my attempt at providing a step by step documented implementation of a web application server in Python. These pages document the parts we develop and you may want to follow along on my Start Small blog, which is also open for comments.
In designing and implementing our framework we focus on
Some of the topics we will cover are listed below. Each will probably have it's own dedicated page and Blog entries and more topics might be added in the future. As this is a work in progress not all details are filled in yet.
How to implement a basic application server with rigorous input checking.
How to safely implement session management.
Adding basic authentication
How to display and process forms