Open JMStudiosJoe opened 6 years ago
From our last discussion at civic hack night with @psithara and @lilannie, it seems like we want to build the frontend with React.
The app as a whole: Node,JS Express, React
Data parsing (which libraries did you want to use @psithara)
Based on what we discussed, I've written up some user stories. I'm open to your ideas and feedback:
(Bar charts with largest to lowest amounts):
Overall stats about Contributions: % out of state, % within X (district or city), % within California
A break down of total contributions
Link to see all contributions (not including loans), and it should take the user to another view, where they see a table and contributions organized by largest --> smallest amount: Donor Name | Donation Amount | Date of Donation
A break down of total expenditures
Optional/Phase 2 (more pages): Committees controlled by candidate
Other pages/tabs on menu:
What do y'all think? @JMStudiosJoe @psithara @lilannie @myracheng
@ychoy yes this all sounds good to me, should we get a google sheet going with a list of user stories then GitHub issues? Sounds like this project could also use its own drive folder?
I love the user stories! Great job ☺️ I plan to put a bunch of the frontend together this weekend.
I'm no CSS wiz, but I can whip together an un-styled E.R.N. (Express React Node) website real quick.
@JMStudiosJoe I shared with you the draft Google doc project roadmap via your email. I think each user story could be broken up into separate issues.
Awesome, @lilannie!
@lilannie sounds good on starting the front end do you plan on using create-react-app? I can help with the css part and can also integrate the small project for looking up by address. @ychoy yes got the document thanks :)
Sent with GitHawk
@ychoy I like the stories. How does CFSJ typically make prospective users aware that apps/content are available? E.g. plugin or link to Merc? Link in https://votersedge.org/ca? If someone can send me a link to screenshots here or on slack I can get user feedback.
@lilannie @JMStudiosJoe @ychoy here is the link to embed votersedge - https://votersedge.org/ca/page/resources#engage-voters. I like their UI - very simple
@JMStudiosJoe
I have only minimally played around with create-react-app
.
I plan on using Webpack to build the JS and SASS. I can serve the Webpack bundle using Node.JS for dev purposes.
I'm assuming we want to insert the Webpack bundle in the public/index.html
file when we deploy.
@lilannie do we need SASS? I have gotten pretty good with just CSS and React makes it nice and easy. create-react-app
does all that for you besides the SASS and gets a good starting point for not only project structure but tests are easy to add from there as well. Up to you though :)
@JMStudiosJoe SASS is just a nice to have. Not super necessary. Same thing as CSS with some added bonuses like variables.
You can add normal CSS to SASS files and it'll work the same.
I just finished the boilerplate: https://github.com/codeforsanjose/OpenDSJ-2018/pull/7
Gonna continue working on it today.
@ychoy @lilannie @dphale think we can close this issue as well. Plan for frontend is React with SASS with NodeJS express backend. We also have user stories to start developing.
- The user will see a two column panel: left sidebar is a list of local elections including local measures. The right sidebar is wider (3/4th of the page) and is a page with instructions (click something on the left) if nothing is selected
Number 3 in the list of user stories is partially done.
We just need to add instructions to the DetailViewContainer when nothing is selected.
- The user can click on an election / measure. For example, if they click San Jose City Council, the left sidebar should open an accordion that shows a list of City Council races for the General Election.
Just a thought: I don't think the different Races should be hidden under an accordion until the list of Races is gigantic.
For now, I think it makes our site look more legitimate if we show all the Races we have gathered data about.
I agree that we should have all the Races more prominently displayed, so users can immediately find it and see what other options there are. One concern is that doing so may be too overwhelming, e.g. if voters aren't sure which city council they are supposed to be voting for
This issue is pending. We may not need to implement our own frontend if we decide to use Code for Oakland's Open Disclosure website.
This is one of the visualization library I found which works with React Demo: https://nivo.rocks/pie Github: https://github.com/plouc/nivo
Are there plans for moving to more modern web app architecture?