A playdoh based django app that runs the webmaker.org site - our events and project listings.
Python JavaScript Other
Switch branches/tags
2.0 1.1 1.0 20130617195717-98b87c5 20130617194244-4eade86 20130617192750-216adf8 20130606152255-783f210 20130606135716-bc7d3e5 20130606135043-bc7d3e5 20130606120309-beb0107 20130418104951-5f23b47 20130418102625-6590fde 20130418094601-2c839d7 20130418084726-22ffb94 20130417201841-b08fc1d 20130320100827-5d98f21 20130314154535-eedb806 20130312111735-1e54818 20130312101021-105286c 20130312091944-7d31706 20130312085931-135802d 20130308165850-65fc978 20130307141441-53fac03 20130304181745-0d65491 20130228102603-c516557 20130227172233-abe2559 20130227133212-f005dab 20130227133128-f005dab 20130219120642-0e5ba62 20130219111504-face750 20130214141901-b574f75 20130212140712-e9d42a6 20130212134746-29fc279 20130212125106-2a32cab 20130124164658-861226f 20130124162550-861226f 20130117142435-5356e3c 20130117141529-5356e3c 20130117141412-5356e3c 20130117111900-ec7bf67 20121221100423-391c970 20121220215502-e9298e9 20121220174817-3c627b2 20121214171128-45e99b0 20121214170112-45e99b0 20121214170030-45e99b0 20121214165917-45e99b0 20121214092313-45e99b0 20121213172246-c672616 20121213170238-16bbf1e 20121213165108-45e99b0 20121213164917-45e99b0 20121213164714-45e99b0 20121213163756-45e99b0 20121213163450-45e99b0 20121213094252-3c0fcd0 20121212172816-d378e4d 20121212151244-7cdbc56 20121212145432-7cdbc56 20121212142054-7cdbc56 20121212141326-d378e4d 20121203101221-bb8557d 20121203095534-1ba21c6 20121129175645-8f74643 20121129125255-9e6d4a5 20121128220809-9543a70 20121108174551-1cc1bef 20121108165832-1e6a63b 20121107172238-95efe86 20121107101645-e86fc41 20121107100756-ca452e2 20121107094505-b1d9aec 20121106165309-76baa8c 20121106120118-bc0266c 20121105181626-3450da1 20121105100449-fa46008 20121105095558-ad6186a 20121102113105-d378e4d 20121102111808-d378e4d 20121019093000-901103d 20121019091156-1c7cfe8 20121017112815-c76611e 20121016131011-e351204 20121015090331-2fe3766 20121012153011-f569aec 20121012150925-e99db68 20121012083020-5421992 20121012082152-83c9731 20121011091319-0062394 20121010161714-a7fd276 20121010083755-ab5970a 20121010082637-2c42433 20120927093040-e24eb19 20120927092332-faf87e8 20120927085135-86d2dda 20120926134530-83abf07 20120926134213-71127a0 20120925124933-6a86237 20120924182830-ddc3bc4 20120806140629-9d31317
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
bin
docs
fabric
lib/product_details_json
make_mozilla
media
migrations
puppet
requirements
vendor @ 7547d25
vendor-local
wsgi
.gitignore
.gitmodules
LICENSE
MANIFEST.in
README.md
Vagrantfile
fabfile.py
manage.py
setup.py
vagrantconfig.yaml
vagrantconfig_local.yaml-dist

README.md


This repo is now deprecated

webmaker.org can now been found at https://github.com/mozilla/webmaker.org


Local development

In addition to the more specific requirements below you need the standard set of software to get playdoh installed:

  • Xcode (with the Command Line Tools installed)
  • mySQL (a playdoh dependancy - though we're not using it for this project)
  • node and lessc
  • wget

We're using PostGIS + GeoDjango for the DB, so you'll also need the following installed:

  • Postgresql 8.4 +
  • PostGIS >= 1.4 && < 2.0
  • Geos
  • Proj4
  • GDAL

Mac OS X

With Homebrew, installing PostGIS and GDAL will install all you need:

brew update
brew install postgis gdal

Note The current version of PostGIS in Homebrew is version 2.0.0 - you need to install 1.5.3 (due to a numder of compatibility issues)

Ubuntu

For Ubuntu 10.04, see the information in our Puppet config (./puppet/manifests/dev.pp and the classes in ./puppet/manifests/classes)

For Ubuntu release >= 11.10, this should work:

sudo apt-get install binutils gdal-bin libproj-dev postgresql-9.1-postgis \
     postgresql-server-dev-9.1

Once those are installed, then pip install -r requirements/compiled.txt should work as expected.

Making it run locally

Checkout the sourcecode and init the git submodules:

git clone --recursive git://github.com/mozilla/make.mozilla.org

If at any point you realize you forgot to clone with the recursive flag, you can fix that by running:

git submodule update --init --recursive

Once you have all the dependencies installed, you need to create a settings file.

cp make_mozilla/settings/local.py{-dist,}

And then edit the settings file to match your needs, here is the section about the databases:

DATABASES = {
    'default': {
        'ENGINE': 'django.contrib.gis.db.backends.postgis',
        'NAME': 'webmaker',
        'USER': 'postgres',
        'PASSWORD': 'postgres',
        'HOST': 'localhost',
        'PORT': '5432',
        'TEST_CHARSET': 'utf8',
        'TEST_COLLATION': 'utf8_general_ci',
    },
}

Setting up the database

GeoDjango

GeoDjango is installed as part of Django. You need to take a look at the installation instructions at [https://docs.djangoproject.com/en/1.3/ref/contrib/gis/install/#post-installation] to get PostGIS configured properly with Django. Ubuntu's version ships with a postgis-template generation script, which you can see used in ./puppet/manifests/classes/postgis.pp

Once you've installed postgis, you need to create a template for it, and then create your database with this template. For postgis 1.5:

cd /tmp && wget https://raw.github.com/django/django/master/docs/ref/contrib/gis/install/create_template_postgis-1.5.sh
sudo su postgres
/tmp/create_template_postgis-1.5.sh

And finally create the database:

createdb -T template_postgis webmaker

Populating it

./manage.py syncdb
./manage.py migrate

Compiling the assets

You also need to compile the assets, be sure to update your settings with the path to your LESS executable:

LESS_BIN = "/usr/local/bin/lessc"

And then run:

./manage.py compress_assets

playdoh: about the framework

This app is built using Mozilla's Playdoh.

Mozilla's Playdoh is a web application template based on Django.

Patches are welcome! Feel free to fork and contribute to this project on github.

Full Playdoh documentation is available as well.

License

This software is licensed under the New BSD License. For more information, read the file LICENSE.