OpenCiviWiki
OpenCiviWiki copied to clipboard
Building a Better Democracy for the Internet Age
Welcome to Civiwiki
We are an open-source, non-profit community, working to develop a democratic engagement web system.
Why CiviWiki?
- Democratically Contributed Media. As the name CiviWiki implies, our core content will be contributed by volunteers on our Wiki. Our topic format is modular. The structure allows both a community of volunteers to collaborate on a single political issue and reserves space for dissenting opinions.
- Personalized Policy Feed. CiviWiki intelligently personalizes users' feed in two meaningful ways. First, the issues promoted to users' feed will be personalized to the user's expressed interests, and the timeliness of the issue. Second, the structure of the issue topics breaks policy positions into bite-sized contentions we call Civies. Each Civi is logically related to the rest of the topic. Based on the user's support, opposition, or neutrality to each Civi, CiviWiki promotes different relevant content.
- Citizen/Representative Engagement. CiviWiki's core goal is to engage citizens and their representatives, with the goal of making government more accountable. CiviWiki will achieve this goal in two ways. First, CiviWiki will organize the user's policy profile and compare it to every political candidate in the user's district. This quick, detailed, comparison will help users make informed votes, and we believe increased voter confidence will increase voter turnout. Second, CiviWiki will collect anonymized user data and forward district-level statistics to representatives. With a critical mass of users, we believe timely district-level polling data will influence representatives' votes.
Contact info
Contact us on Twitter to join the team.
Join us on the following channels:
- development discussions on Loomio
- videos of our weekly planning meetings on Internet Archive
- live chat on Matrix
- @CiviWiki on Twitter
Contribute
See our Contributing Guide for instructions on how to contribute ideas, bug reports and code code.
Docker Installation
The code can also be run in a docker container using the docker-compose.yml file.
- In the root directory, run the build command to create the docker image.
docker-compose build
- To create and start the containers run:
docker-compose up -d
- Run migrations and other commands (required only for the first time running the project or if you make any changes in the models)
# Check if there are any pending migrations
docker-compose exec web python project/manage.py makemigrations
# Run all pending migrations
docker-compose exec web python project/manage.py migrate
# Collect static files for django to serve
docker-compose exec web python project/manage.py collectstatic
- Create a superuser to log in and manage CiviWiki
docker-compose exec web python project/manage.py createsuperuser
- Populate the initial data (required only for the first setup)
docker-compose exec web python project/manage.py ./data/categories.json
docker-compose exec web python project/manage.py ./data/sample_threads.json
The server will automatically load at http://localhost:8000 after running the above commands. Once there, click 'log in/register', and then 'register new user'.
Contributors
Thanks to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind are welcome!