Icon Header

Rum’s documentation

Introduction

Rum is web application framework written in the Python language. It is not a general-purpose web framework, but one which is specifically designed to create generic RESTful web interfaces for your domain models. It is not designed to replace your web-framework of choice but to complement it to create what are commonly referred to as Admin applications.

Rum implements the WSGI interface so it can be deployed standalone with any WSGI compliant server or it can be embedded into an application/framework that can dispatch to WSGI apps within its own stack (eg: Pylons or TurboGears2). More information about how Rum can be deployed can be found in the Deploying a Rum application document.

It is modeled following the Model-View-Controller pattern which makes it loosely coupled. This allows, for example, to reuse the view layer with multiple data backends (repositories in Rum parlance) and viceversa. More information about the architecture can be found in the Architecture overview and some implementation details document.

Status

Rum is currently in an alpha stage of development. This means that the APIs will probably change as real-world use demands so anything you build using Rum will need to be adapted when this happens.

It is recommended that you subscribe and follow the rum-discuss mailing list to stay up-to-date with the development and run from a checkout of the Mercurial repository (instead of a release) so you can adapt your code gradually as Rum evolves.

Finally, you should also have a fair amount of Python knowledge to be able to interpret the obscure tracebacks you will sometimes get and report them to the mailing list or file a bug in Rum’s Trac.

Warning

Rum is not ready to be used in a production environment yet.

Credits

Rum was initially designed and implemented by Alberto Valverde Gonzalez and sponsored by Google under the Summer of Code programme (2008) for the TurboGears organization. Mark Ramm has been the mentor and contributed many good ideas.

License

Rum is released under the terms of the License.

Community

Discussion about Rum development and user support takes place in the rum-discuss mailing list. There’s a bug tracker at Rum’s Trac.

Indices and tables