README

Welcome to Rietveld
-------------------
This project shows how to create a somewhat substantial web application
using Django on Google App Engine. It requires Django version 1.0.
In addition, I hope it will serve as a practical tool for the Python
developer community, and hopefully for other open source communities.
As I've learned over the last two years at Google, where I developed a
similar tool named Mondrian, proper code review habits can really
improve the quality of a code base, and good tools for code review
will improve developers' life.
Some code in this project was derived from Mondrian, but this is not
the full Mondrian tool.
--Guido van Rossum, Python creator and Google employee
Links
-----
Mondrian video: http://www.youtube.com/watch?v=sMql3Di4Kgc
Google App Engine: http://code.google.com/appengine/
Live app: http://codereview.appspot.com
About code review: http://en.wikipedia.org/wiki/Code_review
Django: http://djangoproject.com
Python: http://python.org
License
-------
The license is Apache 2.0. See the file COPYING.
Running
-------
*** NEW *** YOU MUST INSTALL DJANGO 1.0 FIRST BEFORE RUNNING LOCALLY.
Download Django-1.0.2-final.tar.gz from www.djangoproject.com (or
whatever the latest micro-version of 1.0 is) and follow the
installation instructions. Typically:
tar xzf Django-1.0.2-final.tar.gz
cd Django-1.0.2-final
sudo python setup.py install
NOTE: On the Mac, if you are using the Google App Engine Launcher, the
Python version it uses may differ from the default you have on the
command line. To install Django into the correct Python version, you
may have to do the following:
sudo /usr/bin/python setup.py install
To run the app locally (e.g. for testing), download the Google App
Engine SDK from http://code.google.com/appengine/downloads.html. You
can then run the server using
make serve
(assuming you're on Linux or Mac OS X).
The server is only accessible on http://localhost:8080. The server in
the Google App Engine SDK is not designed for serving real traffic.
The App Engine FAQ at http://code.google.com/appengine/kb/general.html
says about this: "You can override this using the -a <hostname> flag
when running it, but doing so is not recommended because the SDK has
not been hardened for security and may contain vulnerabilities."
To deploy your own instance of the app to Google App Engine:
1. Register your own application ID on the App Engine admin site.
2. Edit app.yaml to use this app ID instead of 'codereview'.
3. Upload using
make update
*** Don't forget step 2! If you forget to change the application ID,
you'll get a error message from "appcfg.py update" (called by "make
update") complaining you don't have the right to administer this app.