IdentiPy Server - a Django-based web interface for IdentiPy


IdentiPy and IdentiPy Server are described in this JPR paper:

Please cite it when using IdentiPy and/or IdentiPy Server or their parts.


IdentiPy Server is published under the Apache 2.0 license.


  • Python 2.7
  • Django
  • identipy and its dependencies
    • pyteomics
    • pyteomics.cythonize
    • numpy
    • scipy
    • lxml
    • (if installed with pip, lxml will need development packages of libxml2 and libxslt to compile)
  • MP score and its dependencies
    • matplotlib
    • cycler, pyparsing, python-dateutil, functools32
    • mechanize
  • psutil
  • Pillow


MP score:

The other dependencies can be installed using pip or the package manager of your operating system.

How to run IdentiPy Server

IdentiPy Server currently works on Unix-like operating systems only. IdentiPy and MP score are imported from directories adjacent to IdentiPy Server.


Switch to a directory that will hold the installation, then download the three components of IdentiPy Server, like this:

$ hg clone
$ hg clone
$ hg clone

Run these commands to initialize the database:

$ cd identipy_server
$ python2 makemigrations
$ python2 migrate

Then create a superuser account to manage the database...

$ python2 createsuperuser

And finally, create a regular user account:

$ python2 createuser <username>

You can then run Django development server to test your setup:

$ python2 runserver

This will start a development server on, so it will only be available locally. If you need to access the server from a local network, specify the IP address and port you need, e.g.:

$ python2 runserver

While the development server is running, you can log into IdentiPy Server and use it in your browser.

Production use

For more reliable use (especially for multiple-user installations), we recommend running IndetiPy Server with a WSGI-compatible web server application like Apache or Nginx+uWSGI, instead of the Django development server:

Example configuration files are included:

  • uwsgi_parameters and identipy.example.ini - for uWSGI;
  • identipy.example.conf - for nginx;
  • example-httpd-vhosts.conf - for Apache with mod_wsgi and virtual hosts.

You may need to edit the following settings in identipy_server/

  • EMAIL_* (these are specific to the project)

For explanation of Django settings see the official documentation: