No description, website, or topics provided.
Python JavaScript Other
Switch branches/tags
2.0 1.1 1.0 20120709115759-68074ff 20120709113600-ff4c5ce 20120709113210-68074ff 20120709112154-2fdf115 20120709110929-2fdf115 20120706161112-2fdf115 20120705173731-ff4c5ce 20120705170709-6064926 20120704164359-9745065 20120703094435-5919cca 20120605102711-ab354e0 20120605095758-b9f6908 20120605095229-b9f6908 20120605092445-bd5ef44 20120601174432-7625e08 20120601095946-bfc4bd8 20120601095900-bfc4bd8 20120531162454-f31ee26 20120531161841-2887a5b 20120531151441-d2888c9 20120531151404-d2888c9 20120530165905-8e4ec87 20120530130625-7a9813a 20120530105016-b27d708 20120530103025-6a4f398 20120528101334-66c1e96 20120525104314-96e1162 20120525085857-3d35f2c 20120525085432-3d35f2c 20120524171431-20c6058 20120524171213-20c6058 20120524171108-20c6058 20120524170915-20c6058 20120524170816-20c6058 20120521154717-815714e 20120521154146-815714e 20120521153200-485f21b 20120521110323-fd7aa37 20120521110256-fd7aa37 20120521110233-cb61252 20120518204003-125c059 20120518203034-125c059 20120518202309-513fae9 20120518140836-43b4029 20120518131528-83e4849 20120517211043-83e4849 20120517200535-28074ad 20120517193110-28074ad 20120517182848-28074ad 20120517182205-28074ad 20120517155459-98dd5ef 20120517155409-98dd5ef 20120516211304-267c47b 20120516143652-4b5f659 20120515161130-e93e8c2 20120515143222-61c9f7b 20120514155925-c4f9a84 20120514153949-c4f9a84 20120514153719-c4f9a84 20120514153212-8f91072 20120514095845-f4494b8 20120514095638-f4494b8 20120511153844-07513c5 20120511153015-dc34e0f 20120511152241-dc34e0f 20120511151935-dc34e0f 20120511151100-dc34e0f 20120511150451-dc34e0f 20120511150303-dc34e0f 20120511150042-dc34e0f 20120511145942-902e436 20120510164201-dfda29d 20120510133256-73621ba 20120510131639-afbacd0 20120510124020-d0f1184 20120509161658-5344a64 20120509145643-e635b09 20120509141220-c3614d1 20120509100123-91eca37 20120507085328-983c26c 20120505063139-ed81c2a 20120504125648-fae4419 20120503163002-3c18e54 20120501173357-259c9ce 20120501172652-259c9ce 20120430180445-1525c25 20120430180041-1525c25 20120426081841-5c6ba2a 20120425164823-e65d10a 20120425164816-e65d10a 20120425151758-9aa140f 20120425151321-9aa140f 20120425151316-9aa140f 20120425145400-9aa140f 20120425144051-9aa140f 20120425143902-9aa140f 20120425094119-07e8fc1
Nothing to show
Pull request Compare This branch is 99 commits behind mozilla:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
vendor @ 7547d25

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)


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 \

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://

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/{-dist,}

And then edit the settings file to match your needs, here is the section about the 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 is installed as part of Django. You need to take a look at the installation instructions at [] 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
sudo su postgres

And finally create the database:

createdb -T template_postgis webmaker

Populating it

./ syncdb
./ 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:

./ 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.


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