Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

SEO London Django Website

Created and built by Mindspray, Glendelm Design, Spoke and Women Hack For Non-Profits

How to set up a development environment

Please try following instructions in Vagrant first. The instruction here is left for reference only.

Prerequisite:

  • a github account
  • a fork of Woman Hack for Non Profit's SEO London repository in your account:
    1. login to your github account
    2. goto https://github.com/womenhackfornonprofits/seo-london,
    3. click fork icon in the upper left column

Set up Python / Virtualenv / requirements

Here we want to set up a python virtual environment and set up a source code

  1. Install Python: brew install python
  2. Upgrade pip & setup tools: pip install --upgrade pip setuptools wheel
  3. Install virtualenv: pip install virtualenv
  4. Install virtualenvwrapper: pip install virtualenvwrapper
  5. Source the virtualenvwrapper:source /usr/local/bin/virtualenvwrapper.sh
    • Note: To help do this automatically on every new shell you open add the line above to your .bash_profile or .bashrc
  6. Create a new env for the project: mkvirtualenv seolondon
  7. To activate the virtualenv: workon seolondon, when finished to de-activate type in: deactivate
  8. Clone the forked repo: git clone git@github.com:<your git username>/seo-london.git
  9. Go inside the new seo project directory: cd seo-django
  10. Install python requirements: pip install -r requirements.txt
  11. Install frontend requirements: npm install

Install Postgres Database Server

  1. You will need to have Postgres installed and up and running. You can install it via:
    • Homebrew brew install postgresql
    • OR Download the Postgres App
  2. Make sure the Postgres Server is up and running:
    • If using the App simply start the server from there (Mac)
    • If using command line: brew services start postgresql (Mac)
  3. Create a new database: createdb seolondon
    • NOTE: do not run migrations as we will import the whole database
  4. Create a user:
    • run psql
    • then run CREATE USER seolondon PASSWORD 'seolondon'

Loading data locally (very desirable but optional)

Downlowd a postgresql dump and media dump.

  1. Get the database backup file (TBD)
  2. Unzip the file to a file name called latest.dump
  3. Import the database into the local database (add --clean if you need it emptied) (this is a one line command):
    • pg_restore --verbose --no-acl --no-owner -h localhost -U seolondon --role seolondon -d seolondon latest.dump
  4. copy public media files to local (there will be a lot of print out, after this you should have files in web/media/ folders):
    • python manage.py copy_media_file

Running the project locally

  1. Go inside the new seo project directory: cd seo-django
  2. Run gulp to compile and watch for changes: gulp
  3. In a different console run npm run server (simultaneously with gul)
  4. In a new concole also run python manage.py runserver

Troubleshooting

  • "Missing module...": Probably because you didn't activate the environment source ../env/bin/activate; or install the requirements inside the environment pip install -r requirements.txt.

Production Environment

This section is for users with a bit more experience, or already accustomed with the setup.

Additional accounts required

  • AWS Credentials for S3
  • IFramely for blog video embed
  • Google Analytics / Google Tag Manager Code

I think it is probably best to do heroku configs to get all the production configuration.

Download Database

  • Database
    1. Get a dump from Heroku: heroku pg:backups:capture
    2. Fetch the database dump to your machine: heroku pg:backups:download

About

SEO London Django website created by Mindspray, Glendelm Design, Spoke and with help from Women Hack For Non-Profits

Resources

Releases

No releases published

Packages

No packages published
You can’t perform that action at this time.