cheekybastard / django-mousechaser

Django-Mousechaser tracks the mouse movements of the visitors to your site puts and generates heatmaps accordingly.

Home Page:http://github.com/dvanliere/django-mousechaser

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Django-Mousechaser
==================

Django-Mousechaser tracks the mouse movements of the visitors to your site puts and generates heatmaps accordingly. 
This can be useful during the development / testing phase of a new website to test whether people have 
difficulty navigating your site. See http://www.squidoo.com/heat-map for some more background information.

The application consists of two parts:
- The analytics.js script that tracks the mouse and identifies major html blocks (right now <div> and <p> tags)
- The elementmap.js script inserts the heatmap as a background picture in the original webpage

The analytics.js script adds an hidden iframe and sends a POST request, Django-Mousechaser parses all the coordinates
and stores these as HeatMap objects and it stores the major HTML element as Element objects.

The elementmap.js script requests the heatmap which is dynamically generated by the application. 

Dependencies
------------
- Matplotlib (1.0.0)
- Numpy (1.5.0)
- Python Imaging Library (PIL) (1.1.7)
- jQuery (1.4)

*see requirements.txt*

I am pretty sure it should work with older versions of these libraries as well but I cannot guarantee that. 

Installation
------------
Add django-mousechaser.heatmap to your INSTALLED_APPS
and make sure that you are able to serve the static js files.

For each webpage that you want to have a heatmap generated, add the following scripts:
- jquery.js (not part of this repos, download from jquery.org for most recent version)
- analytics.js (this will send the coordinates to your server)
- elementmap.js (this can be on the same page as the original webpage, then it will add the heatmap as a background or add it to a separate webpage

Status
------

The current status is alpha, it's more a proof-of-concept but it should be quite straightforward to make it more robust. Please clone it!

Authors
-------
- Diederik van Liere


Issues
------
- The heatmap does not accurately match the size of webpage, this is quite important but a bit tricky
- Maybe use JSON instead of serialize POST to send data to server 

About

Django-Mousechaser tracks the mouse movements of the visitors to your site puts and generates heatmaps accordingly.

http://github.com/dvanliere/django-mousechaser