liqd / adhocracy-plus

adhocracy+ is a SaaS platform to make digital democracy easy for everyone
https://adhocracy.plus/
GNU Affero General Public License v3.0
80 stars 20 forks source link

adhocracy+

adhocracy.plus is a free Open-Source participation platform maintained and primarily developed by Liquid Democracy e.V.. It is based on adhocracy 4 and Django. The project's technical documentation currently is in progress. You are welcome to provide feedback by creating a GitHub issue.

Build Status Coverage Status

Getting started

adhocracy+ is designed to make online participation easy and accessible to everyone. It can be used on our SaaS-platform or installed on your own servers. How to get started on our platform is explained here.

Installation for development

Requirements

Installation

git clone https://github.com/liqd/adhocracy-plus.git
cd adhocracy-plus
make install 
make fixtures

Start virtual environment

source venv/bin/activate

Check if tests work

make test

Start a local server

make watch

Go to http://localhost:8004/ and login with admin@liqd.net | password

Installation on a production system

You like adhocracy+ and want to run your own version? An installation guide for production systems can be found here.

Contributing or maintaining your own fork

If you found an issue, want to contribute, or would like to add your own features to your own version of adhocracy+, check out our contributing document.

Security

We take security seriously. If you find any security issues, please feel free to email us at info [at] liqd [dot] net.

Advanced settings

Use postgresql database for testing

run the following command once:

make postgres-create

to start the test server with postgresql, run:

export DATABASE=postgresql
make postgres-start
make watch

Use Celery for task queues

For a celery worker to pick up tasks you need to make sure that:

To start a celery worker node in the foreground, call:

make celery-worker-start

To inspect all registered tasks, list the running worker nodes, call:

make celery-worker-status

To send a dummy task to the queue and report the result, call:

make celery-worker-dummy-task

Check out our extensive celery documentation