Frameworks that run on WSGI
This is an alphabetic list of frameworks known to support WSGI. The
level and nature of their support sometimes varies, as do the APIs
they provide. The descriptions here focus on that, and not the flavor
of the frameworks themselves. If you want to know more, follow the
links!
Note
Some frameworks really only support using pluggable WSGI
servers, which means you get a number of options from HTTP, FastCGI,
SCGI, threaded, forking, etc. However, not all such frameworks live
well alongside other frameworks in the same process, or may require
extra configuration. This is what is meant by noting when a
framework supports WSGI servers, vs. a framework that supports a
greater number of WSGI compositions, especially the kind of things
noted in Middleware and libraries for WSGI Please feel free to expand on
the list, the descriptions, or to make corrections.
- bobo
- Bobo is a light-weight framework. Its goal is to be easy to use and
remember.
- Bottle
- Bottle is a fast and simple micro-framework for small
web-applications. It offers request dispatching (Routes) with url
parameter support, Templates, key/value Databases, a build-in HTTP
Server and adapters for many third party WSGI/HTTP-server and
template engines. All in a single file and with no dependencies
other than the Python Standard Library.
- CherryPy
- CherryPy is a pythonic, object-oriented web development framework.
Includes support for WSGI servers. CherryPy 3 includes better
support for living alongside other WSGI frameworks, applications,
and middleware.
- Django
- Includes support for WSGI servers
- Flask
Flask is a microframework for Python based on Werkzeug, Jinja 2
and good intentions.
It inherits its high WSGI usage and compliance from Werkzeug.
- notmm
- The notmm toolkit is a fork of Django that doesn’t get in your
way. Features includes improved WSGI support (Paste), SQLAlchemy,
and very few developers! ;-)
- Pyramid
- Merger of the Pylons and repoze.bfg projects, Pyramid is a
minimalist web framework aiming at composability and making
developers paying only for what they use.
- QWeb
- Another WSGI framework (not sure what the distinguishing features
are)
- repoze.zope2
- A module that implements an analogue of the Zope 2 ZPublisher,
with some major simplifications and cleanups. Its core mission is
to allow publishing existing Zope2 applications in a WSGI
environment that externalizes some of the features of “classic”
Zope2 into middleware.
- TurboGears
- Database-driven app in minutes; inherits its WSGI support from
CherryPy.
- web.py
- Makes web apps. A small RESTful library.
- web2py
- A full stack framework includes its own Database Abstraction Layer
(with support for SQLite, MySQL, PostgreSQL, MSSQL, DB2, Informix,
Oracle, FireBase, Ingres and Google App Engine), its own template
laguage, and a web based IDE. web2py itself is a WSGI app. Not
related to web.py.
- weblayer
- weblayer is a lightweight, componentised package for writing WSGI
applications.
- Zope 3
- The venerable Python web framework, recreated anew in Zope 3, and
now a WSGI application. It seems to have some WSGI bits deep
inside the publisher, but they aren’t really documented at this
time.
Deprecated Systems
These systems still exist but got replaced by others or are
unmaintained.
- Clever Harold
- Clever Harold is an ambitious web framework. It has many features
for rapid, reusable, and reliable web application
construction. Clever Harold is a complete WSGI framework. To build
an application, you pick and choose the servers and components
that fit your needs.
- Colubrid
- Colubrid is a WSGI publisher which simplifies python web
developement. Colubrid is not a framework :-) Although some
people like the idea of having found a framework in colubrid. All
colubrid does for you is parsing form data / url parameters /
cookies and providing a url dispatcher. Colubrid was replaced by
Werkzeug.
- Nettri
- Nettri is a newcomer of Python World. It is under heavy
development. Features includes CMS, Own template Engine, modules
and more coming.
- Paste WebKit
- An implementation of the Webware
servlet API using Paste infrastructure and WSGI.
- pycoon
- Pythonic web development framework based on XML pipelines and WSGI
- Pylons
Full-stack Python web development framework combining the very
best from the worlds of Ruby, Python and Perl.
Pylons has been superseded by pyramid .
- repoze.bfg
A Python WSGI-compliant web framework inspired by Zope, Pylons,
and Django with built-in security and templating.
repoze.bfg was renamed pyramid and moved under the Pylons
project.
- RhubarbTart
- A pure-WSGI dispatcher and simple framework, inspired by CherryPy.
- simpleweb
- A simple Python WSGI-compliant web framework inspired by Django,
TurboGears, and web.py.
- skunk.web
- A totally WSGI-ified version of SkunkWeb.
- Wareweb
- A rethinking of the Webware/WebKit servlet model, in a pure-WSGI
framework. Not used widely.
- WebStack
- WebStack is a package which provides a simple, common API for
Python Web applications, allowing such applications to run within
many different environments with virtually no changes to
application code.