Skip to main content

A lightweight python web framework

Project description

Pybald
======
Pybald is a light weight, python, `MVC <http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller>`_ style web framework. It is inspired by work done by `Ian Bicking <http://blog.ianbicking.org/>`_, and builds upon the concepts presented in `Another do-it-yourself framework <http://pythonpaste.org/webob/do-it-yourself.html>`_. It is also takes design inspiration from `Ruby on Rails <http://rubyonrails.org>`_ and `Django <http://www.djangoproject.com/>`_.

Pybald began life as an ultra-bare-bones framework but has evolved over time adding convenience methods, components and glue:

* `Routes <http://routes.groovie.org/>`_ for dispatching and URL parsing
* `Mako <http://www.makotemplates.org/>`_ as the template engine.
* `SqlAlchemy <http://sqlalchemy.org/>`_ for data persistence and object mapping
* `FormAlchemy <http://formalchemy.org/>`_ for automated form generation and validation
* A more complex WSGI decorator
* Some deploy infrastructure such as Apache and Nginx configuration templates
* Session Management, Simple Logging, and template helper functions

Pybald Changelog
================

Release 0.4.1 (February 26, 2016)
--------------------------------

* Fix a bug with the default error controller. Now the raw exception can be passed
in and the order of the arguments was changed but not updated in the default.

Release 0.4.0 (January 28, 2016)
--------------------------------

* **Warning** - this release is not compatible with previous pybald releases.
* Major configuration changes, deprecate the use of importing 'project.py' directly.
* New application context that lives globally is the config passing mechanism.

from pybald import context
* Replace FormAlchemy with WTForms as the primary mechanism for form processing
and validation
* Utilize controller and model registry.
* Global context is on a threadlocal stacked proxy to allow multiple pybald
applications in one interpreter.
* Database session is now attached to the app context.
* Shared application resources (caches etc..) are now registered with the context
* ErrorMiddleware now has a more consistent interface with error controllers,
passing the raw exception as a \*parg, followed by context-specific \*\*kargs

Release 0.3.2 (March 25, 2015)
------------------------------

* Add jsx filters for react components

Release 0.3.1 (February 19, 2015)
---------------------------------

* Fix webassets dependencies and bugs
* Added browser caching headers to the simple static server

Release 0.3.0 (November 2, 2014)
--------------------------------

* Change the default behavior of all templates to include the html escape filter
* New helper: HTMLLiteral. Allows explicit html escape bypassing
* Add csrf decorator
* New newrelic instrumentation code to improve controller/action visibility

Release 0.2.8 (June 26, 2014)
-----------------------------

* Update the webasset-based asset bundler to take input and output paths from
the project config file. The new arguments are BUNDLE_SOURCE_PATHS and
BUNDLE_OUTPUT_PATH. So in the project.py file you might have a config
that looks like::

BUNDLE_SOURCE_PATHS = ['alternate_source_path', 'public']
BUNDLE_OUTPUT_PATH = '/some_path/public_files/'

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pybald-0.4.1.tar.gz (49.7 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page