Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Phone Your Rep #3

Open
rapi-castillo opened this issue Jan 12, 2017 · 8 comments
Open

Phone Your Rep #3

rapi-castillo opened this issue Jan 12, 2017 · 8 comments
Assignees
Labels
active status activism project category algorithm css language heroku platform html language javascript language rails language react language

Comments

@rapi-castillo
Copy link

rapi-castillo commented Jan 12, 2017

About Phone Your Rep

allows users to use location data to identify all their representatives and download contact info for all of their representatives to their mobile phone with one click or QR code.

For Live DEMO: msimonborg.github.io/phone_your_rep

Group leaders

@msimonborg - System Architecture
@cormander - Javascript Team Lead (See Issue 38)

Who we're looking for

Javascript developer
React developer
Ruby Rails developer

Tasks

Move GIS processing to client-side:

  1. Create a build script that sources https://github.com/unitedstates/districts and other geojson sources and does the following:
    a. Sources various publicly maintained repositories of politician info and merge it all together; nobody seems to have the complete set of info (I've done this in the past, code is here: https://github.com/OurVoiceUSA/civic-loader)
    b. Use an Rtree algorithm to build a bounding-box (bbox) index of all the shapefiles and bundle it with the React app -- it shouldn't be more than a megabyte
    c. The index refers to the URLs of shapefiles and areas on the static site with json objects about politicians who represent those districts

  2. The React app, after it receives the Lon/Lat coordinates, uses the bbox index to very quickly identify about 10 shapefiles this point is possibly in
    a. Those shapefiles are downloaded and a point-in-polygon (available via npm) algorithm confirms which it's actually in, then fetches those 4 files (state, cd, sldl, sldu)
    b. Example code of point-in-polygon can be found here: https://github.com/OurVoiceUSA/ourvoiceusa-sdk-js/blob/master/index.js
    c. Politicians are displayed along with the district shape overlayed on the map, with their phone number front and center

Original tech:
need 1: API testing, security and stability enhancements; skills: Ruby on Rails
need 2: Front-end deployment; skills: React.js, Heroku, Github Pages
need 3: Build simple, lightweight distributable web widget; skills: JS, HTML, CSS, experience packaging web widgets

Relevant Links

https://github.com/phoneyourrep/phone_your_rep#38
https://github.com/kylebutts/phone_your_rep
https://github.com/msimonborg/phone-your-rep-api

Communication

In ProgCode slack: #phone-your-rep

@rapi-castillo rapi-castillo added activism project category active status labels Jan 15, 2017
@msimonborg
Copy link

hey Rapi, could you share these repo links? these are the current homes for the project:
https://github.com/kylebutts/phone_your_rep
https://github.com/msimonborg/phone-your-rep-api
Thanks!

@rapicastillo
Copy link
Contributor

@msimonborg Sure thing! :)

@msimonborg
Copy link

also add this for the live front-end demo : )
msimonborg.github.io/phone_your_rep

@rapi-castillo
Copy link
Author

Awesome @msimonborg ! Will do, thank you.

@kikoorikoo
Copy link

Hey @msimonborg , great-looking project! I'm getting a 403 error when trying to add a vagrant box from https://s3.amazonaws.com/debugpyr/pyr.box . Do you think it will be available in the near future?

@rodrei
Copy link

rodrei commented Mar 23, 2017

Hey there! FYI there's an open source project written in Python that offers a similar functionality, it's called Call Power

http://callpower.org/
https://github.com/spacedogXYZ/call-power

@PamelaJohn
Copy link
Member

PamelaJohn commented Feb 2, 2019

Hey folks! If you're looking at contributing to this project, please check the recent submission from @cormander to Move GIS processing to a client-side server:

phoneyourrep/phone_your_rep#38

If you would like to contribute javascript skills, please contact @cormander.
If you have questions about system architecture, please contact @msimonborg.

Thanks!

@PamelaJohn PamelaJohn self-assigned this Feb 2, 2019
@PamelaJohn PamelaJohn added react language javascript language rails language labels Feb 2, 2019
@PamelaJohn PamelaJohn added css language heroku platform html language algorithm labels Feb 2, 2019
@PamelaJohn
Copy link
Member

Hey @msimonborg , great-looking project! I'm getting a 403 error when trying to add a vagrant box from https://s3.amazonaws.com/debugpyr/pyr.box . Do you think it will be available in the near future?

Hi @kikoorikoo, A new issue was submitted to address the 403 error, here. Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
active status activism project category algorithm css language heroku platform html language javascript language rails language react language
Projects
None yet
Development

No branches or pull requests

9 participants