Coding

CherryPy – Simple Python Web Framework

CherryPy is a mature, open source, minimalist, Python object-oriented web framework. It’s designed for rapid development of web applications.

The software allows developers to build web applications in much the same way they would build any other object-oriented Python program. This results in smaller source code developed in less time.

CherryPy has four API layers; the application layer, the environment layer, the extension layer, and the core layer.

Key Features

  • Easy to understand.
  • Reliable, HTTP/1.1-compliant, WSGI thread-pooled webserver. CherryPy supports the WSGI interface defined in PEP 333 as well as its updates in PEP 3333. Supports: Apache, IIS, lighttpd, mod_python, FastCGI, SCGI, and mod_wsgi.
  • Easy to run multiple HTTP servers (e.g. on multiple ports) at once.
  • A powerful configuration system for developers and deployers alike. CherryPy comes with a fine-grained configuration mechanism and settings can be set at various levels.
  • A flexible plugin system. CherryPy plugins hook into events within the server process — into server startup, server shutdown, server exiting, etc. — to run code that needs to be run when the server starts up or shuts down. CherryPy’s backbone consists of a bus system implementing a simple publish/subscribe messaging pattern.
  • Built-in tools for caching, encoding, sessions, authentication, static content, and many more. CherryPy implements a simple caching system as a pluggable Tool.
  • Swappable and customizable.
  • A complete test suite for core functionality and associated framework which can be used to test CherryPy applications.
  • Built-in profiling, coverage, and testing support.
  • A native mod_python adapter.
  • External library, ws4py, supports WebSocket.
  • Architecture makes it easy to integrate common database interfaces such as the DB-API specified in PEP 249, and HTML templates such as Mako and Jinja2.
  • Helper class to ease writing functional tests.
  • Runs on Python 2.7+, 3.4+, PyPy, Jython and Android.

Website: cherrypy.readthedocs.io/en/latest/
Support: GitHub Code Repository
Developer: CherryPy Team
License: BSD 3-Clause “New” or “Revised” License

CherryPy is written in Python. Learn Python with our recommended free books and free tutorials.


Related Software

Python Application Servers
TornadoWeb framework, web server, and asynchronous networking library
GunicornPython WSGI HTTP Server
Phusion PassengerWeb server and application server for Ruby, Python and Node.js
uWSGIAims at developing a full stack for building hosting services
TwistedNetworking engine supporting numerous protocols such as a web server
ZopeZope stands for "Z Object Publishing Environment"
CherryPyPythonic, object-oriented web framework

Read our verdict in the software roundup.

Best Python Micro Frameworks
FlaskHugely popular microframework based on Werkzeug and Jinja2
FastAPIWeb framework for building APIs
StarletteLightweight ASGI framework/toolkit
aiohttpAsynchronous HTTP client/server for asyncio and Python
SanicWeb server and web framework
FalconBuild cloud APIs, smart proxies, and app backends
QuartWeb microframework based on Asyncio
PyramidStart small, finish big, stay finished framework
BottleFast, simple and lightweight WSGI micro web framework
ChalicePython Serverless Microframework for AWS
CherryPyMature, minimalist, Python object-oriented web framework
TurboGearsHybrid framework acting as a Full Stack framework or Microframework
QuixoteAimed at sites where complex programming is required
KleinMicro-framework for developing production-ready web services with Python
circuitsLightweight event driven application framework
ClasticFunctional web framework
HugMake developing Python driven APIs as simple as possible

Read our verdict in the software roundup.


Best Free and Open Source Software Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.

This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk.

You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more.

Know a useful open source Linux program that we haven’t covered yet? Let us know by completing this form.
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments