Skip to main content

About us

Pylons HQ is made up of a distinct collection of project leaders with expertise going as far back as the beginning of Python web frameworks. Collectively, our technical know-how and modesty have been achieved through the process of making irresponsible errors and decisions. So our aim is to bring fresh and innovative concepts to common web development problems.

Instead of focusing on just one web framework, Pylons HQ will create a collection of associated technologies using the first package from the project which is the Pyramid web framework.

With other packages being included in the collection over a period of time, including higher level applications and components, our hope is that we can develop the project into an ecosystem of well-documented, well-tested components with easy interoperation.

Pylons Project is an open-source body saddled with the development of web application technologies coded in Python. Initially proposed to be a single web framework known as Pylons, the project has taken on the new name of Pyramid after a merger with repose.bfg framework with the Pylons Project now comprising of several related web application technologies.

Pylons Web Framework

Pylons Framework is an open-source application framework for the Web, written in Python. It makes great utilization of the Web Server Gateway Interface standard to support reusability and to divide functionality into different modules. It takes great influence from Ruby on Rails with Webhelpers and Routes which are two of its key components being Python reimplementation of features from Rails.

URL Dispatch

Presently, Routes, a Python reimplementation of the URL dispatcher from Ruby on Rails, is the only extensively used Pylons URL dispatcher. However, it is possible to use any WSGI-compatible URL dispatcher. Routes was specifically created for use within Pylons even though it is a separate library, and its development is still closely in sync with Pylons. Pylons is well-known for possessing the almost-complete stack of third-party tools, thereby shunning the “not-invented-here” spectacle.

HTML Generation

WebHelpers is another part of Ruby on Rails that has been modified for Pylons. It provides URL mapping depending on the configuration of the Routes. Webhelpers also offers some utility functions for creating JavaScript code utilizing the prototype libraries and script.aculo.us. FormBuildandFormEncode are used to generate and validate HTML form with Mako’s inheritance model also being used for form generation.

Dependencies and Installation

Pylons is usually installed through EasyInstall through the Python Package Index (PyPI). This is the official installation method through which a majority of the additional tools are usually installed, including subnet calculating. EasyInstall also takes care of package dependencies where necessary. Some distributions will also have Paste and Pylon packaged but these usually lag the official distribution packages. It is also possible to install Pylons by hand after renaming the .egg file to .zip and then extracting the contents.

Paste is useful in project testing, deployment, and setup. With the common ini configuration format, Paste permits multiple “profiles”, so that developers can make development and deployment setups using the same codebase without unveiling Pylons’ sensitive parts, like the interactive debugger, to production users.

Templating

Myghty used to be the default templating language for Pylons, but it was replaced by Mako in version 0.9.6. Both languages are text-based (not XML-based), and support consists of inheritance and embedding random Python code.

Due to the loosely coupled layers on Pylons, it is possible to use other templating languages. An XML-based templating language known as Genshican be used in place of Myghty or Mako.Object-relational mapping and Database Abstraction

There is no default database library in Pylons. Both SQLAlchemy and SQLObject can be used.