Awesome Pyramid

A curated list of awesome Pyramid apps, projects and resources. Inspired by and based on awesome-python.

Admin interface

Packages that extend the Admin interface, adding or improving features.

  • pyramid_formalchemy - provides a CRUD interface for pyramid based on FormAlchemy.
  • pyramid_sacrud - Pyramid CRUD interface based on sacrud and SQLAlchemy(that is closer to django.contrib.admin).

Asset Management

Packages that help manage the static assets of a project.

Async

  • aiopyramid - Run pyramid using asyncio.
  • gevent-socketio - gevent-socketio is a Python implementation of the Socket.IO protocol, developed originally for Node.js by LearnBoost and then ported to other languages.

Authentication

Packages that improve or extend the authentication methods of Pyramid.

  • pyramid_ldap - an LDAP authentication policy for Pyramid.
  • pyramid_who - Authentication policy for pyramid using repoze.who 2.0 API.
  • velruse - Simplifying third-party authentication for web applications. it supports most of auth providers.
  • pyramid_persona - Pyramid plugin to use persona for authentication.

Authorization

Packages related to authorization infrastructure and permissions.

  • ziggurat_foundations - Framework agnostic set of sqlalchemy classes that make building applications that require permissions an easy task.
  • pyramid_multiauth - An authentication policy for Pyramid that proxies to a stack of other authentication policies.
  • horus - User registration and login system for the Pyramid Web Framework.

Caching

Packages that help with caching.

Debugging

Packages that help hunt down bugs.

Email

Packages that help manage email sending.

  • pyramid_mailer - A package for sending email from your Pyramid application.
  • pyramid_marrowmailer - Pyramid integration package for marrow.mailer, formerly known as TurboMail

Forms

Packages that extend the functionality of forms or add new types of forms.

  • deform - is a Python HTML form generation library.
  • colander - A serialization/deserialization/validation library for strings, mappings and lists.
  • WTForms - is a flexible forms validation and rendering library for python web development.
  • ColanderAlchemy - helps you to auto-generate Colander schemas that are based on SQLAlchemy mapped classes.

Media-Management

  • pyramid_elfinder - This is conector for elfinder file manager, written for pyramid framework.

RESTful API

Packages for developing RESTful APIs.

  • cornice - provides helpers to build & document REST-ish Web Services with Pyramid, with decent default behaviors. It takes care of following the HTTP specification in an automated way where possible.
  • rest_toolkit - is a Python package which provides a very convenient way to build REST servers. It is build on top of Pyramid, but you do not need to know much about Pyramid to use rest_toolkit.
  • pyramid_royal - Royal is a pyramid extension which eases writing RESTful web applications.

Security

Packages that improve the security of a project.

Settings

Packages that help manage the configurability of projects.

  • pyramid_zcml - Zope Configuration Markup Language configuration support for Pyramid.

Storage

Packages that extend the functionality of the existing storage backend or provide new storage backends.

Task Queue

Packages that make working with task/background queues easier.

  • pyramid_celery - Pyramid configuration with celery integration. Allows you to use pyramid .ini files to configure celery and have your pyramid configuration inside celery tasks.
  • pyramid_rq - Support using the rq queueing system with pyramid The easiest way to monitor and use RQ in your Pyramid projects.

Templates

  • pyramid_mako - Mako templating system bindings for the Pyramid web framework.
  • pyramid_chameleon - Chameleon template compiler for pyramid.
  • pyramid_jinja2 - Jinja2 templating system bindings for the Pyramid web framework.

Testing

Packages that help test code or generate test data.

  • webtest - Wraps any WSGI application and makes it easy to send test requests to that application, without starting up an HTTP server.

Translations

Packages help with the task of translating projects.

Web frontend integration

Workflows

Packages that do process, procedure and/or business tasks management.

Other

  • pyramid_layout - Pyramid add-on for managing UI layouts.
  • pyramid_skins - This package provides a simple framework to integrate code with templates and resources.
  • waitress - Waitress is meant to be a production-quality pure-Python WSGI server with very acceptable performance. It has no dependencies except ones which live in the Python standard library.
  • pyramid_handlers - analogue of Pylons-style “controllers” for Pyramid.
  • pyramid_rpc - RPC service add-on for Pyramid, supports XML-RPC in a more extensible manner than pyramid_xmlrpc with support for JSON-RPC and AMF.
  • pyramid_autodoc - Sphinx extension for documenting your Pyramid APIs.
  • pyramid_tm - Centralized transaction management for Pyramid applications (without middleware).
  • paginate - Python pagination module.
  • pyramid_tablib - tablib renderer (xlsx, xls, csv) for pyramid
  • pyramid_sacrud_pages - Provides a collections of tree pages to your Pyramid application.
  • tomb_routes - Simple utility library around pyramid routing

Projects

Outstanding Pyramid projects.

Framework

  • Ringo - Ringo is a Python based high level web application framework build on top of Pyramid. The framework can be used to build form based management or administration software.

CMS

  • nive_cms - Nive is professional out the box content management system for mobile and desktop websites based on python and the webframework pyramid. Please refer to the website cms.nive.co for detailed information.
  • substanced - An application server built upon the Pyramid web framework. It provides a user interface for managing content as well as libraries and utilities which make it easy to create applications.
  • Kotti - A user-friendly, light-weight and extensible web content management system. Based on Pyramid and SQLAlchemy.
  • KARL - A moderately-sized application (roughly 80K lines of Python code) built on top of Pyramid. It is an open source web system for collaboration, organizational intranets, and knowledge management. It provides facilities for wikis, calendars, manuals, searching, tagging, commenting, and file uploads. See the KARL site for download and installation details.

e-Commerce

Project Management

Other

  • cluegun - A simple pastebin application based on Rocky Burt’s ClueBin. It demonstrates form processing, security, and the use of ZODB within a Pyramid application.
  • shootout - An example “idea competition” application by Carlos de la Guardia and Lukasz Fidosz. It demonstrates URL dispatch, simple authentication, integration with SQLAlchemy and pyramid_simpleform.
  • virginia - A very simple dynamic file rendering application. It is willing to render structured text documents, HTML documents, and images from a filesystem directory. It’s also a good example of traversal. An earlier version of this application runs the repoze.org website.
  • Akhet - A Pyramid library and demo application with a Pylons-like feel. Its most known for its former application scaffold, which helped users transition from Pylons and those preferring a more Pylons-like API. The scaffold has been retired but the demo plays a similar role.
  • Khufu Project - Khufu is an application scaffolding for Pyramid that provides an environment to work with Jinja2 and SQLAlchemy.
  • Ptah - Ptah is a fast, fun, open source high-level Python web development environment.
  • pyramid_sacrud_example - Demo app for pyramid extension of sacrud

Contributing

Just fork and send a pull request with your awesome Pyramid apps, projects or resources.