zmon / Code-for-America-Projects-Hub

Help Brigade members find projects to work on. Promote multi-Brigade collaboration. Onboard new members. Encourage public contribution of ideas. Karma. Visualize scope for Code for America. Provide filtered and sorted card list of projects and ideas for development. The list should be available nation-wide and by city.
http://codeforkc.org/Code-for-America-Projects-Hub/
15 stars 13 forks source link

Project card data. Where does the data come from? #9

Open tangospring opened 9 years ago

tangospring commented 9 years ago

The info displayed in the project card is pulled from two sources: GitHub repo and Google spreadsheet. Google Project info form: https://docs.google.com/forms/d/1e1Ne69Dw7Pooicb9dTOEH49KvjQv1_x2F9q8tr27loI/viewform

All Idea card info is stored in Google spreadsheet. Idea info form: https://docs.google.com/forms/d/1H62GmD35j1kwHYcX7r8jT8Gwj3dm8d-SZBVV_H9oz9s/viewform

For Projects Hub filter data see issue https://github.com/codeforkansascity/Code-for-America-Projects-Hub/issues/17

where is the project data coming from

  1. Project Image can be pulled from GitHub issue with custom label 'Project Image' (add image to repo issue and use URL in the project header).
  2. Project location (city or country or Global) - Google spreadsheet
  3. Project title - Google spreadsheet 3a. Project subtitle - Google spreadsheet
  4. Project category (Civic or Code for America, for example: Transportation) - Google spreadsheet
  5. Goals (the first 4 lines, ~20 words are displayed in the card) - the intro to GitHub repo
  6. Link to more info URL - URL of Project description page on Code for America website
  7. Badges: Stars and Watched - GitHub, Comments - GitHub wiki for the project (link to slack channel would be better), Civic Request - Google spreadsheet, Validation (user research) - Google spreadsheet (the checkmark appears, when any of the fields in project definition have content [aside from Goals]
  8. Platform (Website, Web App, Mobile, ...) - Google spreadsheet
  9. Online (link to live product) - Google spreadsheet [the link is disabled, if no URL is entered, text is replaced with "Not online yet"]
  10. Build (used technologies) - GitHub repo + Google spreadsheet
  11. Help - titles of open repo issues labeled with both 'help wanted' and with one of custom tags (see issue https://github.com/codeforkansascity/Code-for-America-Projects-Hub/issues/8 )
  12. Contributors - thumbs from GitHub, with the latest contributors, shown first.
  13. Number of contributors - GitHub
  14. Leader badge - the most active contributor to the GitHub repo

No. Progress - [design update: Progress has been removed from the card view, it is shown on project page only] custom issue label (see issue https://github.com/codeforkansascity/Code-for-America-Projects-Hub/issues/8 ), background is yellow if at least one issue is not closed, background is white if all issues with the tag are closed.

zmon commented 9 years ago

We might think about using TableTop https://github.com/jsoma/tabletop as a way to retrieve the data from a Google Spread Sheet. This is what was used in civic-project-mapping and we used the option simpleSheet: true

Tabletop.init({
     key: Default.spread_sheet_key,
     callback: function(data, tabletop) {
         console.dir(data);            // Display array of objects
     },
     orderby: '3. Project type',       // column name in first row
     simpleSheet: true                 // turn data into an array of objects
 });
zmon commented 9 years ago

Our data from CFA API is http://codeforamerica.org/api/organizations/Code-for-Kansas-City/projects and their github page is at https://github.com/codeforamerica/cfapi and API is http://codeforamerica.org/api/

jstirnaman commented 9 years ago

Code For America API does not appear as a source at all in @tangospring 's diagram, though in the meetings we keep saying that Project info will come from CFA + Github + Google Sheet. So, do we really need to merge CFA and Github, or can we use Github and CFA? Is there anything in the CFA API that is both unique and necessary? The only unique attribute I see in CFA is their internal identifier for the project.

zmon commented 9 years ago

If this is adopted by CFA or we use their back end then we would not need to access GitHub directly since a backend process would be pulling the data. Currently CFA polls GitHub for its data and the civic.jason files that are stored in the repositories.

This diagram is correct. https://github.com/codeforkansascity/Code-for-America-Projects-Hub/wiki/Data-integration-from-Google-spreadsheet,-CFA-API,-and-GitHub

On Sat, May 2, 2015 at 9:47 PM, Jason Stirnaman notifications@github.com wrote:

Code For America API does not appear as a source at all in @tangospring https://github.com/tangospring 's diagram, though in the meetings we keep saying that Project info will come from CFA + Github + Google Sheet. So, do we really need to merge CFA and Github, or can we use Github and CFA? Is there anything in the CFA API that is both unique and necessary? The only unique attribute I see in CFA is their internal identifier for the project.

— Reply to this email directly or view it on GitHub https://github.com/codeforkansascity/Code-for-America-Projects-Hub/issues/9#issuecomment-98430247 .

Paul Barham 816-679-8010

jstirnaman commented 9 years ago

OK, but that diagram says we'll still need to get Issues directly from Github. However, it looks to me like the CFA API includes issues with labels.

rlh-aagis commented 9 years ago

Paul, Depending on how it is configured, the p-hub map interface will need to pull the location data from the API or from CfA's backend. The latter might be a faster alternative. You had mentioned to me once about talking with CfA to get a location specific call added to their API. We could also discuss with them other ways of accomplishing this. How do you believe is the best way to approach this? On May 2, 2015 11:43 PM, "Jason Stirnaman" notifications@github.com wrote:

OK, but that diagram says we'll still need to get Issues directly from Github. However, it looks to me like the CFA API includes issues with labels.

— Reply to this email directly or view it on GitHub https://github.com/codeforkansascity/Code-for-America-Projects-Hub/issues/9#issuecomment-98436533 .