SciPost is written in Python 3.5 using Django and requires a PostgreSQL database.
Python dependencies are listed in `requirements.txt`.
## Getting started
### Python version
Make sure you're using Python 3.5. If you need to use multiple versions of Python, use [pyenv](https://github.com/yyuu/pyenv).
### Python dependencies
Setup a virtual environment using[(py)venv](https://docs.python.org/3/library/venv.html), and activate it:
```shell
$ pyvenv scipostenv
$ source scipostenv/bin/activate
```
Now install dependencies:
```shell
(scipostenv) $ pip install -r requirements.txt
```
### Database
Make sure that Postgres is installed and running, and that a database and user are set up for it. A
good guide how to do this can be found [here](https://djangogirls.gitbooks.io/django-girls-tutorial-extensions/content/optional_postgresql_installation/) (NOTE: stop before the 'Update settings' part).
### Host-specific settings
In this project, host-specific settings are defined in the `scipost-host-settings.json` file in the directory *above* the project root. The structure is as follows: