Setting up a HFOS Development Environment

This is the recommended way to setup a development enviornment for developing the backend and frontend of HFOS .

Note

This document assumes you already have a working Python environment with a minimum Python version of 2.7 as well as mongodb and pip already installed.

Prerequisites

It is highly recommended that you install and use virtualenv for all your Python development and production deployments (not just HFOS).

It is also convenient to install and use the accompanying shell scripts and tools virtualenvwrapper which adds a nice set of workflows and functions useful for both development and deployments.

$ pip install -U virtualenvwrapper
$ source $(which virtualenvwrapper.sh)

Note

You should put source $(which virtualenvwrapper.sh) in either your $HOME/.bashrc or $HOME/.profile depending on how you login and interact with your terminals.

In addition to the above recommendations you must also have a Git client installed and ready to use as well as your Editor/IDE of choice ready to use.

Getting Started

  1. Fork HFOS (if you haven’t done so already)
  2. Clone your forked repository using Git
  3. Create a new virtual environment using virtualenvwrapper
  4. Install the Development Requirements
  5. Install HFOS in “develop” mode

And you’re done!

Example:

$ git clone git@github.com:yourgithubaccount/hfos.git
$ cd hfos
$ mkvirtualenv hfos
$ pip install -r requirements-dev.txt
$ python setup.py develop