Generated by GPT-5-mini| Pylons (web framework) | |
|---|---|
| Name | Pylons |
| Author | Ben Bangert, Chris McDonough |
| Developer | Pylons Project |
| Released | 2005 |
| Written in | Python |
| Operating system | Cross-platform |
| License | MIT License |
Pylons (web framework) is a lightweight web application framework for the Python platform originating in the mid-2000s. It emphasized composability, minimalism, and reuse of existing library components from projects such as WebOb, Repoze, and Paste. The project attracted contributors from a range of open-source communities including developers involved with TurboGears, Django, and Zope ecosystems.
Pylons began as an effort led by Ben Bangert and Chris McDonough and was influenced by libraries and projects such as WebOb, Paste, Routes, Repoze, and Beaker. Early development occurred alongside work by contributors active in TurboGears, Django discussions and the Zope community, sharing ideas with maintainers of SQLAlchemy, Mako, and Genshi. Over time Pylons' maintainers coordinated with members of the Python Software Foundation and with maintainers of mod_wsgi and uWSGI to optimize deployment. The project later merged some efforts into the Pyramid initiative, involving key contributors from Zope Corporation and the broader open-source community.
Pylons was designed as a minimal core that delegates functionality to established libraries like WebOb, Routes, SQLAlchemy, and Mako. Its architecture favored WSGI middleware such as Paste and WSGI servers like mod_wsgi, uWSGI, and Gunicorn for hosting. Routing used principles from Routes and the framework encouraged using ORMs such as SQLAlchemy or connectors to PostgreSQL and MySQL. The design emphasized separation of concerns similar to patterns used in MVC projects like Ruby on Rails, while integrating templating approaches exemplified by Genshi and Mako.
Pylons provided a set of components rather than a monolithic stack, relying on WebOb for request and response objects, Routes for URL dispatch, and optional use of SQLAlchemy or Elixir for persistence. For templating it supported Mako and Genshi, and for sessions it integrated Beaker. Middleware and deployment leveraged Paste, mod_wsgi, and uWSGI; testing workflows referenced tools like nose and pytest. Security features drew on practices from Open Web Application Security Project discussions and patterns popularized by Django and Ruby on Rails communities.
Development in the Pylons ecosystem used version control systems and tools maintained by organizations like GitHub, with continuous integration patterns influenced by projects hosted under the Python Software Foundation and contributors from Red Hat, Canonical, and other firms. Build and packaging routines followed setuptools conventions and packaging recommendations from PyPI and the Python Packaging Authority. Debugging and profiling adopted integrations with Werkzeug-style utilities, test runners like nose and pytest, and deployment automation influenced by Fabric and Ansible playbooks from sysadmin communities.
Pylons attracted adopters in organizations that used Python for web services and integrated libraries like SQLAlchemy, Mako, and WebOb. The community overlapped with contributors to TurboGears, Django, and Zope projects, and engaged in conferences such as PyCon and regional gatherings hosted by the Python Software Foundation. Corporate and academic users included developers from companies such as Canonical, Red Hat, and institutions that relied on PostgreSQL and MySQL for data storage. Mailing lists and issue trackers hosted discussions involving maintainers who later contributed to Pyramid and related initiatives.
Initial releases in the mid-2000s emphasized modularity and interoperability with libraries including WebOb, Routes, and SQLAlchemy. Subsequent development focused on stabilization, documentation, and integration testing with servers like mod_wsgi and uWSGI. Roadmap discussions frequently intersected with efforts around Pyramid and with maintainers from Zope Corporation and the Python Software Foundation, shifting emphasis toward consolidated tooling and long-term maintenance best practices advocated in the open-source community.
Compared with Django, Pylons prioritized composability and minimal core over the batteries-included philosophy of Django and its admin ecosystem. Against TurboGears, Pylons shared heritage and many contributors but diverged on default component selection and core surface area. The Pylons approach resembled the design trade-offs in Flask regarding lightweight cores and middleware ecosystems, while differing from monolithic stacks like Zope and frameworks championed in enterprise settings such as those used by Red Hat and Canonical projects.
Category:Python web frameworks