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.
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.
- nodejs (+ npm)
- python 3.x (+ venv + pip)
- libpq (only if postgres should be used)
- sqlite3 with JSON1 enabled
- redis (in production, not needed for development)
- pillow-heif (required for macOS M1 Monterey and newer versions)
git clone https://github.com/liqd/adhocracy-plus.git
cd adhocracy-plus
make install
make fixtures
source venv/bin/activate
make test
make watch
Go to http://localhost:8004/ and login with admin@liqd.net | password
You like adhocracy+ and want to run your own version? An installation guide for production systems can be found here.
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.
We take security seriously. If you find any security issues, please feel free to email us at info [at] liqd [dot] net.
run the following command once:
make postgres-create
to start the test server with postgresql, run:
export DATABASE=postgresql
make postgres-start
make watch
For a celery worker to pick up tasks you need to make sure that:
- the redis server is running. Check it by running
redis-cli ping
it should return: PONG
- the celery config parameter "always eager" is disabled (add
CELERY_TASK_ALWAYS_EAGER = False
to yourlocal.py
) Celery's always_eager is disabled to ensure tests run the celery tasks inline instead of scheduling them via the Redis broker. local.py should be under adhocracy_plus/config/settings, create one if it doesn't exist. This file saves settings for local development.
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