backmongo /


It's a simple REST interface for MongoDB written in Python that can be used straight away from a Backbone application. It's an alpha version. We are using it to develop backbone apps without having to worry about the server side. We've coded what we've needed so far. In the future we plan to add more features, such as, authentication, user privileges, etc.

At the moment backmongo can be only used as a flask extension, but we plan to add extensions from other frameworks.


  • flask
  • pymongo

You could install all with

$ [sudo] pip install -r requirements.txt


as a Flask extension

from flask import Flask
from flask.ext import backmongo

app = Flask(__name__)

if __name__ == "__main__":

From the command line

$ python path/to/project/dir


There's an example in examples/todos/ (a slightly modified version of this) that illustrates how easy it's to use backmongo from a backbone application.


There are several integration tests coded in javascript using Mocha running on Node. We wrote two posts about how to troubleshoot several problems we came across while setting the tests environment:

To execute the tests you need to install Mocha globally

$ npm install -g mocha

and later install the other required modules locally

$ npm install should
$ npm install jquery
$ npm install backbone
$ npm install xmlhttprequest

Then you have to type in the console

$ make

this starts a flask app that use backmongo, execute the javascript tests with mocha and stop the flask app.

By default the tests are working in a data base called backmongo. If you need to change this create a file named in the root folder, or in some place in your PYTHONPATH, and set the data base name in the variable DATABASE. You could see an configuration file example in examples/todo/static/