Skip to content

philmcmahon/econsensus

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Econsensus

Econsensus is an open source web application tool for consensus decision-making within one or more organizations, used and written by Aptivate.

Please read the documentation and feel free to join the discussion.

If you'd like to contribute to this project, please read the rest of this section, otherwise if you just want to install and try it out, skip to the next section.

If you'd like to contribute to this project, first of all welcome! Secondly, please follow the workflow below:

  • fork the repository on github into your own github account

  • follow the instructions below to install a development instance, but instead of cloning from the aptivate repository, clone from the 'develop' branch of your forked repository - always work on the develop branch because that's more up-to-date than master.

  • now create a branch of your local develop branch as follows:

    $ git branch my_branch

  • and check it out:

    $ git checkout my_branch

  • please run the tests as you develop, and certainly before submitting your changes to us:

    $ cd django/econsensus

    $ rm local_settings.py

    $ ln -s local_settings.py.dev_fasttests local_settings.py

    $ ./manage.py test publicweb

  • once you're done committing and all the tests are passing, push your branch to your account on github:

    $ git push origin my_branch

  • find your branch my_branch on your github account and use the github button to submit a pull request to the aptivate develop branch

  • we'll get notified of your pull request and will be in touch asap

Thank you for your interest!

Install an instance

This is based on using Ubuntu >= 10.04, but should also work on Debian Squeeze.

First install the requirements:

$ sudo apt-get install git-core python-virtualenv python-pip sqlite3 \
      python-dev libxml2-dev libyaml-dev mysql-server mysql-client \
      libmysqlclient-dev build-essential libxslt1-dev mercurial

Then check out the code:

$ # for the latest stable code:
$ git clone https://github.com/aptivate/econsensus.git
$ # for contributors, get the develop branch from your forked repository:
$ git clone https://github.com/my_user_account/econsensus.git -b develop

Then you should be able to do:

$ cd econsensus
$ deploy/tasks.py deploy:dev

This should set up the database you need, install the python packages required, create an initial admin user for use of the django admin screens and a few other details. You should now be able to run the development server:

$ cd django/econsensus/
$ ./manage.py runserver

Use the instance

You should now be able to access the django admin screens at:

http://127.0.0.1:8000/admin/

using the admin user with username and password 'admin'. This password can be changed via the django admin screens (see User table).

You should also be able to access the application screens at:

http://127.0.0.1:8000/

which will show you the login screen, or allow you to "Sign up as a new member".

We suggest you begin by creating some users and organizations for your new econsensus instance. Start by signing up a new member by following the link on the login screen, log in and then create a new organization for that new member. Once you've done this, your new member can add other members to their organization because a creator of a new organization is automatically an admin level user of that organization. You can also repeat these steps to sign up more members and create organizations for them, or you can also create new organizations as an existing logged-in user.

Important note on email notifications

Please note that the processes described above involve email interaction. An econsensus instance installed as above is not set up to send out actual emails, but will instead write emails out as text files into the directory specified by the EMAIL_FILE_PATH setting in local_settings.py. This email behaviour is controlled by the EMAIL_BACKEND setting also in local_settings.py.

About

Consensus decision-making tool

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 93.7%
  • CSS 5.4%
  • Other 0.9%