Skip to content

idiles/taskapp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TAASKS
======

The taasks are really important so be sure to read the text below before
starting to work on it. Seriously.

Installation and preparation
============================

    $ mkdir -p /project/parent/folder

    $ cd /project/parent/folder

    $ git clone ssh://dev/code/taasks.git

    $ cd taasks

    $ virtualenv .
      The project is being developed using python 2.6 though might work with
      other versions as well

Install all the dependencies (including django):
    $ bin/python setup.py develop

(Temporary) Until South catches up with Django 1.2 apply a patch:
    $ ./temp/south-patch

    $ cd taasks

Create tables for the third party packages:
    $ ../bin/python manage.py syncdb --noinput
      This also loads initial_data.xml. This data contains things like groups
      and group-permission relationships we rely on. However, the
      group-permission relationships are based on foreign keys which can change
      any time so this is a problem we need to address at some point.
      We prefer xml over json because it does not throw NotJSONSerializable
      errors. If you hate xml'ing, use
        $ ../bin/python manage.py dumpdata --format=xml --indent=2 > initial_data.xml
      to generate the current DB state and remove what's not needed.

Create the database schema using the database migrations (south):
    $ ../bin/python manage.py migrate
      Until South catches up with Django 1.2 please issue this command several
      times until all the migrations are finished. Ignore the errors.

    $ ../bin/python manage.py runserver

(Optional) If you need an admin user you can create it now using
    $ ../bin/python manage.py createsuperuser
      This will NOT work before the database is migrated

(Optional) If you don't want to enter ../bin/python manage.py (or whatever)
all the time you can do
    $ echo "../bin/python manage.py \"\$@\"" > manage && chmod +x manage
so later you can just
    $ ./manage test tasks
instead of
    $ ../bin/python manage.py test tasks

Development guidelines
======================

- Respect other people' work and use 3rd party projects

- Don't forget to
    $ ../bin/python manage.py test
      While we are working with unstable some 3rd party packages won't pass
      tests. But we should test our packages nevertheless.


Third party projects in use
===========================

south
-----

http://south.aeracode.org

We want to have a stable database model, track database changes in a
_decentralized_ way preserving our test data regardless of the changes.

We think that south is currently the best-of-breed.


Third party projects to consider
================================

django_compressor
-----------------

http://github.com/mintchaos/django_compressor

The CSS and JS has to be compressed to be served in production. This tool should
do it. If we could contribute a filter that would replace

    {{ MEDIA_URL }}
    with
    /static     (or whatever)
    
    and

    {% url my_named_url some_id='my_variable' %}
    with
    '/my/named/url/' + my_variable + '/included/as.string'

we could not desire anything more.

CleverCSS
---------

http://github.com/dziegler/clevercss

This one's a companion for django_compressor. Maybe worth a try if the css
becomes complex enough.

About

Nice tasks app / Django

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors