CherryPy


CherryPy is an object-oriented web application framework using the Python programming language. It is designed for rapid development of web applications by wrapping the HTTP protocol but stays at a low level and does not offer much more than what is defined in RFC 7231.
CherryPy can be a web server itself or one can launch it via any WSGI compatible environment. It does not deal with tasks such as templating for output rendering or backend access. The framework is extensible with filters, which are called at defined points in the request/response processing.

Pythonic interface

One of the goals of the project founder, Remi Delon, was to make CherryPy as pythonic as possible. This allows the developer to use the framework as any regular Python module and to forget that the application is for the web.
For instance, the common Hello World program with CherryPy 3 would look like:

import cherrypy
class HelloWorld:
def index:
return "Hello World!"
index.exposed = True
cherrypy.quickstart)

Features

CherryPy implements:
CherryPy doesn't force you to use a specific object-relational mapper, template language or JavaScript library.

Can be used with CherryPy

CherryPy wiki helps choosing a templating language.

Products using CherryPy