"Houston, we have a Javascript problem!"
jhouston catches Javascript errors occuring in the browser and automatically posts them to the server. There they are stored in the database for debugging & analysis purposes. This opens up a whole new view on what is happening client-side.
settings.py:
INSTALLED_APPS = ( ... 'jhouston',
urls.py:
urlpatterns = patterns('', ... (r'^jhouston/', include('jhouston.urls')))
base.html:
... <script src="/static/jhouston/js/jhouston.js" type="text/javascript"> </script>