Consul - Open Government and E-Participation Web Software
Switch branches/tags
Clone or download
javierm Merge pull request #2967 from consul/backport-1609-fix_skip_flaky_specs
Fix flaky spec: Admin feature flags Enable a disabled feature
Latest commit 5f83118 Oct 11, 2018
Failed to load latest commit information.
.github Add issue template Jul 4, 2018
app Change spelling for constant to TITLE_LENGTH_RANGE, instead of TITLE_… Oct 11, 2018
bin Regenerate bin stubs Feb 6, 2018
config Fix date translations Oct 10, 2018
db Seed some selected legislation proposals Oct 4, 2018
doc updates texts for investments Jan 19, 2018
lib Adds enable help page task Oct 9, 2018
log initial commit Jul 15, 2015
public Remove brand guidelines from readme on to website Sep 13, 2017
scripts Docker/docker-compose enhancements Jun 1, 2018
spec Merge pull request #2967 from consul/backport-1609-fix_skip_flaky_specs Oct 11, 2018
vendor/assets Remove all white spaces Sep 6, 2017
.codeclimate.yml Exclude /vendor folder from Code Climate Dec 8, 2017
.coveralls.yml integrates coveralls with travis Aug 5, 2015
.editorconfig Avoid final new empty lines on yml translation files Nov 13, 2017
.gitignore Don't add CKEditor attachments to version control Sep 12, 2018
.mdlrc Add markdownlinter config file Jun 14, 2017
.rspec do not include foobar in rspec by default Aug 28, 2015
.rubocop.yml Add percent literal delimiters to rubocop rules Sep 26, 2018
.rubocop_todo.yml Enable rubocop Performance/RedundantMatch cop & fix issues Feb 10, 2018
.ruby-version upgrade to ruby 2.3.2 Nov 19, 2016
.scss-lint.yml fixes scss lint warnings Jun 16, 2017
.travis.yml Configure Travis CI to use Chrome addon, install ChromeDriver Mar 27, 2018 Update changelog for release v0.16 Jul 20, 2018 Update Code of Conduct to contributor covenant 1.4 Jul 9, 2017 Update spanish Code of Conduct to 1.4 Aug 17, 2017 Remove unused cleanup section Jul 31, 2018 Remove gemnasium references, service just shut down May 15, 2018
Capfile updates capistrano scm config Mar 14, 2017
Dockerfile Rollback chromedriver version used in Docker to 2.38 Jul 30, 2018
Gemfile Merge pull request #2906 from consul/dependabot/bundler/i18n-tasks-0.… Oct 5, 2018
Gemfile.lock Merge pull request #2906 from consul/dependabot/bundler/i18n-tasks-0.… Oct 5, 2018
Gemfile_custom changed advanced filter from budgets to budgets/investments Jan 22, 2018
LICENSE-AGPLv3.txt changes license to Affero GPL version 3 Aug 12, 2015 Update README May 23, 2018 Remove gemnasium references, service just shut down May 15, 2018
Rakefile knapsack_pro setup Dec 5, 2017
coffeelint.json Add coffeelint configuration file Jun 14, 2017 initial commit Jul 15, 2015
crowdin.yml Correctly configure valencian (spanish) lang name for crowdin Jan 19, 2018
docker-compose.yml Docker/docker-compose enhancements Jun 1, 2018
knapsack_rspec_report.json Regenerate knapsack report Jul 18, 2018



Citizen Participation and Open Government Application

Build Status Code Climate Coverage Status Crowdin License: AGPL v3

Accessibility conformance A11y issues checked with Rocket Validator

Join the chat at PRs Welcome

This is the opensource code repository of the eParticipation website CONSUL, originally developed for the Madrid City government eParticipation website

Current state

Development started on 2015 July 15th. Code was deployed to production on 2015 september 7th to Since then new features are added often. You can take a look at the current features at the project's website and future features at the Roadmap and open issues list.

Configuration for development and test environments

NOTE: For more detailed instructions check the docs

Prerequisites: install git, Ruby 2.3.2, bundler gem, Node.js and PostgreSQL (>=9.4).

git clone
cd consul
bundle install
cp config/database.yml.example config/database.yml
cp config/secrets.yml.example config/secrets.yml
bin/rake db:create
bin/rake db:migrate
bin/rake db:dev_seed
RAILS_ENV=test rake db:setup

Run the app locally:

bin/rails s

Prerequisites for testing: install ChromeDriver >= 2.33

Run the tests with:


You can use the default admin user from the seeds file:

user: pass: 12345678

But for some actions like voting, you will need a verified user, the seeds file also includes one:

user: pass: 12345678

Configuration for production environments

See installer


Check the ongoing documentation at to learn more about how to start your own CONSUL fork, install it, customize it and learn to use it from an administrator/maintainer perspective. You can contribute to it at


Code published under AFFERO GPL v3 (see LICENSE-AGPLv3.txt)