A dead simple Pythonic abstraction of HTTP.

What WSGI should have been.

Pump hides the implementation details of HTTP and gives you a Pythonic API for writing webapps. Your app is just a function that takes a request—a dict with certain keys—and returns a response—a dict with status, headers and body keys. No fancy start_response or environ here.

Comes with useful middlewares.

Pump middlewares are reusable functions that can add functionality to any Pump app. Pump comes with useful middlewares like wrap_params, wrap_nested_params, wrap_static, wrap_cookies, wrap_sessions. Since such functionality is implemented as middleware, frameworks built on Pump don't have to reinvent the wheel.

Take advantage of existing WSGI tools.

Picasso: a framework built on Pump.

If you’re interested in building a webapp with Pump, check out Picasso. It packages together various Pump middlewares so that you have routing and templating out of the box. It’s also a good place to start if you want to write your own Pump framework.