-
Clone this project (with
--recursive
to pull down its git submodules). -
Install Python 3,
pip
. -
Install platform dependencies (feel free to skip this until you run into errors, probably in step 5):
- Pillow: http://pillow.readthedocs.org/en/latest/installation.html#external-libraries
- Python development package
- libpq (Postgres) development package
- ...
-
Optional, but recommended: Set up a Python 3 "virtual environment" for working on this project with
virtualenv
.- get the virtualenv script with pip:
pip install virtualenv
- close and reopen terminal
- create the virtual environment inside the project folder:
mkvirtualenv -p $(which python3) env
- get the virtualenv script with pip:
-
Switch to the Wagtail/Django project directory:
cd localore
. -
Install Python dependencies:
pip install -r requirements-dev.txt
. Install fromrequirements-dev-linux.txt
on Linux. When we run into errors here, it probably means we forgot to document and/or install some platform dependency (see step 3). -
Install front-end dependencies:
npm install --python=python2
-
Copy localore/.env to
localore/.env.local
. This is where your local environment variable settings (database config, etc.) go. See the arguments passed intoEnv()
in localore/settings.py for the list. -
Set up the database:
python manage.py migrate
, thencreatesuperuser
-
Run the Django dev server:
python manage.py runserver
-
Run Grunt to watch/recompile static resources, perform live reloading, etc.:
grunt serve
If the Django dev server isn't running on port 8000 (the default), you have to update livereload's proxy config in Gruntfile.js.
-
you have to activate the python virt. environment first, whenever you work with the project
- to activate, switch to project folder, run:
source env/bin/activate
- so, activating will make "python" point to the local python and will make pip (python package manager) work with the local packages folder
- to activate, switch to project folder, run:
-
you have rerun migrations whenever you pull down changes that affect the DB
-
you have to reinstall python deps from the requirements file whenever the requirements file gets updated
The source code is licensed under Mozilla Public License Version 2.0. This specifically does not cover any brand assets such as logos or trademarks. Brand assets cannot be reused without permission.