About Lemon

"It is better to have a flexible module that can be used intuitively than an all-singing, all-dancing framework that no-one can be bothered to learn."

-- James Gardner


Lemon is a suite of Python components for developing object-oriented, web-based applications in a familiar way without the need to learn a framework. The suite uses well known design patterns and includes popular features such as:

  • Authorisation - Restrict access and manage users.
  • Database Abstraction - Database independant portability using a simple SQL abstraction layer. Automatic type conversions.
  • Session Management - Peristant storage of data via SQL/text files.
  • Mail - Simple methods to send email.
  • Forms - Construction of persistant forms/wizards.
  • Templates - For the easy display of data as HTML/XML.

Lemon covers common needs of web developers with a modular architecture where components can be used together or independently. It is designed to run on any platform or web server supporitng Python and does not require administrator priveldges to install.

To see the full power of Lemon take a look at the examples.

The Lemon package contains a database and a webserver so that everything you need to run a web site is available in the core download. This means that if you decide not to use existing technologies such as a Apache or MySQL you can still run full web services with only Python and the modules included with Lemon.

Want to help?

Feel free to use any component of the modules in your own code (subject to the appropriate licence). If you have a module you think would fit well with the Lemon package please let us know. We would like Lemon to grow into a similar repositry to PHP PEAR so the authors welcome contributions.

More Information

More information on Lemon, its design principles and overall aims, is available in the Lemon manual.

© 2002-2003 James Gardner