This post is the first in a series taking a closer look at the variety of one-click installers available with the WebFaction control panel. Today, we’re starting close to our Python roots, by taking a look our Python web application tool belt.
We have one-click installers for several popular ways of building a web application with Python: CherryPy, Django, Pyramid, TurboGears, Zope and Plone, and mod_wsgi:
CherryPy is an object-oriented web framework that affords flexibility when it comes to choosing templating, database interaction, and more. CherryPy has a long history with WebFaction, as the control panel and API started out as CherryPy applications.
Django is far and away the most popular Python one-click installer, and it comes as no surprise, thanks to its “batteries included” approach, extensive documentation, and enormous ecosystem of pluggable apps. Django’s all-in-one package includes a database ORM, a templating engine, and an administration interface.
See the WebFaction Django docs for a “getting started” guide and various configuration and troubleshooting sections.
Pyramid, fomerly known as repoze.bfg, is a web framework that’s often discribed as “minimalist.” Much like CherryPy, or in contrast to Django, Pyramid makes few assumptions about what components your web application might use, such as templating engines or databases.
See the WebFaction Pyramid docs for a deployment example, and a couple of WebFaction-specific Pyramid instructions.
TurboGears brings together several separate libraries to form a web framework. For example, TurboGears uses SQLAlchemy, a Python SQL toolkit, to provide persistence with a database, or Genshi for templating.
See the WebFaction TurboGears docs for a deployment example.
Zope and Plone
Zope is an object-oriented web application coupled with a unique persistence layer, the Zope Object Database, that stores actual Python objects. Plone is a comprehensive content management system that runs on Zope. The one-click installer provides both, but creating a Plone site is optional.
See the WebFaction Zope and Plone documentation for instructions on setting up a Plone site, and detailed Zope and Plone administration tasks.
WSGI, the Web Server Gateway Interface, is a standard interface for Python web applications (as defined in PEP 333). WSGI provides a common way for Python web applications to communicate with web servers. Most Python web frameworks you know and love are WSGI compatible. mod_wsgi is a module that adds WSGI support to the Apache web server.
The mod_wsgi one-click installer provides an Apache server with mod_wsgi installed and configured. The mod_wsgi one-click installer is especially handy for situations where you want to use a WSGI-compatible framework that doesn’t already have a one-click installer, like Flask and Bottle, or something of your own creation.
Python has a broad and capable family of web frameworks, so there’s sure to be one that has the features or characteristics you need. If one of these tools has piqued your interest, try its one-click installer. If you need any help, join us in the Q&A Community.