This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!
Project Description
[![Build Status](https://travis-ci.org/ocadotechnology/codeforlife-portal.svg?branch=master)](https://travis-ci.org/ocadotechnology/codeforlife-portal)
[![Coverage Status](https://coveralls.io/repos/ocadotechnology/codeforlife-portal/badge.svg?branch=master&service=github)](https://coveralls.io/github/ocadotechnology/codeforlife-portal?branch=master)
[![Code Climate](https://codeclimate.com/github/ocadotechnology/codeforlife-portal/badges/gpa.svg)](https://codeclimate.com/github/ocadotechnology/codeforlife-portal)

## A [Code for Life](https://www.codeforlife.education/) repository
* Ocado Technology's [Code for Life initiative](https://www.codeforlife.education/) has been developed to inspire the next generation of computer scientists and to help teachers deliver the computing curriculum.
* This repository hosts the source code of the **main website**: the portal for the Code For Life initiative, the registration/log in, the teachers' dashboards, the teaching materials, etc
* The other repos for Code For Life:
* the first game, [Rapid Router](https://github.com/ocadotechnology/rapid-router)
* the new game for teenagers, [currently at a very early stage](https://github.com/ocadotechnology/aimmo)
* the [deployment code for Google App Engine](https://github.com/ocadotechnology/codeforlife-deploy-appengine)

## Running Locally
* Clone the repo
* Make and activate a virtualenv (We recommend [virtualenvwrapper](http://virtualenvwrapper.readthedocs.org/en/latest/index.html))
* e.g. the first time, `mkvirtualenv -a path/to/codeforlife-portal codeforlife-portal`
* and thereafter `workon codeforlife-portal`
* create settings file under `example_project/example_project/local_settings.py` with `EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'`
* `./run` - This will:
* install all of the dependencies using pip
* sync the database
* collect the static files
* run the server

## How to contribute!
__Want to help?__ You can contact us using this [contact form][c4l-contact-form] and we'll get in touch as soon as possible! Thanks a lot.

## Common Problems
### Unapplied migrations on first run
It may be that some migrations were changed and you have .pyc files from the old ones. Try removing all .pyc migrations by running `rm migrations/*.pyc` from the ocargo repository.

[c4l-contact-form]: https://www.codeforlife.education/contact/
Release History

Release History

This version
History Node

1.0.0.post.dev570

History Node

1.0.0.post0.dev570

History Node

1.0.0.post.dev568

History Node

1.0.0.post0.dev568

History Node

1.0.0.post.dev564

History Node

1.0.0.post0.dev564

History Node

1.0.0.post.dev562

History Node

1.0.0.post0.dev562

History Node

1.0.0.post.dev560

History Node

1.0.0.post0.dev560

History Node

1.0.0.post.dev558

History Node

1.0.0.post0.dev558

History Node

1.0.0.post.dev556

History Node

1.0.0.post0.dev556

History Node

1.0.0.post.dev554

History Node

1.0.0.post0.dev554

History Node

1.0.0.post.dev552

History Node

1.0.0.post0.dev552

History Node

1.0.0.post.dev550

History Node

1.0.0.post0.dev550

History Node

1.0.0.post.dev548

History Node

1.0.0.post0.dev548

History Node

1.0.0.post.dev546

History Node

1.0.0.post0.dev546

History Node

1.0.0.post.dev542

History Node

1.0.0.post0.dev542

History Node

1.0.0.post.dev540

History Node

1.0.0.post0.dev540

History Node

1.0.0.post.dev538

History Node

1.0.0.post0.dev538

History Node

1.0.0.post.dev536

History Node

1.0.0.post0.dev536

History Node

1.0.0.post.dev534

History Node

1.0.0.post0.dev534

History Node

1.0.0.post.dev532

History Node

1.0.0.post0.dev532

History Node

1.0.0.post.dev530

History Node

1.0.0.post0.dev530

History Node

1.0.0.post.dev528

History Node

1.0.0.post0.dev528

History Node

1.0.0.post0.dev526

History Node

1.0.0.post.dev526

History Node

1.0.0.post.dev524

History Node

1.0.0.post0.dev524

History Node

1.0.0.post0.dev522

History Node

1.0.0.post.dev522

History Node

1.0.0.post0.dev520

History Node

1.0.0.post.dev520

History Node

1.0.0.post0.dev518

History Node

1.0.0.post.dev518

History Node

1.0.0.post.dev516

History Node

1.0.0.post0.dev516

History Node

1.0.0.post.dev509

History Node

1.0.0.post0.dev509

History Node

1.0.0.post.dev507

History Node

1.0.0.post0.dev507

History Node

1.0.0.post.dev505

History Node

1.0.0.post0.dev505

History Node

1.0.0.post.dev503

History Node

1.0.0.post0.dev503

History Node

1.0.0.post.dev501

History Node

1.0.0.post0.dev501

History Node

1.0.0.post0.dev499

History Node

1.0.0.post.dev499

History Node

1.0.0.post.dev493

History Node

1.0.0.post0.dev493

History Node

1.0.0.post.dev491

History Node

1.0.0.post0.dev491

History Node

1.0.0.post0.dev489

History Node

1.0.0.post.dev489

History Node

1.0.0.post.dev487

History Node

1.0.0.post0.dev487

History Node

1.0.0.post.dev485

History Node

1.0.0.post0.dev485

History Node

1.0.0.post0.dev483

History Node

1.0.0.post.dev483

History Node

1.0.0.post.dev481

History Node

1.0.0.post0.dev481

History Node

1.0.0.post0.dev479

History Node

1.0.0.post.dev479

History Node

1.0.0.post.dev476

History Node

1.0.0.post0.dev476

History Node

1.0.0.post0.dev474

History Node

1.0.0.post.dev474

History Node

1.0.0.post.dev472

History Node

1.0.0.post0.dev472

History Node

1.0.0.post0.dev470

History Node

1.0.0.post.dev470

History Node

1.0.0.post0.dev466

History Node

1.0.0.post.dev466

History Node

1.0.0.post0.dev464

History Node

1.0.0.post.dev464

History Node

1.0.0.post.dev462

History Node

1.0.0.post0.dev462

History Node

1.0.0.post.dev456

History Node

1.0.0.post0.dev456

History Node

1.0.0.post.dev454

History Node

1.0.0.post0.dev454

History Node

1.0.0.post0.dev444

History Node

1.0.0.post.dev444

History Node

1.0.0.post.dev442

History Node

1.0.0.post0.dev442

History Node

1.0.0.post0.dev440

History Node

1.0.0.post.dev440

History Node

1.0.0.post.dev432

History Node

1.0.0.post0.dev432

History Node

1.0.0.post.dev430

History Node

1.0.0.post0.dev430

History Node

1.0.0.post.dev428

History Node

1.0.0.post0.dev428

History Node

1.0.0.post.dev426

History Node

1.0.0.post0.dev426

History Node

1.0.0.post.dev424

History Node

1.0.0.post0.dev424

History Node

1.0.0.post0.dev417

History Node

1.0.0.post.dev417

History Node

1.0.0.post0.dev413

History Node

1.0.0.post.dev413

History Node

1.0.0.post.dev411

History Node

1.0.0.post0.dev411

History Node

1.0.0.post0.dev406

History Node

1.0.0.post.dev406

History Node

1.0.0.post.dev404

History Node

1.0.0.post0.dev404

History Node

1.0.0.post.dev398

History Node

1.0.0.post0.dev398

History Node

1.0.0.post.dev394

History Node

1.0.0.post0.dev394

History Node

1.0.0.post.dev389

History Node

1.0.0.post0.dev389

History Node

1.0.0.post.dev387

History Node

1.0.0.post0.dev387

History Node

1.0.0.post.dev385

History Node

1.0.0.post0.dev385

History Node

1.0.0.post.dev383

History Node

1.0.0.post0.dev383

History Node

1.0.0.post.dev379

History Node

1.0.0.post0.dev379

History Node

1.0.0.post.dev373

History Node

1.0.0.post0.dev373

History Node

1.0.0.post.dev371

History Node

1.0.0.post0.dev371

History Node

1.0.0.post.dev367

History Node

1.0.0.post0.dev367

History Node

1.0.0.post.dev365

History Node

1.0.0.post0.dev365

History Node

1.0.0.post.dev360

History Node

1.0.0.post0.dev360

History Node

1.0.0.post.dev357

History Node

1.0.0.post0.dev357

History Node

1.0.0.post.dev351

History Node

1.0.0.post0.dev351

History Node

1.0.0.post.dev349

History Node

1.0.0.post0.dev349

History Node

1.0.0.post0.dev346

History Node

1.0.0.post.dev346

History Node

1.0.0.post.dev344

History Node

1.0.0.post0.dev344

History Node

1.0.0.post.dev342

History Node

1.0.0.post0.dev342

History Node

1.0.0.post.dev340

History Node

1.0.0.post0.dev340

History Node

1.0.0.post.dev338

History Node

1.0.0.post0.dev338

History Node

1.0.0.post.dev333

History Node

1.0.0.post0.dev333

History Node

1.0.0.post0.dev329

History Node

1.0.0.post.dev329

History Node

1.0.0.post0.dev327

History Node

1.0.0.post.dev327

History Node

1.0.0.post.dev320

History Node

1.0.0.post0.dev320

History Node

1.0.0.post.dev315

History Node

1.0.0.post0.dev315

History Node

1.0.0.post0.dev313

History Node

1.0.0.post.dev313

History Node

1.0.0.post.dev311

History Node

1.0.0.post0.dev311

History Node

1.0.0.post.dev305

History Node

1.0.0.post0.dev305

History Node

1.0.0.post.dev290

History Node

1.0.0.post0.dev290

History Node

1.0.0.post0.dev287

History Node

1.0.0.post.dev287

History Node

1.0.0.post.dev285

History Node

1.0.0.post0.dev285

History Node

1.0.0.post0.dev283

History Node

1.0.0.post.dev283

History Node

1.0.0.post.dev281

History Node

1.0.0.post0.dev281

History Node

1.0.0.post.dev278

History Node

1.0.0.post0.dev278

History Node

1.0.0.post.dev275

History Node

1.0.0.post0.dev275

History Node

1.0.0.post.dev273

History Node

1.0.0.post0.dev273

History Node

1.0.0.post.dev269

History Node

1.0.0.post0.dev269

History Node

1.0.0.post.dev263

History Node

1.0.0.post0.dev263

History Node

1.0.0.post0.dev256

History Node

1.0.0.post.dev256

History Node

1.0.0.post0.dev254

History Node

1.0.0.post.dev254

History Node

1.0.0.post.dev251

History Node

1.0.0.post0.dev251

History Node

1.0.0.post.dev247

History Node

1.0.0.post0.dev247

History Node

1.0.0.post.dev244

History Node

1.0.0.post0.dev244

History Node

1.0.0.post.dev238

History Node

1.0.0.post0.dev238

History Node

1.0.0.post.dev229

History Node

1.0.0.post0.dev229

History Node

1.0.0.post.dev227

History Node

1.0.0.post0.dev227

History Node

1.0.0.post.dev225

History Node

1.0.0.post0.dev225

History Node

1.0.0.post0.dev223

History Node

1.0.0.post.dev223

History Node

1.0.0.post.dev219

History Node

1.0.0.post0.dev219

History Node

1.0.0.post.dev217

History Node

1.0.0.post0.dev217

History Node

1.0.0.post0.dev215

History Node

1.0.0.post.dev215

History Node

1.0.0.post.dev213

History Node

1.0.0.post0.dev213

History Node

1.0.0.post.dev211

History Node

1.0.0.post0.dev211

History Node

1.0.0.post0.dev209

History Node

1.0.0.post.dev209

History Node

1.0.0.post.dev207

History Node

1.0.0.post0.dev207

History Node

1.0.0.post0.dev205

History Node

1.0.0.post.dev205

History Node

1.0.0.post.dev203

History Node

1.0.0.post0.dev203

History Node

1.0.0.post.dev147

History Node

1.0.0.post0.dev147

History Node

1.0.0.post.dev145

History Node

1.0.0.post0.dev145

History Node

1.0.0.post0.dev143

History Node

1.0.0.post.dev143

History Node

1.0.0.post0.dev131

History Node

1.0.0.post.dev131

History Node

1.0.0.post.dev127

History Node

1.0.0.post0.dev127

History Node

1.0.0.post.dev125

History Node

1.0.0.post0.dev125

History Node

1.0.0.post.dev123

History Node

1.0.0.post0.dev123

History Node

1.0.0.post0.dev121

History Node

1.0.0.post.dev121

History Node

1.0.0.post.dev119

History Node

1.0.0.post0.dev119

History Node

1.0.0.post.dev117

History Node

1.0.0.post0.dev117

History Node

1.0.0.post.dev115

History Node

1.0.0.post0.dev115

History Node

1.0.0.post0.dev113

History Node

1.0.0.post.dev113

History Node

1.0.0.post0.dev111

History Node

1.0.0.post.dev111

History Node

1.0.0.post.dev109

History Node

1.0.0.post0.dev109

History Node

1.0.0.post0.dev107

History Node

1.0.0.post.dev107

History Node

1.0.0.post0.dev103

History Node

1.0.0.post.dev103

History Node

1.0.0.post0.dev101

History Node

1.0.0.post.dev101

History Node

1.0.0.post.dev99

History Node

1.0.0.post0.dev99

History Node

1.0.0.post0.dev97

History Node

1.0.0.post.dev97

History Node

1.0.0.post.dev95

History Node

1.0.0.post0.dev95

History Node

1.0.0.post.dev92

History Node

1.0.0.post0.dev92

History Node

1.0.0.post.dev88

History Node

1.0.0.post0.dev88

History Node

1.0.0.post.dev86

History Node

1.0.0.post0.dev86

History Node

1.0.0.post0.dev84

History Node

1.0.0.post.dev82

History Node

1.0.0.post0.dev82

History Node

1.0.0.post0.dev80

History Node

1.0.0.post.dev80

History Node

1.0.0.post0.dev78

History Node

1.0.0.post.dev76

History Node

1.0.0.post0.dev76

History Node

1.0.0.post.dev74

History Node

1.0.0.post0.dev74

History Node

1.0.0.post.dev72

History Node

1.0.0.post0.dev72

History Node

1.0.0.post.dev70

History Node

1.0.0.post0.dev70

History Node

1.0.0.post.dev68

History Node

1.0.0.post0.dev68

History Node

1.0.0.post.dev66

History Node

1.0.0.post0.dev66

History Node

1.0.0.post.dev64

History Node

1.0.0.post0.dev64

History Node

1.0.0.post0.dev62

History Node

1.0.0.post.dev59

History Node

1.0.0.post0.dev59

History Node

1.0.0.post0.dev57

History Node

1.0.0.post.dev53

History Node

1.0.0.post0.dev53

History Node

1.0.0.post.dev52

History Node

1.0.0.post0.dev52

History Node

1.0.0.post0.dev50

History Node

1.0.0.post.dev48

History Node

1.0.0.post0.dev48

History Node

1.0.0.post.dev46

History Node

1.0.0.post0.dev46

History Node

1.0.0.post.dev44

History Node

1.0.0.post0.dev44

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
codeforlife-portal-1.0.0.post.dev570.tar.gz (23.4 MB) Copy SHA256 Checksum SHA256 Source Jun 23, 2017

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting