Python Microframeworks
This is important category. There so many good small Python frameworks ... an embarrassment of riches.
Some are so small and quick that they can be deployed as CGI and still provide plausible performance.
Bottle
A single 140K file, of pure dynamite !!!
See PythonBottle
Pocoo Packages
Pocoo.org is small phenomena in itself. It has an amazing selection of offerings ...
The Pocoo Team consists of people from the Python community that are working under one umbrella on various Python libraries and applications ...
Our Projects - Among our most popular projects are:
Flask micro web framework
Jinja 2 template engine
Pygments syntax highlighting package
Sphinx document processor
Werkzeug WSGI toolkit
Each project has a fair sized community of its own.
In fact, PythonTrac may switch from Genshi to Jinja, a big deal since Genshi is developed by Edgewall.
http://www.pocoo.org/projects/#project-hub
https://pypi.python.org/pypi?%3Aaction=search&term=pocoo&submit=search
Armin Ronacher's Thoughts and Writings - http://lucumr.pocoo.org/
Pocoo BBS
https://pypi.python.org/pypi/Pocoo/0.1.5
Pocoo is an open-source bulletin board written in Python. It provides an advanced plugin system with a component architecture which allows other developers to modify Pocoo to their liking without the need to touch existing source code.
Because it uses SQLAlchemy, it is possible to use either MySQL, SQLite, Oracle or Postgres as storage backend
Flask
Need to ex-spend some effort here ...
Flask is a microframework for Python based on Werkzeug, Jinja 2 and good intentions.
Setup says: install_requires=[ 'Werkzeug>=0.7', 'Jinja2>=2.4', 'itsdangerous>=0.21', 'click>=2.0', ]
Will deploy as CGI - http://flask.pocoo.org/docs/0.10/deploying/cgi/
Jinja2
Jinja2, one of my favorite template engines.
Jinja2 is a full featured template engine for Python. It has full unicode support, an optional integrated sandboxed execution environment ...
Werkzeug
Widely used.
Werkzeug started as a simple collection of various utilities for WSGI applications and has become one of the most advanced WSGI utility modules.
It includes a powerful debugger, fully featured request and response objects, HTTP utilities to handle entity tags, cache control headers, HTTP dates, cookie handling, file uploads, a powerful URL routing system and a bunch of community contributed addon modules.
http://werkzeug.pocoo.org/docs/0.10/
http://werkzeug.pocoo.org/docs/0.10/tutorial/
Also see: PythonServers#Werkzeug
Click
Not to mention a powerful command/console creation kit.
Click is a Python package for creating beautiful command line interfaces in a composable way with as little code as necessary. It’s the “Command Line Interface Creation Kit”. It’s highly configurable but comes with sensible defaults out of the box.
https://github.com/mitsuhiko/click
Sphinx
... and as if that weren't enough ....
Sphinx is a tool that makes it easy to create intelligent and beautiful documentation, written by Georg Brandl and licensed under the BSD license.
Tornado
Rarely gets mentioned as a micro-framework but it includes a template engine, etc. Very similar to Bottle in fact.
See PythonTornado
Top Rankings
From http://www.slideshare.net/r1chardj0n3s/web-microframework-battle
This is great, however python 3 is now supported in Flask which would give it a +2 compensating for the -1. The rankings now look like:
Bottle +7 | http://bottlepy.org/docs/dev/index.html |
Pesto +6 | http://www.ollycope.com/software/pesto/ |
Flask +5 | http://flask.pocoo.org/ |
Other Contenders
Itty +4 | https://github.com/toastdriven/itty/ |
web.py +1 | http://webpy.org/ |
cherrypy 0 | http://www.cherrypy.org/ |
bobo -2 | http://bobo.readthedocs.org/en/latest/ |
aspen.io -5 | https://github.com/gratipay/aspen-python |
Others
Morepath | http://morepath.readthedocs.org/en/latest/ | |
Object Web | https://github.com/aisola/ObjectWeb | |
Pecan | http://www.pecanpy.org/ | |
Pylons / Pyramid | http://www.pylonsproject.org/ | |
Tornado | http://www.tornadoweb.org/en/stable/ | |
Wheezy Web | http://pythonhosted.org/wheezy.web/ | |
Klein | http://klein.readthedocs.org/en/latest/ | Depends on PythonTwisted and PythonTwistdServer |
Cyclone | http://cyclone.io/ | |
Falcon | http://falconframework.org/ | |
Turbo Gears | http://turbogears.org/ | |
web2py | http://web2py.com/ | |
kiss.py | https://github.com/stanislavfeldman/kiss.py | |
Nagare | http://www.nagare.org/ |
Also see:
http://codecondo.com/14-minimal-web-frameworks-for-python/
Semantic ?
Cubic Web | http://www.cubicweb.org/ | From Narval. Semantic Web ? |
Cubic Web at Pypi | https://pypi.python.org/pypi/cubicweb/3.19.5 | This bad boy is huge, over 10 meg |
Cubic Web search at Pypi | https://pypi.python.org/pypi?%3Aaction=search&term=cubicweb&submit=search |
- cgi+wsgiref +3
XMLRPC
How secure ?
Pyro | http://pythonhosted.org/Pyro4/ | PythonXMLRPC#Pyro |
RPyC | http://rpyc.readthedocs.org/en/latest/ | PythonXMLRPC#RPyC |