ncopenpass / campaignfinance Goto Github PK
View Code? Open in Web Editor NEWNC Campaign Finance Dashboard. Making NC Campaign Funds visible to all citizens
License: MIT License
NC Campaign Finance Dashboard. Making NC Campaign Funds visible to all citizens
License: MIT License
Other NC Open Pass projects seem to use MIT license. I've reached out to Chris Matthews on Slack to ask if there is a preferred license for use to use
Create Sketches for the Primary User Stories.
Notes:
Sub Tasks:
When I go to the NC Campaign Finance Dashboard, I get a good understanding of totals and expenditures across active races and the most recent reports.
Donors Table has filter options for each column.
When I search for a specific industry (healthcare, farm, etc), then I can see a list of the contributions they have made, so I can understand what candidates are being supported by these interest groups.
Unsure if this needs to be done before or after September 1. We can definitely deploy to Heroku and use the generated URL for the initial soft launch
When I search for a specific office race (governor, senate, etc), I can see a breakdown of where each candidate got their support ( by employer) so I can know where each candidate received support from (and how much support).
create a donor search function that allows for searching by first and last name.
This function should work standalone or within an endpoint.
Utilize the pg_trgm function to allow for fuzzy matching. Results should be ordered by match accuracy
For the MVP we can probably use a google form to report. The form should have free text field for the user to explain what is inaccurate.
We should prompt the user to provide links and screenshots to the inaccurate data if possible
We should optionally collect the user's email
Example: https://openstates.org
Utilized the existing search functions to create an aggregate search endpoint. Probably structure a response like this:
{
"pac": [],
"donor": [],
"candidate": []
}
Ensure route supports pagination.
PAC data isn't available yet. For now just return empty data
Table component should display the fields from the wireframe.
Should also include selections and filtering.
Create or modify a route that will return a list of candidates by contest year.
Ensure route can be limited, paginated
(More details need to be added to this issues, e.g. sample files, details about the data expected in the files).
Request key raw data files from the NC Board of Elections:
Date Range: from 2018 to present
Waiting on data from Jeremy
Create Wireframes for the 3 Primary User Stories:
Notes:
Waiting on content and design
Best way to request 10 years worth of data based on the response from SBoE
From: Puffenberger, Michelle [email protected]
Date: Mon, Apr 13, 2020 at 1:34 PM
Subject: RE: [External] Re: Campaign finance data
To: Jeremy Borden [email protected]
Good afternoon,
All of the information should be publicly available at this location https://www.ncsbe.gov/Campaign-Finance/Report-Search. If you have specific information you are looking for, go to https://www.ncsbe.gov/Public-Records-Data-Info/Election-Results-Data and select the Request Data or Public Records link.
Thank you,
Michelle
Use context api to manage current search data, dynamically change route information based on context api.
Determine whether or not there's a way to map SBoE id to an election type. We'll need that reference data to create this view: https://www.figma.com/proto/OcC48DWJjwCsPigGa9vb82/Campaign-Finance-Dashboard-Wireframes?node-id=16%3A2204&viewport=-1320%2C-986%2C0.3811715841293335&scaling=scale-down-width
Potential Source Data:
https://www.ncsbe.gov/Elections/Candidate-Filing#Lists
When I look up a candidate, I can see all the donations/spending/expenditures associated with that candidate.
When I search for a specific candidate, then I can see a list of all contributions they have received and the total, so that I can understand how much support that candidate is getting overall and from whom.
migration etl and server setup
This is partially implemented in the '/candidate/:ncsbeID' route. Another join needs to be made against the candidates
table
Contributions will flow into a Candidate's PAC, we will need the associated PAC for each candidate in order to produce the view shown here: https://www.figma.com/proto/OcC48DWJjwCsPigGa9vb82/Campaign-Finance-Dashboard-Wireframes?node-id=16%3A2204&viewport=-1320%2C-986%2C0.3811715841293335&scaling=scale-down-width
When I look up an office, I can see all the candidates for that office, so that I can make sure I’m assessing all the options.
Summary info:
Total number of donations
Median donation
Largest donation
Don't have content for it yet, but can make a page for it and link it in footer.
When I search for a company, then I can see a list of which candidates they have contributed to, and how much and when, so that I can assess candidates relative to a specific interest.
Waiting on design
Create User Flows for the 3 Primary User Stories:
Good information on user flows here:
This route should return a list of contributions for a given contributorID.
Ensure route works wit Pagination. You can look at other existing routes, for an example. Other ideas are welcome.
When I look up a donor or a specific company then I can see all candidates they’ve contributed to so that I can better educate my community about their options.
Waiting on data
https://nc-campaign-finance.s3.amazonaws.com/finance-extracts/transinq_results_2010.csv
https://nc-campaign-finance.s3.amazonaws.com/finance-extracts/transinq_results_2011.csv
https://nc-campaign-finance.s3.amazonaws.com/finance-extracts/transinq_results_2012.csv
https://nc-campaign-finance.s3.amazonaws.com/finance-extracts/transinq_results_2013.csv
https://nc-campaign-finance.s3.amazonaws.com/finance-extracts/transinq_results_2014.csv
https://nc-campaign-finance.s3.amazonaws.com/finance-extracts/transinq_results_2015.csv
https://nc-campaign-finance.s3.amazonaws.com/finance-extracts/transinq_results_2016.csv
https://nc-campaign-finance.s3.amazonaws.com/finance-extracts/transinq_results_2017.csv
https://nc-campaign-finance.s3.amazonaws.com/finance-extracts/transinq_results_2018-2020-0415.csv
Create or modify an endpoint that will return a list of donors by year.
Ensure route can be limited and paginated
Find some examples representative of the pages we want to use for inspiration in the low-fidelity mocks and wireframes and add them as slides in this doc: https://drive.google.com/open?id=1AZ_O8uDVTWz4NzBkJI0DEgHyxPxcSpF1f7XSbh_zX5g
Shaun suggested looking into Hot Jar
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.