CherryPy

CherryPy
Developer(s) CherryPy team
Stable release 5.1.0[1] / March 10, 2016 (2016-03-10)
Written in Python
Operating system Cross-platform
Type Web application framework
License BSD License[2]
Website www.cherrypy.org

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 (from a technical point of view) that the application is for the web.

For instance, the common Hello World program with CherryPy 3 would look like:

import cherrypy

class HelloWorld(object):
    def index(self):
        return "Hello World!"
    index.exposed = True

cherrypy.quickstart(HelloWorld())

Features

CherryPy implements:

CherryPy doesn’t force you to use a specific object-relational mapper (ORM), template language or JavaScript library.

Can be used with CherryPy

Object-relational mappers

Templating languages

CherryPy wiki helps[24] choosing a templating language.

JavaScript libraries

Products using CherryPy

References

External links

This article is issued from Wikipedia - version of the Saturday, April 23, 2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.