lgs / agreelist

Tracking influencers' opinions

Home Page:https://agreelist.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

AgreeList

Code Climate Build Status

Agreelist is a non-profit aiming to fight misinformation and improve the quality of debates by showing what people think and why, on both sides of key issues.

https://agreelist.org - Tracking influencers' opinions

Example of topic:

topic example

Donate or become a member:

You can donate or become a member on our Open Collective page:

API

GraphQL API https://agreelist.org/api/v1

Example of use: https://agreelist.org/api/v1?query={agreements(after:8000,limit:3){id,reason,extent,individual{name,twitter,wikipedia},statement{content}}}

{
  agreements(after: 8800, limit: 3) {
    id
    reason
    extent
    individual {
      name
    }
    statement {
      content
    }
  }
}
  1. agreements (limit: Int = 10, after: Int = 1) - Votes from individuals on statements
  • id: Integer
  • individual: Individual
  • statement: Statement
  • extent: Int (agree: 100, disagree: 0)
  • reason: String
  • url: String
  1. individuals (limit: Int = 10, after: Int = 1) - Person or organization who agrees or disagrees statements
  • id: Integer
  • name: String
  • twitter: String
  • wikidata_id: String
  • wikipedia: String
  1. statements (limit: Int = 10, after: Int = 1) - Topic or statement which can be agreed or disagreed
  • id: Integer
  • content: String (title or content of the statement)

Prerequisites:

# Redis
sudo dnf install redis # Fedora
sudo apt-get install redis-server # Ubuntu
brew install redis # Mac

# PostgreSQL
sudo dnf install postgresql postgresql-server postgresql-devel # Fedora
sudo apt-get install postgresql postgresql-contrib libpq-dev # Ubuntu

Install:

git clone git://github.com/hectorperez/agreelist.git
cd agreelist
bundle install
cp config/database.yml.example config/database.yml
rake db:create
rake db:setup

Start local server:

redis-server
bundle exec sidekiq
rails s

Contribute:

  1. Find or create an issue

  2. Add a comment to the issue to let people know you're going to work on it

  3. Fork

  4. Hack your changes in a topic branch (don't forget to write some tests ;)

  5. Make pull request

  6. Wait for comments from maintainers or code merge

Get in touch

License:

AGPLv3

About

Tracking influencers' opinions

https://agreelist.org


Languages

Language:Ruby 71.2%Language:HTML 24.5%Language:CSS 2.4%Language:JavaScript 1.5%Language:CoffeeScript 0.3%