Propeller: a lightweight HTTP Framework

Propeller is a lightweight, open source HTTP framework written in Python and focuses on quickly writing web apps with minimal effort. Propeller relies on Jinja2 for templating. It's pretty fast, too. Propeller is BSD-licensed.

Propeller doesn't get in your way. It provides a fast, lightweight framework that handles the low level stuff, but doesn't impose object-relational mappers, form validation, MVC patterns or the like. That's all up to you.

Hello world

Writing apps with Propeller is easy and fun:

from propeller import Application, RequestHandler, Response

class HomeHandler(RequestHandler):
    def get(self, request):
        return Response('Hello world')

a = Application([
    (r'^/', HomeHandler),
])

if __name__ == '__main__':
    a.run()

Features

  • A lightweight, standalone web server that automatically reloads code during development
  • RESTfully dispatches requests to request handlers
  • Parses multipart messages (POST uploads, form data, and files)

Deploying Propeller

Typically you will want to set up Propeller behind a reverse proxy such as nginx. For more information, see Deploying Propeller.

See Propeller in action

Are you using Propeller? Let me know and you'll be listed.