From 7fef27335ab7b3c09bda1f2fc7b90badfcafbfe1 Mon Sep 17 00:00:00 2001 From: Froilan Irizarry Date: Mon, 26 Mar 2018 03:55:51 -0400 Subject: [PATCH 1/7] Get status.json from API not file - Statuses are now retrieved from the clientService and not the statusService - Changed the way the requirements are read. This is an experimental change and might be reverted --- .../compliance-dashboard.component.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/app/components/policy-guide/docs/compliance/compliance-dashboard/compliance-dashboard.component.ts b/src/app/components/policy-guide/docs/compliance/compliance-dashboard/compliance-dashboard.component.ts index c8bca6ff..72233907 100644 --- a/src/app/components/policy-guide/docs/compliance/compliance-dashboard/compliance-dashboard.component.ts +++ b/src/app/components/policy-guide/docs/compliance/compliance-dashboard/compliance-dashboard.component.ts @@ -44,7 +44,7 @@ export class ComplianceDashboardComponent implements OnInit, OnDestroy { } getStatuses() { - this.statusesSub = this.statusService.getJsonFile(). + this.statusesSub = this.clientService.getStatuses(). subscribe((result) => { if (result) { for (let statusAgency in result.statuses) { @@ -52,14 +52,14 @@ export class ComplianceDashboardComponent implements OnInit, OnDestroy { // if agencyWidePolicy is null in report.json it means the agency doesn't have // to comply, so don't include it in the dash. // TODO: should make this more explicit in the API, - if (result.statuses[statusAgency].requirements['agencyWidePolicy'] !== null) { + if (result.statuses[statusAgency].metadata.agency.requirements['agencyWidePolicy'] !== null) { let requirements = []; let overallStatus; - for (let requirement in result.statuses[statusAgency].requirements) { - if (result.statuses[statusAgency].requirements.hasOwnProperty(requirement)) { - const rValue = result.statuses[statusAgency].requirements[requirement]; + for (let requirement in result.statuses[statusAgency].metadata.agency.requirements) { + if (result.statuses[statusAgency].metadata.agency.requirements.hasOwnProperty(requirement)) { + const rValue = result.statuses[statusAgency].metadata.agency.requirements[requirement]; let requirementStatus = 'noncompliant'; From 3d8a39243c2aac1a1621d631eacaa2db2e7c815c Mon Sep 17 00:00:00 2001 From: Froilan Irizarry Date: Mon, 26 Mar 2018 03:56:01 -0400 Subject: [PATCH 2/7] Add status.json endpoint - Added getStatuses method. - Added AgencyStatus interface. --- src/app/services/client/client.service.ts | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/app/services/client/client.service.ts b/src/app/services/client/client.service.ts index eb95be2c..36b75262 100644 --- a/src/app/services/client/client.service.ts +++ b/src/app/services/client/client.service.ts @@ -79,6 +79,11 @@ export interface Repo { repoID: string; } +export interface AgencyStatus { + timestamp: string; + statuses: object; +} + @Injectable() export class ClientService { @@ -86,7 +91,14 @@ export class ClientService { constructor (private http: Http) { } - + getStatuses(): Observable { + let url = this.BASE + 'status.json'; + return this.http.get(url) + .map((response: Response) => response.json()) + .map((data: any) => { + return data; + }); + } getAgencies(): Observable { let url = this.BASE + 'agencies?size=1000'; return this.http.get(url) From ef1c1888aeed7ad99d604cdd878b34a7312be5e8 Mon Sep 17 00:00:00 2001 From: Froilan Irizarry Date: Wed, 4 Apr 2018 19:11:32 -0400 Subject: [PATCH 3/7] Delete unused files. - Report files are no longer used. This data is now retrieved from the API --- src/assets/report.json | 631 ------- src/assets/repos110216.json | 3217 ----------------------------------- 2 files changed, 3848 deletions(-) delete mode 100644 src/assets/report.json delete mode 100644 src/assets/repos110216.json diff --git a/src/assets/report.json b/src/assets/report.json deleted file mode 100644 index d0cd0d05..00000000 --- a/src/assets/report.json +++ /dev/null @@ -1,631 +0,0 @@ -{ - "timestamp": "Tue Feb 27 2018 13:10:51 GMT-0500 (EST)", - "statuses": { - "VA": { - "status": "NOT COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 15, - "name": "Department of Veterans Affairs", - "acronym": "VA", - "website": "https://va.gov/", - "codeUrl": "https://www.va.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 0, - "openSourceRequirement": 0, - "inventoryRequirement": 0, - "schemaFormat": 1, - "overallCompliance": 0 - } - }, - "DOJ": { - "status": "PARTIALY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 10, - "name": "Department of Justice", - "acronym": "DOJ", - "website": "https://justice.gov", - "codeUrl": "https://www.justice.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 0.75, - "openSourceRequirement": 0, - "inventoryRequirement": 0, - "schemaFormat": 1, - "overallCompliance": 0.25 - } - }, - "DOL": { - "status": "PARTIALY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 11, - "name": "Department of Labor", - "acronym": "DOL", - "website": "https://www.dol.gov", - "codeUrl": "https://www.dol.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 1, - "openSourceRequirement": 0, - "inventoryRequirement": 0, - "schemaFormat": 1, - "overallCompliance": 0.3333333333333333 - } - }, - "NSF": { - "status": "FULLY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 20, - "name": "National Science Foundation", - "acronym": "NSF", - "website": "https://nsf.gov/", - "codeUrl": "https://www.nsf.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 1, - "openSourceRequirement": 1, - "inventoryRequirement": 1, - "schemaFormat": 1, - "overallCompliance": 1 - } - }, - "USDA": { - "status": "PARTIALY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 1, - "name": "Department of Agriculture", - "acronym": "USDA", - "website": "https://usda.gov/", - "codeUrl": "https://www.usda.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 0.75, - "openSourceRequirement": 0, - "inventoryRequirement": 0, - "schemaFormat": 1, - "overallCompliance": 0.25 - } - }, - "NARA": { - "status": "PARTIALY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 24, - "name": "National Archives and Records Administration", - "acronym": "NARA", - "website": "https://archives.gov/", - "codeUrl": "https://www.archives.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 1, - "openSourceRequirement": 0.5, - "inventoryRequirement": 0.5, - "schemaFormat": 1, - "overallCompliance": 0.6666666666666666 - } - }, - "DOS": { - "status": "NOT COMPLIANT", - "issues": [], - "version": "1.0.3", - "metadata": { - "agency": { - "id": 12, - "name": "Department of State", - "acronym": "DOS", - "website": "https://state.gov/", - "codeUrl": "https://www.state.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 0, - "openSourceRequirement": 0, - "inventoryRequirement": 0, - "schemaFormat": 1, - "overallCompliance": 0 - } - }, - "SSA": { - "status": "PARTIALY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 25, - "name": "Social Security Administration", - "acronym": "SSA", - "website": "https://www.ssa.gov", - "codeUrl": "https://www.ssa.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 1, - "openSourceRequirement": 1, - "inventoryRequirement": 0.5, - "schemaFormat": 1, - "overallCompliance": 0.8333333333333334 - } - }, - "TREASURY": { - "status": "PARTIALY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 14, - "name": "Department of the Treasury", - "acronym": "TREASURY", - "website": "https://www.treasury.gov/", - "codeUrl": "https://www.treasury.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 0.75, - "openSourceRequirement": 0, - "inventoryRequirement": 0, - "schemaFormat": 1, - "overallCompliance": 0.25 - } - }, - "SBA": { - "status": "PARTIALY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 23, - "name": "Small Business Administration", - "acronym": "SBA", - "website": "https://sba.gov/", - "codeUrl": "https://www.sba.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 1, - "openSourceRequirement": 0, - "inventoryRequirement": 0, - "schemaFormat": 1, - "overallCompliance": 0.3333333333333333 - } - }, - "USAID": { - "status": "PARTIALY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 18, - "name": "Agency for International Development", - "acronym": "USAID", - "website": "https://usaid.gov/", - "codeUrl": "https://www.usaid.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 1, - "openSourceRequirement": 0, - "inventoryRequirement": 0, - "schemaFormat": 1, - "overallCompliance": 0.3333333333333333 - } - }, - "EPA": { - "status": "PARTIALY COMPLIANT", - "issues": [ - { - "keyword": "required", - "dataPath": ".releases[5].contact", - "schemaPath": "#/properties/releases/items/properties/contact/required", - "params": { - "missingProperty": "email" - }, - "message": "should have required property 'email'" - }, - { - "keyword": "required", - "dataPath": ".releases[11].contact", - "schemaPath": "#/properties/releases/items/properties/contact/required", - "params": { - "missingProperty": "email" - }, - "message": "should have required property 'email'" - }, - { - "keyword": "required", - "dataPath": ".releases[22].contact", - "schemaPath": "#/properties/releases/items/properties/contact/required", - "params": { - "missingProperty": "email" - }, - "message": "should have required property 'email'" - }, - { - "keyword": "required", - "dataPath": ".releases[43].contact", - "schemaPath": "#/properties/releases/items/properties/contact/required", - "params": { - "missingProperty": "email" - }, - "message": "should have required property 'email'" - }, - { - "keyword": "required", - "dataPath": ".releases[64].contact", - "schemaPath": "#/properties/releases/items/properties/contact/required", - "params": { - "missingProperty": "email" - }, - "message": "should have required property 'email'" - }, - { - "keyword": "required", - "dataPath": ".releases[81].contact", - "schemaPath": "#/properties/releases/items/properties/contact/required", - "params": { - "missingProperty": "email" - }, - "message": "should have required property 'email'" - }, - { - "keyword": "required", - "dataPath": ".releases[82].contact", - "schemaPath": "#/properties/releases/items/properties/contact/required", - "params": { - "missingProperty": "email" - }, - "message": "should have required property 'email'" - }, - { - "keyword": "required", - "dataPath": ".releases[101].contact", - "schemaPath": "#/properties/releases/items/properties/contact/required", - "params": { - "missingProperty": "email" - }, - "message": "should have required property 'email'" - }, - { - "keyword": "required", - "dataPath": ".releases[104].contact", - "schemaPath": "#/properties/releases/items/properties/contact/required", - "params": { - "missingProperty": "email" - }, - "message": "should have required property 'email'" - }, - { - "error": "Agency: EPA - Error: Agency: EPA has not passed schema validation." - } - ], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 16, - "name": "Environmental Protection Agency", - "acronym": "EPA", - "website": "https://epa.gov/", - "codeUrl": "https://www.epa.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 1, - "openSourceRequirement": 0.5, - "inventoryRequirement": 0, - "schemaFormat": 0.5, - "overallCompliance": 0.5 - } - }, - "DOI": { - "status": "NOT COMPLIANT", - "issues": [ - { - "error": "error loading: https://www.doi.gov/code.json - reason: statusCode 404" - } - ], - "version": "N/A", - "metadata": { - "agency": { - "id": 9, - "name": "Department of Interior", - "acronym": "DOI", - "website": "https://data.doi.gov/", - "codeUrl": "https://www.doi.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 0, - "openSourceRequirement": 0, - "inventoryRequirement": 0, - "schemaFormat": 0.5, - "overallCompliance": 0 - } - }, - "GSA": { - "status": "FULLY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 19, - "name": "General Services Administration", - "acronym": "GSA", - "website": "https://gsa.gov/", - "codeUrl": "https://www.gsa.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 1, - "openSourceRequirement": 1, - "inventoryRequirement": 1, - "schemaFormat": 1, - "overallCompliance": 1 - } - }, - "NRC": { - "status": "PARTIALY COMPLIANT", - "issues": [], - "version": "1.0.1", - "metadata": { - "agency": { - "id": 21, - "name": "Nuclear Regulatory Commission", - "acronym": "NRC", - "website": "https://www.nrc.gov/", - "codeUrl": "https://www.nrc.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 1, - "openSourceRequirement": 0, - "inventoryRequirement": 0, - "schemaFormat": 1, - "overallCompliance": 0.3333333333333333 - } - }, - "DOE": { - "status": "FULLY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 5, - "name": "Department of Energy", - "acronym": "DOE", - "website": "https://energy.gov/", - "codeUrl": "https://www.energy.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 1, - "openSourceRequirement": 1, - "inventoryRequirement": 1, - "schemaFormat": 1, - "overallCompliance": 1 - } - }, - "DOT": { - "status": "PARTIALY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 13, - "name": "Department of Transportation", - "acronym": "DOT", - "website": "https://www.transportation.gov/", - "codeUrl": "https://www.transportation.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 1, - "openSourceRequirement": 0.5, - "inventoryRequirement": 0, - "schemaFormat": 1, - "overallCompliance": 0.5 - } - }, - "ED": { - "status": "PARTIALY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 4, - "name": "Department of Education", - "acronym": "ED", - "website": "https://ed.gov/", - "codeUrl": "https://www.ed.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 1, - "openSourceRequirement": 1, - "inventoryRequirement": 0, - "schemaFormat": 1, - "overallCompliance": 0.6666666666666666 - } - }, - "DOC": { - "status": "PARTIALY COMPLIANT", - "issues": [ - { - "error": "error loading: https://www.commerce.gov/code.json - reason: statusCode 404" - } - ], - "version": "N/A", - "metadata": { - "agency": { - "id": 2, - "name": "Department of Commerce", - "acronym": "DOC", - "website": "https://www.commerce.gov/", - "codeUrl": "https://www.commerce.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 0.75, - "openSourceRequirement": 0, - "inventoryRequirement": 0, - "schemaFormat": 0.5, - "overallCompliance": 0.25 - } - }, - "NASA": { - "status": "PARTIALY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 17, - "name": "National Aeronautics and Space Administration", - "acronym": "NASA", - "website": "https://nasa.gov/", - "codeUrl": "https://code.nasa.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 1, - "openSourceRequirement": 1, - "inventoryRequirement": 0.5, - "schemaFormat": 1, - "overallCompliance": 0.8333333333333334 - } - }, - "DOD": { - "status": "NOT COMPLIANT", - "issues": [ - { - "error": "error loading: https://www.defense.gov/code.json - reason: statusCode 404" - } - ], - "version": "N/A", - "metadata": { - "agency": { - "id": 3, - "name": "Department of Defense", - "acronym": "DOD", - "website": "https://www.defense.gov/", - "codeUrl": "https://www.defense.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 0, - "openSourceRequirement": 0, - "inventoryRequirement": 0, - "schemaFormat": 0.5, - "overallCompliance": 0 - } - }, - "DHS": { - "status": "PARTIALY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 8, - "name": "Department of Homeland Security", - "acronym": "DHS", - "website": "https://www.dhs.gov", - "codeUrl": "https://www.dhs.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 1, - "openSourceRequirement": 0, - "inventoryRequirement": 0, - "schemaFormat": 1, - "overallCompliance": 0.3333333333333333 - } - }, - "HUD": { - "status": "PARTIALY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 7, - "name": "Department of Housing and Urban Development", - "acronym": "HUD", - "website": "https://www.hud.gov/", - "codeUrl": "https://www.hud.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 0.75, - "openSourceRequirement": 0, - "inventoryRequirement": 1, - "schemaFormat": 1, - "overallCompliance": 0.5833333333333334 - } - }, - "HHS": { - "status": "PARTIALY COMPLIANT", - "issues": [], - "version": "2.0.0", - "metadata": { - "agency": { - "id": 6, - "name": "Department of Health and Human Services", - "acronym": "HHS", - "website": "https://hhs.gov", - "codeUrl": "https://www.hhs.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 1, - "openSourceRequirement": 0, - "inventoryRequirement": 0, - "schemaFormat": 1, - "overallCompliance": 0.3333333333333333 - } - }, - "OPM": { - "status": "PARTIALY COMPLIANT", - "issues": [ - { - "error": "error loading: https://www.opm.gov/code.json - reason: statusCode 404" - } - ], - "version": "N/A", - "metadata": { - "agency": { - "id": 22, - "name": "Office of Personnel Management", - "acronym": "OPM", - "website": "https://opm.gov/", - "codeUrl": "https://www.opm.gov/code.json" - } - }, - "requirements": { - "agencyWidePolicy": 0.75, - "openSourceRequirement": 0, - "inventoryRequirement": 0, - "schemaFormat": 0.5, - "overallCompliance": 0.25 - } - } - } -} diff --git a/src/assets/repos110216.json b/src/assets/repos110216.json deleted file mode 100644 index 233a1c81..00000000 --- a/src/assets/repos110216.json +++ /dev/null @@ -1,3217 +0,0 @@ -{ - "total": 45, - "repos": [ - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/CommerceGov/commerce.gov-api.git", - "repoURL": "https://github.com/CommerceGov/commerce.gov-api", - "name": "commerce.gov-api", - "repoID": "43393077", - "events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - "homepage": "", - "downloadURL": " ", - "description": "Content API for Commerce.gov ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/CommerceGov/commerce.gov-api/blob/master/LICENSE.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "content" - }, - { - "tag": "api" - }, - { - "tag": "commerce" - }, - { - "tag": "gov" - } - ], - "codeLanguage": [], - "agency": "DOC" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/fedspendingtransparency/data-act-broker-web-app.git", - "repoURL": "https://github.com/fedspendingtransparency/data-act-broker-web-app", - "name": "data-act-broker-web-app", - "repoID": "47277547", - "events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - "homepage": "", - "downloadURL": " ", - "description": "", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/fedspendingtransparency/data-act-broker-web-app/blob/dev/LICENSE", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "data act" - }, - { - "tag": "api" - } - ], - "codeLanguage": [ - { - "language": "JavaScript" - } - ], - "updated": { - "lastCommit": "2016-09-04T17:27:20Z", - "metadataLastUpdated": "2015-12-02T17:41:07Z", - "lastModified": "2016-10-20T19:50:02Z" - }, - "agency": "TRE" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/department-of-veterans-affairs/vets-website.git", - "repoURL": "https://github.com/department-of-veterans-affairs/vets-website", - "name": "vets-website", - "repoID": "33202667", - "events": [ - { - "id": "33202667", - "name": "department-of-veterans-affairs/vets-website", - "type":"IssueComment", - "user":"webinista", - "time":"2016-10-25T15:29:36Z", - "message": "Updated URL routes in Rx and messaging.", - "url":"https://api.github.com/repos/department-of-veterans-affairs/vets-website/issues/3512" -},{ - "id": "33202667", - "name": "department-of-veterans-affairs/vets-website", - "type":"PullRequest", - "user":"crwallace", - "time":"2016-10-25T15:18:43Z", - "message": "removes 1010AD", - "url":"https://api.github.com/repos/department-of-veterans-affairs/vets-website/pulls/3526" -},{ - "id": "33202667", - "name": "department-of-veterans-affairs/vets-website", - "type":"Create", - "user":"crwallace", - "time":"2016-10-25T15:17:36Z" - -},{ - "id": "33202667", - "name": "department-of-veterans-affairs/vets-website", - "type":"Push", - "user":"U-DON", - "time":"2016-10-25T15:13:58Z", - "message": "adds a link for loa3 to global sign in for development (#3523) * adds a link for loa3 to global sign in for development * chnages json structure to new schema * fixes tests", - "url":"https://api.github.com/repos/department-of-veterans-affairs/vets-website/commits/53ffc860595ee42bd1d002b6b320655393fdf10a" -},{ - "id": "33202667", - "name": "department-of-veterans-affairs/vets-website", - "type":"Push", - "user":"U-DON", - "time":"2016-10-25T15:00:37Z", - "message": "adds a link for loa3 to global sign in for development (#3523) * adds a link for loa3 to global sign in for development * chnages json structure to new schema * fixes tests", - "url":"https://api.github.com/repos/department-of-veterans-affairs/vets-website/commits/53ffc860595ee42bd1d002b6b320655393fdf10a" -},{ - "id": "33202667", - "name": "department-of-veterans-affairs/vets-website", - "type":"Push", - "user":"U-DON", - "time":"2016-10-25T14:59:42Z", - "message": "Fix scroll handling on claims status (#3509)", - "url":"https://api.github.com/repos/department-of-veterans-affairs/vets-website/commits/bcf7abb63e5af5e084c41951769c3da808437919" -} - ], - "homepage": "https://www.vets.gov/", - "downloadURL": " ", - "description": "Beta version of Vets.gov", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": "https://twitter.com/DeptVetAffairs/", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/department-of-veterans-affairs/vets-website/blob/master/LICENSE", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "beta" - }, - { - "tag": "version" - }, - { - "tag": "vets" - }, - { - "tag": "gov" - } - ], - "codeLanguage": [ - { - "language": "JavaScript" - } - ], - "updated": { - "lastCommit": "2016-10-08T11:22:57Z", - "metadataLastUpdated": "2015-03-31T18:34:05Z", - "lastModified": "2016-10-20T22:56:47Z" - }, - "agency": "VA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/department-of-veterans-affairs/vets-api.git", - "repoURL": "https://github.com/department-of-veterans-affairs/vets-api", - "name": "vets-api", - "repoID": "62409417", - "events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - "homepage": "", - "downloadURL": " ", - "description": "API for vets.gov ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": "https://twitter.com/DeptVetAffairs/", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/department-of-veterans-affairs/vets-api/blob/master/LICENSE.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "api" - }, - { - "tag": "vets" - }, - { - "tag": "gov" - } - ], - "codeLanguage": [ - { - "language": "Ruby" - } - ], - "updated": { - "lastCommit": "2016-10-03T04:59:16Z", - "metadataLastUpdated": "2016-07-01T17:33:19Z", - "lastModified": "2016-10-20T23:22:17Z" - }, - "agency": "VA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/USEPA/E-Enterprise-Portal.git", - "repoURL": "https://github.com/USEPA/E-Enterprise-Portal", - "name": "E-Enterprise-Portal", - "repoID": "36677210", - "events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - "homepage": "", - "downloadURL": " ", - "description": "E-Enterprise is a transformative approach to make environmental information and data more accessible, efficient, and evidence-based through advances in monitoring, reporting, and information technology. The Portal is designed to be a modern and efficient interface for environmental transactions. This includes easier access to information and making transactions with environmental agencies as efficient and effective as possible. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/USEPA/E-Enterprise-Portal/blob/master/drupal/LICENSE.txt", - "license_name": "GPLv2", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "environmental" - }, - { - "tag": "information" - }, - { - "tag": "data" - }, - { - "tag": "epa" - }, - { - "tag": "evidence-based" - }, - { - "tag": "monitoring" - }, - { - "tag": "reporting" - }, - { - "tag": "portal" - }, - { - "tag": "ux" - }, - { - "tag": "ui" - }, - { - "tag": "interface" - }, - { - "tag": "environmental" - }, - { - "tag": "transactions" - } - ], - "codeLanguage": [ - { - "language": "PHP" - } - ], - "updated": { - "lastCommit": "2016-09-15T19:34:23Z", - "metadataLastUpdated": "2015-06-01T17:37:20Z", - "lastModified": "2016-08-15T20:58:30Z" - }, - "agency": "EPA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/nasa/trick.git", - "repoURL": "https://github.com/nasa/trick", - "name": "trick", - "repoID": "30925311", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "", - "downloadURL": " ", - "description": "Trick Simulation Environment. Trick provides a common set of simulation capabilities and utilities to build simulations automatically. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/nasa/trick/blob/master/LICENSE", - "license_name": "NOSA", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "trick" - }, - { - "tag": "simulation" - }, - { - "tag": "simulation environment" - }, - { - "tag": "trick" - } - ], - "codeLanguage": [ - { - "language": "C++" - } - ], - "updated": { - "lastCommit": "2016-10-20T21:36:20Z", - "metadataLastUpdated": "2015-02-17T16:17:32Z", - "lastModified": "2016-10-20T19:55:48Z" - }, - "agency": "NASA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/nasa/earthdata-search.git", - "repoURL": "https://github.com/nasa/earthdata-search", - "name": "earthdata-search", - "repoID": "40671758", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "https://search.earthdata.nasa.gov", - "downloadURL": " ", - "description": "Earthdata Search is a web application developed by NASA EOSDIS to enable data discovery, search, comparison, visualization, and access across EOSDIS' Earth Science data holdings. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/nasa/earthdata-search/blob/master/LICENSE", - "license_name": "Apache v2", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "earthdata" - }, - { - "tag": "web application" - }, - { - "tag": "data" - }, - { - "tag": "application" - }, - { - "tag": "developed" - }, - { - "tag": "nasa" - }, - { - "tag": "eosdis" - }, - { - "tag": "visualization" - } - ], - "codeLanguage": [ - { - "language": "Ruby" - } - ], - "updated": { - "lastCommit": "2016-10-16T01:28:33Z", - "metadataLastUpdated": "2015-08-13T17:13:40Z", - "lastModified": "2016-10-20T19:51:58Z" - }, - "agency": "NASA" - }, - { - "status": "alpha", - "vcs": "git", - "repository": "git://github.com/presidential-innovation-fellows/apps-gov.git", - "repoURL": "https://github.com/presidential-innovation-fellows/apps-gov", - "name": "apps-gov", - "repoID": "50465059", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "https://apps.gov", - "downloadURL": " ", - "description": "Be more productive ", - "contact": [ - { - "email": "apps-gov@gsa.gov", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/presidential-innovation-fellows/apps-gov/blob/master/LICENSE.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "apps.gov" - }, - { - "tag": "cloud" - }, - { - "tag": "ATO" - }, - { - "tag": "SaaS" - }, - { - "tag": "IaaS" - }, - { - "tag": "PaaS" - }, - { - "tag": "micro-purchase" - }, - { - "tag": "gwac" - }, - { - "tag": "schedule 70" - }, - { - "tag": "procurement" - } - ], - "codeLanguage": [ - { - "language": "CSS" - } - ], - "updated": { - "lastCommit": "2016-10-06T13:27:55Z", - "metadataLastUpdated": "2016-01-26T22:49:22Z", - "lastModified": "2016-10-20T21:47:26Z" - }, - "agency": "GSA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/usnationalarchives/File-Analyzer.git", - "repoURL": "https://github.com/usnationalarchives/File-Analyzer", - "name": "File-Analyzer", - "repoID": "2533400", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "http://www.archives.gov/developer", - "downloadURL": " ", - "description": "NARA File Analyzer and Metadata Harvester ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/usnationalarchives/File-Analyzer/blob/master/LICENSE.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "nara" - }, - { - "tag": "file analyzer" - }, - { - "tag": "metadata" - }, - { - "tag": "harvester" - } - ], - "codeLanguage": [ - { - "language": "Java" - } - ], - "updated": { - "lastCommit": "2016-09-25T23:00:52Z", - "metadataLastUpdated": "2011-10-07T15:35:12Z", - "lastModified": "2016-02-16T21:50:49Z" - }, - "agency": "NARA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/USDA/RIDB.git", - "repoURL": "https://github.com/USDA/RIDB", - "name": "RIDB", - "repoID": "29924484", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "https://usda.github.io/RIDB", - "downloadURL": " ", - "description": "Recreation Information Database ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://path.to/license", - "license_name": "", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "recreation" - }, - { - "tag": "information" - }, - { - "tag": "database" - } - ], - "codeLanguage": [ - { - "language": "HTML" - } - ], - "agency": "USDA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/bro/bro.git", - "repoURL": "https://github.com/bro/bro", - "name": "bro", - "repoID": "4930716", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "http://www.bro.org", - "downloadURL": " ", - "description": "Bro is a powerful network analysis framework that is much different from the typical IDS you may know. Official mirror of git.bro.org/bro.git . ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/bro/bro/blob/master/doc/LICENSE", - "license_name": "CCBY4.0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "bro" - }, - { - "tag": "network analysis" - }, - { - "tag": "framework" - } - ], - "codeLanguage": [ - { - "language": "Bro" - } - ], - "updated": { - "lastCommit": "2016-10-20T15:43:20Z", - "metadataLastUpdated": "2012-07-06T20:30:16Z", - "lastModified": "2016-10-20T15:53:52Z" - }, - "agency": "DOE" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/USDepartmentofLabor/Child-Labor.git", - "repoURL": "https://github.com/USDepartmentofLabor/Child-Labor", - "name": "Child-Labor", - "repoID": "37860521", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "", - "downloadURL": " ", - "description": "", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://path.to/license", - "license_name": "", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [], - "codeLanguage": [ - { - "language": "Swift" - } - ], - "updated": { - "lastCommit": "2016-04-01T12:35:30Z", - "metadataLastUpdated": "2015-06-22T14:35:39Z", - "lastModified": "2016-10-18T18:27:45Z" - }, - "agency": "DOL" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/department-of-veterans-affairs/sniffybara.git", - "repoURL": "https://github.com/department-of-veterans-affairs/sniffybara", - "name": "sniffybara", - "repoID": "51226712", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "", - "downloadURL": " ", - "description": "Gem that adds automatic 508 accessibility compliance checks into your Capybara specs ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": "https://twitter.com/DeptVetAffairs/", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://path.to/license", - "license_name": "", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "gem" - }, - { - "tag": "508" - }, - { - "tag": "accessibility" - }, - { - "tag": "compliance" - }, - { - "tag": "checks" - }, - { - "tag": "capybara" - }, - { - "tag": "specs" - } - ], - "codeLanguage": [ - { - "language": "Ruby" - } - ], - "updated": { - "lastCommit": "2016-08-15T18:41:20Z", - "metadataLastUpdated": "2016-02-06T23:12:38Z", - "lastModified": "2016-09-23T15:25:11Z" - }, - "agency": "VA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/nasa/openmct.git", - "repoURL": "https://github.com/nasa/openmct", - "name": "openmct", - "repoID": "36753839", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "https://nasa.github.io/openmct/", - "downloadURL": " ", - "description": "A web based mission control framework. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/nasa/openmct/blob/master/LICENSES.md", - "license_name": "Apache v1", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "web-based" - }, - { - "tag": "mission control" - }, - { - "tag": "framework" - } - ], - "codeLanguage": [ - { - "language": "JavaScript" - } - ], - "updated": { - "lastCommit": "2016-10-20T09:42:29Z", - "metadataLastUpdated": "2015-06-02T18:40:28Z", - "lastModified": "2016-10-20T21:38:07Z" - }, - "agency": "NASA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/USAJOBS/open-source-policy.git", - "repoURL": "https://github.com/USAJOBS/open-source-policy", - "name": "open-source-policy", - "repoID": "44256248", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "https://usajobs.gov", - "downloadURL": " ", - "description": "This repository contains the official Open Source Policy of USAJOBS ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/USAJOBS/open-source-policy/blob/master/LICENSE.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "open source" - }, - { - "tag": "source code" - }, - { - "tag": "policy" - }, - { - "tag": "usajobs" - } - ], - "codeLanguage": [], - "agency": "OPM" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/USAJOBS/Help.git", - "repoURL": "https://github.com/USAJOBS/Help", - "name": "Help", - "repoID": "52627605", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "http://usajobs.github.io/Help/", - "downloadURL": " ", - "description": "Next generation of help content for USAJOBS ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/USAJOBS/Help/blob/master/LICENSE.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "faq" - }, - { - "tag": "jobs" - }, - { - "tag": "help" - }, - { - "tag": "usajobs" - } - ], - "codeLanguage": [ - { - "language": "HTML" - } - ], - "agency": "OPM" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/cfpb/owning-a-home.git", - "repoURL": "https://github.com/cfpb/owning-a-home", - "name": "owning-a-home", - "repoID": "15999442", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "http://consumerfinance.gov/owning-a-home", - "downloadURL": " ", - "description": "Suite of tools and resources for homebuyers. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/cfpb/owning-a-home/blob/master/TERMS.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "home ownership" - }, - { - "tag": "housing" - }, - { - "tag": "house" - }, - { - "tag": "homebuyers" - } - ], - "codeLanguage": [ - { - "language": "JavaScript" - } - ], - "updated": { - "lastCommit": "2016-09-22T18:50:28Z", - "metadataLastUpdated": "2014-01-17T12:42:59Z", - "lastModified": "2016-10-20T20:05:10Z" - }, - "agency": "CFPB" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/WhiteHouse/fb_messenger_bot.git", - "repoURL": "https://github.com/WhiteHouse/fb_messenger_bot", - "name": "fb_messenger_bot", - "repoID": "70825196", - "events": [ - { - "id": "70825196", - "name": "WhiteHouse/fb_messenger_bot", - "type":"Fork", - "user":"xsongx", - "time":"2016-10-25T15:26:48Z" - -},{ - "id": "70825196", - "name": "WhiteHouse/fb_messenger_bot", - "type":"Watch", - "user":"levelos", - "time":"2016-10-25T15:09:48Z" - -},{ - "id": "70825196", - "name": "WhiteHouse/fb_messenger_bot", - "type":"Fork", - "user":"youngshine", - "time":"2016-10-25T14:26:30Z" - -},{ - "id": "70825196", - "name": "WhiteHouse/fb_messenger_bot", - "type":"Fork", - "user":"XiliangSong", - "time":"2016-10-25T11:01:10Z" - -},{ - "id": "70825196", - "name": "WhiteHouse/fb_messenger_bot", - "type":"Watch", - "user":"XiliangSong", - "time":"2016-10-25T11:01:07Z" - -},{ - "id": "70825196", - "name": "WhiteHouse/fb_messenger_bot", - "type":"Fork", - "user":"happyqq", - "time":"2016-10-25T08:08:06Z" - -} - ], - "homepage": "", - "downloadURL": " ", - "description": "This Drupal module provides a tool to build a chat bot to work on Facebook's Messenger Platform. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/WhiteHouse/software-policy/blob/gh-pages/LICENSE.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "drupal" - }, - { - "tag": "module" - }, - { - "tag": "chat" - }, - { - "tag": "bot" - }, - { - "tag": "facebook" - }, - { - "tag": "messenger" - }, - { - "tag": "facebook messenger" - } - ], - "codeLanguage": [ - { - "language": "PHP" - } - ], - "updated": { - "lastCommit": "2016-10-20T23:54:30Z", - "metadataLastUpdated": "2016-10-13T16:17:43Z", - "lastModified": "2016-10-17T16:49:53Z" - }, - "agency": "EOP" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/USDA/data-standards.git", - "repoURL": "https://github.com/USDA/data-standards", - "name": "data-standards", - "repoID": "64396310", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "https://usda.github.io/data-standards", - "downloadURL": " ", - "description": "A collaborative site for official USDA data elements and data standards. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/USDA/data-standards/blob/gh-pages/LICENSE", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "usda" - }, - { - "tag": "data standards" - } - ], - "codeLanguage": [ - { - "language": "CSS" - } - ], - "agency": "USDA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/CommerceGov/CommerceGov.github.io.git", - "repoURL": "https://github.com/CommerceGov/CommerceGov.github.io", - "name": "CommerceGov.github.io", - "repoID": "13225017", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "", - "downloadURL": " ", - "description": " ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://path.to/license", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "" - } - ], - "codeLanguage": [ - { - "language": "CSS" - } - ], - "agency": "DOC" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/dun/conman.git", - "repoURL": "https://github.com/dun/conman", - "name": "conman", - "repoID": "32411476", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "", - "downloadURL": " ", - "description": "ConMan: The Console Manager ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/dun/conman", - "license_name": "GPLv3", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "conman" - }, - { - "tag": "console" - }, - { - "tag": "manager" - } - ], - "codeLanguage": [ - { - "language": "C" - } - ], - "updated": { - "lastCommit": "2016-04-26T23:10:27Z", - "metadataLastUpdated": "2015-03-17T18:13:16Z", - "lastModified": "2016-10-20T23:34:14Z" - }, - "agency": "DOE" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/USEPA/My-Right-To-Know--MyRTK-.git", - "repoURL": "https://github.com/USEPA/My-Right-To-Know--MyRTK-", - "name": "My-Right-To-Know--MyRTK-", - "repoID": "10644334", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "", - "downloadURL": " ", - "description": "This application compares toxic chemical releases from individual facilities to releases from other facilities in the same county, as well as to releases from other facilities in the same industry sector. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/USEPA/My-Right-To-Know--MyRTK-/blob/master/LICENSE.md", - "license_name": "EPAOSA", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "toxic" - }, - { - "tag": "chemical" - }, - { - "tag": "industry" - }, - { - "tag": "epa" - }, - { - "tag": "mobile" - }, - { - "tag": "web" - }, - { - "tag": "water" - }, - { - "tag": "pollution" - } - ], - "codeLanguage": [ - { - "language": "JavaScript" - } - ], - "updated": { - "lastCommit": "2014-05-05T17:35:07Z", - "metadataLastUpdated": "2013-06-12T14:15:41Z", - "lastModified": "2013-06-19T21:46:47Z" - }, - "agency": "EPA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/nasa/NASA-3D-Resources.git", - "repoURL": "https://github.com/nasa/NASA-3D-Resources", - "name": "NASA-3D-Resources", - "repoID": "22180681", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "", - "downloadURL": " ", - "description": "Here you'll find a growing collection of 3D models, textures, and images from inside NASA. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://path.to/license", - "license_name": "", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "3D" - }, - { - "tag": "nasa" - }, - { - "tag": "3d models" - }, - { - "tag": "nasa" - } - ], - "codeLanguage": [ - { - "language": "Mathematica" - } - ], - "updated": { - "lastCommit": "2016-10-20T10:12:50Z", - "metadataLastUpdated": "2014-07-23T21:59:37Z", - "lastModified": "2016-10-19T00:05:55Z" - }, - "agency": "NASA" - }, - { - "status": "production", - "vcs": "git", - "repository": "git://github.com/18F/web-design-standards.git", - "repoURL": "https://github.com/18F/web-design-standards", - "name": "web-design-standards", - "repoID": "35968578", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "https://standards.usa.gov", - "downloadURL": " ", - "description": "Open source UI components and visual style guide for U.S. government websites ", - "contact": [ - { - "email": "uswebdesignstandards@gsa.gov", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/18F/web-design-standards/blob/staging/LICENSE.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "css" - }, - { - "tag": "source" - }, - { - "tag": "ui" - }, - { - "tag": "components" - }, - { - "tag": "visual" - }, - { - "tag": "style" - }, - { - "tag": "guide" - }, - { - "tag": "uswds" - }, - { - "tag": "web design" - }, - { - "tag": "design standards" - }, - { - "tag": "websites" - } - ], - "codeLanguage": [ - { - "language": "HTML" - } - ], - "updated": { - "lastCommit": "2016-10-20T01:19:57Z", - "metadataLastUpdated": "2015-05-20T19:10:10Z", - "lastModified": "2016-10-20T21:37:45Z" - }, - "agency": "GSA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/USAJOBS/analytics.usajobs.gov.git", - "repoURL": "https://github.com/USAJOBS/analytics.usajobs.gov", - "name": "analytics.usajobs.gov", - "repoID": "58501015", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "https://analytics.usajobs.gov", - "downloadURL": " ", - "description": "USAJOBS web traffic. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/USAJOBS/analytics.usajobs.gov/blob/18f-pages/LICENSE.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "usajobs" - }, - { - "tag": "analytics" - }, - { - "tag": "web-traffic" - } - ], - "codeLanguage": [ - { - "language": "CSS" - } - ], - "agency": "OPM" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/USAJOBS/analytics-reporter.git", - "repoURL": "https://github.com/USAJOBS/analytics-reporter", - "name": "analytics-reporter", - "repoID": "58501082", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "", - "downloadURL": " ", - "description": "Lightweight analytics reporting and publishing tool for Google Analytics data. Powers https://analytics.usa.gov, http://analytics.phila.gov, http://analytics.cityofsacramento.org, and more. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/USAJOBS/analytics-reporter/blob/master/LICENSE.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "analytics" - }, - { - "tag": "reporting" - }, - { - "tag": "google analytics" - }, - { - "tag": "ga" - } - ], - "codeLanguage": [ - { - "language": "JavaScript" - } - ], - "agency": "OPM" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/eregs/eregs.github.io.git", - "repoURL": "https://github.com/eregs/eregs.github.io", - "name": "eregs.github.io", - "repoID": "22834612", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "https://eregs.github.io/", - "downloadURL": " ", - "description": "Documentation for the eRegulations project. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/eregs/eregs.github.io/blob/master/LICENSE", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "documentation" - }, - { - "tag": "eregulations" - } - ], - "codeLanguage": [ - { - "language": "CSS" - } - ], - "updated": { - "lastCommit": "2016-09-27T19:20:50Z", - "metadataLastUpdated": "2014-08-11T09:58:52Z", - "lastModified": "2016-10-05T16:25:15Z" - }, - "agency": "CFPB" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/USDA/USDA-APIs.git", - "repoURL": "https://github.com/USDA/USDA-APIs", - "name": "USDA-APIs", - "repoID": "10064296", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "www.usda.gov/developer", - "downloadURL": " ", - "description": "Do you have feedback, ideas, or questions for USDA APIs? Use this repository's Issue Tracker to join the discussion. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://path.to/license", - "license_name":"", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "usda" - }, - { - "tag": "apis" - }, - { - "tag": "rec1stop" - }, - { - "tag": "api" - }, - { - "tag": "ridb" - }, - { - "tag": "issue tracker" - } - ], - "codeLanguage": [], - "agency": "USDA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/CommerceGov/Policies-and-Guidance.git", - "repoURL": "https://github.com/CommerceGov/Policies-and-Guidance", - "name": "Policies-and-Guidance", - "repoID": "33949902", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "", - "downloadURL": " ", - "description": "Official instructions that are directly relevant to work performed by @CommerceGov on Github. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/CommerceGov/Policies-and-Guidance/blob/master/LICENSE", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "official" - }, - { - "tag": "instructions" - }, - { - "tag": "directly" - }, - { - "tag": "relevant" - }, - { - "tag": "work" - }, - { - "tag": "performed" - }, - { - "tag": "commercegov" - }, - { - "tag": "github" - }, - { - "tag": "" - } - ], - "codeLanguage": [], - "agency": "DOC" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/samilliken/openDCIM.git", - "repoURL": "https://github.com/samilliken/openDCIM", - "name": "openDCIM", - "repoID": "4059172", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "http://opendcim.org", - "downloadURL": " ", - "description": "An open source (GPL v3) Data Center Inventory Management (DCIM) application. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/samilliken/openDCIM", - "license_name": "GPLv3", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "open source" - }, - { - "tag": "source" - }, - { - "tag": "data center" - }, - { - "tag": "inventory management" - }, - { - "tag": "dcim" - } - ], - "codeLanguage": [ - { - "language": "PHP" - } - ], - "updated": { - "lastCommit": "2016-10-13T20:01:48Z", - "metadataLastUpdated": "2012-04-18T01:46:19Z", - "lastModified": "2016-10-18T20:04:22Z" - }, - "agency": "DOE" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/dun/munge.git", - "repoURL": "https://github.com/dun/munge", - "name": "munge", - "repoID": "35699486", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "", - "downloadURL": " ", - "description": "MUNGE Uid 'N' Gid Emporium ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/dun/munge", - "license_name": "GPLv3", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "munge" - }, - { - "tag": "uid" - }, - { - "tag": "gid" - }, - { - "tag": "emporium" - } - ], - "codeLanguage": [ - { - "language": "C" - } - ], - "updated": { - "lastCommit": "2016-10-12T14:46:24Z", - "metadataLastUpdated": "2015-05-15T22:16:19Z", - "lastModified": "2016-10-08T07:37:01Z" - }, - "agency": "DOE" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/USDepartmentofLabor/Swift-Federal-Data-SDK.git", - "repoURL": "https://github.com/USDepartmentofLabor/Swift-Federal-Data-SDK", - "name": "Swift-Federal-Data-SDK", - "repoID": "20970680", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "http://usdepartmentoflabor.github.io/Swift-Federal-Data-SDK/", - "downloadURL": " ", - "description": "Federal Data SDK built in the Swift programming language. Follow the link for the documentation: ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/USDepartmentofLabor/Swift-Federal-Data-SDK/blob/master/SWXMLHash LICENSE", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "federal data" - }, - { - "tag": "data" - }, - { - "tag": "sdk" - }, - { - "tag": "swift" - } - ], - "codeLanguage": [ - { - "language": "Swift" - } - ], - "updated": { - "lastCommit": "2016-09-13T03:15:42Z", - "metadataLastUpdated": "2014-06-18T17:06:25Z", - "lastModified": "2016-04-15T13:12:04Z" - }, - "agency": "DOL" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/fedspendingtransparency/fedspendingtransparency.github.io.git", - "repoURL": "https://github.com/fedspendingtransparency/fedspendingtransparency.github.io", - "name": "fedspendingtransparency.github.io", - "repoID": "24609061", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "http://fedspendingtransparency.github.io", - "downloadURL": " ", - "description": "Federal Spending Transparency ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/fedspendingtransparency/fedspendingtransparency.github.io/blob/master/LICENSE", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "federal spending" - }, - { - "tag": "transparency" - } - ], - "codeLanguage": [ - { - "language": "CSS" - } - ], - "updated": { - "lastCommit": "2016-10-03T00:30:28Z", - "metadataLastUpdated": "2014-09-29T19:11:53Z", - "lastModified": "2016-10-04T20:29:08Z" - }, - "agency": "TRE" - }, - { - "status": "production", - "vcs": "git", - "repository": "git://github.com/18F/vote-gov.git", - "repoURL": "https://github.com/18F/vote-gov", - "name": "vote-gov", - "repoID": "57156495", - "events": [ - { - "id": "57156495", - "name": "18F/vote-gov", - "type":"Issues", - "user":"jamesharnett", - "time":"2016-10-19T18:00:42Z" - -},{ - "id": "57156495", - "name": "18F/vote-gov", - "type":"IssueComment", - "user":"arantxarecio", - "time":"2016-10-17T21:42:29Z", - "message": "Add statement about voter reg deadlines to state pages", - "url":"https://api.github.com/repos/18F/vote-gov/issues/151" -},{ - "id": "57156495", - "name": "18F/vote-gov", - "type":"Issues", - "user":"megdaly", - "time":"2016-10-17T18:15:22Z" - -},{ - "id": "57156495", - "name": "18F/vote-gov", - "type":"Issues", - "user":"yozlet", - "time":"2016-10-11T20:28:57Z" - -},{ - "id": "57156495", - "name": "18F/vote-gov", - "type":"IssueComment", - "user":"yozlet", - "time":"2016-10-11T20:28:57Z", - "message": "Launch checklist", - "url":"https://api.github.com/repos/18F/vote-gov/issues/121" -},{ - "id": "57156495", - "name": "18F/vote-gov", - "type":"Push", - "user":"yozlet", - "time":"2016-10-11T18:16:57Z", - "message": "Add redirector nginx conf", - "url":"https://api.github.com/repos/18F/vote-gov/commits/91b79a23d061b5117446c60a6b48f1d4a4ac1254" -} - ], - "homepage": "https://vote.gov/", - "downloadURL": " ", - "description": "This repository contains the files and infrastructure to run the current vote.gov website. ", - "contact": [ - { - "email": "john.yuda@gsa.gov", - "name": "John Yuda", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/18F/vote-gov/blob/staging/LICENSE.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "voting" - }, - { - "tag": "elections" - }, - { - "tag": "voter registration" - }, - { - "tag": "voter reg" - }, - { - "tag": "voter" - }, - { - "tag": "election" - }, - { - "tag": "vote" - }, - { - "tag": "vote.gov" - }, - { - "tag": "votar" - } - ], - "codeLanguage": [ - { - "language": "HTML" - } - ], - "updated": { - "lastCommit": "2016-10-06T22:37:01Z", - "metadataLastUpdated": "2016-04-26T19:35:23Z", - "lastModified": "2016-10-11T18:16:56Z" - }, - "agency": "GSA" - }, - { - "status": "production", - "vcs": "git", - "repository": "git://github.com/presidential-innovation-fellows/code-gov-web.git", - "repoURL": "https://github.com/presidential-innovation-fellows/code-gov-web", - "name": "code-gov-web", - "repoID": "65018281", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "https://code.gov", - "downloadURL": " ", - "description": "Federal Source Code policy implementation.", - "contact": [ - { - "email": "code@listserv.gsa.gov", - "name": "Code.gov Team", - "twitter": "htttps://twitter.com/codedotgov", - "phone": " " - } - ], - "partners": [ - { - "name": "OMB" - }, - { - "email": " " - } - ], - "license": "https://github.com/presidential-innovation-fellows/code-gov-web/blob/master/LICENSE.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "open source" - }, - { - "tag": "source" - }, - { - "tag": "peoples code" - }, - { - "tag": "government code" - }, - { - "tag": "code" - }, - { - "tag": "policy" - }, - { - "tag": "source code" - }, - { - "tag": "code.gov" - } - ], - "codeLanguage": [ - { - "language": "JavaScript" - } - ], - "updated": { - "lastCommit": "2016-10-18T16:42:30Z", - "metadataLastUpdated": "2016-08-05T12:53:38Z", - "lastModified": "2016-10-20T19:03:31Z" - }, - "agency": "GSA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/cfpb/college-costs.git", - "repoURL": "https://github.com/cfpb/college-costs", - "name": "college-costs", - "repoID": "43300650", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "", - "downloadURL": " ", - "description": "A tool to help students weigh the costs and rewards of a college program. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/cfpb/college-costs/blob/master/LICENSE", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "students" - }, - { - "tag": "education" - }, - { - "tag": "college costs" - }, - { - "tag": "higher education" - }, - { - "tag": "college" - } - ], - "codeLanguage": [ - { - "language": "CSS" - } - ], - "updated": { - "lastCommit": "2016-08-23T21:13:45Z", - "metadataLastUpdated": "2015-09-28T12:51:23Z", - "lastModified": "2016-10-20T16:31:59Z" - }, - "agency": "CFPB" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/USDepartmentofLabor/OSHA-Heat-Safety-iOS.git", - "repoURL": "https://github.com/USDepartmentofLabor/OSHA-Heat-Safety-iOS", - "name": "OSHA-Heat-Safety-iOS", - "repoID": "9076547", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "", - "downloadURL": " ", - "description": "This app allows workers and supervisors to calculate the heat index for their worksite, and, based on the heat index, displays a risk level to outdoor workers. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://path.to/license", - "license_name": "", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "app" - }, - { - "tag": "heat index" - }, - { - "tag": "worksite" - }, - { - "tag": "risk level" - }, - { - "tag": "outdoor workers" - } - ], - "codeLanguage": [ - { - "language": "HTML" - } - ], - "updated": { - "lastCommit": "2016-02-07T23:10:32Z", - "metadataLastUpdated": "2013-03-28T12:26:25Z", - "lastModified": "2016-06-20T13:41:13Z" - }, - "agency": "DOL" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/fedspendingtransparency/data-act-broker-backend.git", - "repoURL": "https://github.com/fedspendingtransparency/data-act-broker-backend", - "name": "data-act-broker-backend", - "repoID": "57313310", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "", - "downloadURL": " ", - "description": "", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/fedspendingtransparency/data-act-broker-backend/blob/master/LICENSE.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "data act" - }, - { - "tag": "api" - } - ], - "codeLanguage": [ - { - "language": "Python" - } - ], - "updated": { - "lastCommit": "2016-08-30T17:03:39Z", - "metadataLastUpdated": "2016-04-28T15:39:36Z", - "lastModified": "2016-10-20T19:46:35Z" - }, - "agency": "TRE" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/department-of-veterans-affairs/roadrunner-rails.git", - "repoURL": "https://github.com/department-of-veterans-affairs/roadrunner-rails", - "name": "roadrunner-rails", - "repoID": "50939211", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "", - "downloadURL": " ", - "description": "Base rails project with the VA special sauce. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": "https://twitter.com/DeptVetAffairs/", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/department-of-veterans-affairs/roadrunner-rails/blob/master/LICENSE.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "ruby" - }, - { - "tag": "rails" - }, - { - "tag": "project" - }, - { - "tag": "roadrunner" - } - ], - "codeLanguage": [ - { - "language": "Ruby" - } - ], - "updated": { - "lastCommit": "2016-05-25T15:06:47Z", - "metadataLastUpdated": "2016-02-02T17:44:07Z", - "lastModified": "2016-08-11T19:41:23Z" - }, - "agency": "VA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/USEPA/WNTR.git", - "repoURL": "https://github.com/USEPA/WNTR", - "name": "WNTR", - "repoID": "63262591", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "", - "downloadURL": " ", - "description": "", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/USEPA/WNTR/blob/master/LICENSE.txt", - "license_name": "BSD-3,LGPLv2", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [], - "codeLanguage": [ - { - "language": "Python" - } - ], - "updated": { - "lastCommit": "2016-09-29T12:51:16Z", - "metadataLastUpdated": "2016-07-13T16:33:33Z", - "lastModified": "2016-10-17T19:54:56Z" - }, - "agency": "EPA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/USAJOBS/design-system.git", - "repoURL": "https://github.com/USAJOBS/design-system", - "name": "design-system", - "repoID": "44112444", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "http://usajobs.github.io/design-system/", - "downloadURL": " ", - "description": "The design system for the next generation of USAJOBs. Describes the design language and reusable components of the site. ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/USAJOBS/design-system/blob/gh-pages/LICENSE.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "usajobs" - }, - { - "tag": "jobs" - }, - { - "tag": "uswds" - } - ], - "codeLanguage": [ - { - "language": "CSS" - } - ], - "agency": "OPM" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/usnationalarchives/federalregister-api-core.git", - "repoURL": "https://github.com/usnationalarchives/federalregister-api-core", - "name": "federalregister-api-core", - "repoID": "607511", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "https://www.federalregister.gov", - "downloadURL": " ", - "description": "Federal Register 2.0 API and Data Importer ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/usnationalarchives/federalregister-api-core/blob/master/LICENSE", - "license_name": "AGPLv3", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "federal register" - }, - { - "tag": "api" - }, - { - "tag": "data" - }, - { - "tag": "data importer" - } - ], - "codeLanguage": [ - { - "language": "HTML" - } - ], - "updated": { - "lastCommit": "2016-09-22T07:55:40Z", - "metadataLastUpdated": "2010-04-12T23:21:43Z", - "lastModified": "2016-07-26T19:27:05Z" - }, - "agency": "NARA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/usnationalarchives/federal_register.git", - "repoURL": "https://github.com/usnationalarchives/federal_register", - "name": "federal_register", - "repoID": "2138478", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "http://www.federalregister.gov/learn/developers", - "downloadURL": " ", - "description": "Ruby API Client for FederalRegister.gov that handles searching articles and getting information about agencies ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/usnationalarchives/federal_register/blob/master/LICENSE.md", - "license_name": "CC0", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "ruby" - }, - { - "tag": "api" - }, - { - "tag": "client" - }, - { - "tag": "federalregister" - } - ], - "codeLanguage": [ - { - "language": "Ruby" - } - ], - "updated": { - "lastCommit": "2016-09-22T07:56:20Z", - "metadataLastUpdated": "2011-08-01T19:09:24Z", - "lastModified": "2015-03-12T00:18:58Z" - }, - "agency": "NARA" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/WhiteHouse/petitions.git", - "repoURL": "https://github.com/WhiteHouse/petitions", - "name": "petitions", - "repoID": "5532200", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "https://petitions.whitehouse.gov/", - "downloadURL": " ", - "description": "Drupal installation profile powering We The People at petitions.whitehouse.gov ", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/WhiteHouse/petitions#license", - "license_name": "CC0,GPLv2", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "drupal" - }, - { - "tag": "petitions" - }, - { - "tag": "whitehouse" - } - ], - "codeLanguage": [ - { - "language": "JavaScript" - } - ], - "updated": { - "lastCommit": "2016-10-20T10:12:56Z", - "metadataLastUpdated": "2012-08-23T20:47:42Z", - "lastModified": "2016-09-30T14:25:59Z" - }, - "agency": "EOP" - }, - { - "status": " ", - "vcs": "git", - "repository": "git://github.com/WhiteHouse/wh-app-android.git", - "repoURL": "https://github.com/WhiteHouse/wh-app-android", - "name": "wh-app-android", - "repoID": "5662026", -"events": [ - { - "id": "", - "name": "", - "type":"", - "user":"", - "time":"", - "message": "", - "url":"" -}], - - "homepage": "", - "downloadURL": " ", - "description": "", - "contact": [ - { - "email": " ", - "name": " ", - "twitter": " ", - "phone": " " - } - ], - "partners": [ - { - "name": " " - }, - { - "email": " " - } - ], - "license": "https://github.com/WhiteHouse/wh-app-android#license", - "license_name": "MIT", - "openproject": 1, - "govwideReuseproject": 0, - "closedproject": 0, - "exemption": "", - "projectTags": [ - { - "tag": "android" - }, - { - "tag": "white house" - }, - { - "tag": "white house app" - } - ], - "codeLanguage": [ - { - "language": "Java" - } - ], - "updated": { - "lastCommit": "2016-10-17T01:57:54Z", - "metadataLastUpdated": "2012-09-03T17:41:49Z", - "lastModified": "2015-12-19T08:10:50Z" - }, - "agency": "EOP" - } - ] -} \ No newline at end of file From 8c959fa1f32d7607db8d56c93bd51523168636f7 Mon Sep 17 00:00:00 2001 From: Froilan Irizarry Date: Wed, 4 Apr 2018 22:48:24 -0400 Subject: [PATCH 4/7] Attempt to simplify getStatuses - Added helper functions _setRequirementStatuses and _getCodePath. - Removed stale comments - This is an attempt to make nice with CodeClimate --- .../compliance-dashboard.component.ts | 91 ++++++++++--------- 1 file changed, 49 insertions(+), 42 deletions(-) diff --git a/src/app/components/policy-guide/docs/compliance/compliance-dashboard/compliance-dashboard.component.ts b/src/app/components/policy-guide/docs/compliance/compliance-dashboard/compliance-dashboard.component.ts index 72233907..1d6943da 100644 --- a/src/app/components/policy-guide/docs/compliance/compliance-dashboard/compliance-dashboard.component.ts +++ b/src/app/components/policy-guide/docs/compliance/compliance-dashboard/compliance-dashboard.component.ts @@ -43,58 +43,65 @@ export class ComplianceDashboardComponent implements OnInit, OnDestroy { ); } + _setRequirementStatuses(agencyRequirements) { + let requirementStatues = { + requirements: [], + overallStatus: 'noncompliant' + }; + for (let requirement in agencyRequirements) { + if (agencyRequirements.hasOwnProperty(requirement)) { + const rValue = agencyRequirements[requirement]; + + let requirementStatus = 'noncompliant'; + + if (rValue >= 1) { + requirementStatus = 'compliant'; + } + if (rValue >= 0.25 && rValue < 1) { + requirementStatus = 'partial'; + } + + if (requirement !== 'overallCompliance') { + requirementStatues.requirements.push({ text: requirement, status: requirementStatus }); + } else { + requirementStatues.overallStatus = requirementStatus; + } + } + } + return requirementStatues; + } + + _getCodePath(status) { + + if (this.agencyIds.find((x) => x === status)) { + return '/explore-code/agencies/' + status; + } + + return null; + } getStatuses() { this.statusesSub = this.clientService.getStatuses(). subscribe((result) => { if (result) { for (let statusAgency in result.statuses) { + if (result.statuses.hasOwnProperty(statusAgency) && + result.statuses[statusAgency].metadata.agency.complianceDashboard) { + + let agencyStatus = result.statuses[statusAgency]; + + const {requirements, overallStatus} = this._setRequirementStatuses(agencyStatus.requirements); - // if agencyWidePolicy is null in report.json it means the agency doesn't have - // to comply, so don't include it in the dash. - // TODO: should make this more explicit in the API, - if (result.statuses[statusAgency].metadata.agency.requirements['agencyWidePolicy'] !== null) { - - let requirements = []; - let overallStatus; - - for (let requirement in result.statuses[statusAgency].metadata.agency.requirements) { - if (result.statuses[statusAgency].metadata.agency.requirements.hasOwnProperty(requirement)) { - const rValue = result.statuses[statusAgency].metadata.agency.requirements[requirement]; - - let requirementStatus = 'noncompliant'; - - if (rValue >= 1) { - requirementStatus = 'compliant'; - } - if (rValue >= 0.25 && rValue < 1) { - requirementStatus = 'partial'; - } - - if (requirement !== 'overallCompliance') { - requirements.push({ text: requirement, status: requirementStatus }); - } else { - overallStatus = requirementStatus; - } - } - } - - let codePath = null; - - if (this.agencyIds.find((x) => x === status)) { - codePath = '/explore-code/agencies/' + status; - } - - let agency = { - id: result.statuses[statusAgency].metadata.agency.id, - name: result.statuses[statusAgency].metadata.agency.name, - overall: overallStatus, - codePath: codePath - }; this.statuses.push({ id: statusAgency, - agency: agency, + agency: { + id: result.statuses[statusAgency].metadata.agency.id, + name: result.statuses[statusAgency].metadata.agency.name, + overall: overallStatus, + codePath: this._getCodePath(status) + }, requirements: requirements }); + this.updated = result.timestamp; } } From 85804fab9f4f0f89c94b1d86e343586741225579 Mon Sep 17 00:00:00 2001 From: Froilan Irizarry Date: Wed, 4 Apr 2018 22:55:18 -0400 Subject: [PATCH 5/7] Attempt to solve CodeClimate error - Attempt to lower cognitive complexity for _setRequirementStatuses --- .../compliance-dashboard.component.ts | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/app/components/policy-guide/docs/compliance/compliance-dashboard/compliance-dashboard.component.ts b/src/app/components/policy-guide/docs/compliance/compliance-dashboard/compliance-dashboard.component.ts index 1d6943da..2661f2b6 100644 --- a/src/app/components/policy-guide/docs/compliance/compliance-dashboard/compliance-dashboard.component.ts +++ b/src/app/components/policy-guide/docs/compliance/compliance-dashboard/compliance-dashboard.component.ts @@ -44,10 +44,9 @@ export class ComplianceDashboardComponent implements OnInit, OnDestroy { } _setRequirementStatuses(agencyRequirements) { - let requirementStatues = { - requirements: [], - overallStatus: 'noncompliant' - }; + let requirements = []; + let overallStatus = 'noncompliant'; + for (let requirement in agencyRequirements) { if (agencyRequirements.hasOwnProperty(requirement)) { const rValue = agencyRequirements[requirement]; @@ -62,13 +61,13 @@ export class ComplianceDashboardComponent implements OnInit, OnDestroy { } if (requirement !== 'overallCompliance') { - requirementStatues.requirements.push({ text: requirement, status: requirementStatus }); + requirements.push({ text: requirement, status: requirementStatus }); } else { - requirementStatues.overallStatus = requirementStatus; + overallStatus = requirementStatus; } } } - return requirementStatues; + return { requirements, overallStatus }; } _getCodePath(status) { From 82c71310b8765829388a853c029f6999a283ff86 Mon Sep 17 00:00:00 2001 From: Froilan Irizarry Date: Sat, 28 Apr 2018 11:51:30 -0400 Subject: [PATCH 6/7] Initial commit client service tests --- .../services/client/client.service.spec.ts | 240 ++++++++++++++++++ 1 file changed, 240 insertions(+) create mode 100644 src/app/services/client/client.service.spec.ts diff --git a/src/app/services/client/client.service.spec.ts b/src/app/services/client/client.service.spec.ts new file mode 100644 index 00000000..e13ce1e7 --- /dev/null +++ b/src/app/services/client/client.service.spec.ts @@ -0,0 +1,240 @@ + +import { TestBed, inject } from '@angular/core/testing'; +import { + HttpModule, + Http, + XHRBackend, + Response, + ResponseOptions +} from '@angular/http'; +import { MockBackend } from '@angular/http/testing'; +import { ClientService } from './client.service'; + +describe('ClientService', () => { + + beforeEach(() => { + TestBed.configureTestingModule({ + imports: [HttpModule], + providers: [ + ClientService, + { provide: XHRBackend, useClass: MockBackend } + ] + }); + }); + + describe('#getStatuses', () => { + it('should return an Observable new', () => { + inject([ClientService, XHRBackend], (clientService, mockBackend) => { + const dummyStatuses = { + timestamp: '', + statuses: { + GSA: { + status: 'NOT FULLY COMPLIANT: 2 ERRORS', + issues: [ + { + agency: 'General Services Administration', + project_name: 'Search.gov', + issues: { + enhancements: [], + warnings: [], + errors: [ + { + keyword: 'type', + dataPath: '.repositoryURL', + schemaPath: '#/properties/repositoryURL/type', + params: { + type: 'string' + }, + 'message': 'should be string' + } + ] + } + }, + { + agency: 'General Services Administration', + project_name: 'Cron scripts', + issues: { + enhancements: [], + warnings: [], + errors: [ + { + 'keyword': 'type', + 'dataPath': '.repositoryURL', + 'schemaPath': '#/properties/repositoryURL/type', + 'params': { + 'type': 'string' + }, + 'message': 'should be string' + } + ] + } + } + ], + version: '2.0.0', + metadata: { + agency: { + name: 'General Services Administration', + acronym: 'GSA', + website: 'https://gsa.gov/', + codeUrl: 'https://www.gsa.gov/code.json', + fallback_file: 'GSA.json', + requirements: { + agencyWidePolicy: 1, + openSourceRequirement: 1, + inventoryRequirement: 1, + schemaFormat: 0.5, + overallCompliance: 1 + }, + complianceDashboard: true + } + }, + wasFallbackUsed: false, + requirements: { + agencyWidePolicy: 1, + openSourceRequirement: 1, + inventoryRequirement: 1, + schemaFormat: 0.5, + overallCompliance: 1 + } + } + } + }; + mockBackend.connections.subscribe(connection => { + connection.mockRespond(new Response(new ResponseOptions({ + body: JSON.stringify(dummyStatuses) + }))); + }); + clientService.getStatuses().subscribe(statuses => { + expect(statuses.statuses['GSA'].issues.length).toBe(2); + }); + }); + }); + }); + + describe('#getAgencies', () => { + beforeAll(() => { + const dummyAgencyResponse = `{ + 'total': 10, + 'agencies': [ + { + 'acronym': 'DOT', + 'name': 'Department of Transportation', + 'website': 'https://www.transportation.gov/', + 'codeUrl': 'https://www.transportation.gov/code.json', + 'numRepos': 127 + }, + { + 'acronym': 'DOL', + 'name': 'Department of Labor', + 'website': 'https://www.dol.gov', + 'codeUrl': 'https://www.dol.gov/code.json', + 'numRepos': 154 + }, + { + 'acronym': 'DOJ', + 'name': 'Department of Justice', + 'website': 'https://justice.gov', + 'codeUrl': 'https://www.justice.gov/code.json', + 'numRepos': 14 + }, + { + 'acronym': 'HUD', + 'name': 'Department of Housing and Urban Development', + 'website': 'https://www.hud.gov/', + 'codeUrl': 'https://www.hud.gov/code.json', + 'numRepos': 172 + }, + { + 'acronym': 'HHS', + 'name': 'Department of Health and Human Services', + 'website': 'https://hhs.gov', + 'codeUrl': 'https://www.hhs.gov/code.json', + 'numRepos': 7 + }, + { + 'acronym': 'DOE', + 'name': 'Department of Energy', + 'website': 'https://energy.gov/', + 'codeUrl': 'https://www.energy.gov/code.json', + 'numRepos': 881 + }, + { + 'acronym': 'ED', + 'name': 'Department of Education', + 'website': 'https://ed.gov/', + 'codeUrl': 'https://www.ed.gov/code.json', + 'numRepos': 49 + }, + { + 'acronym': 'DOD', + 'name': 'Department of Defense', + 'website': 'https://www.defense.gov/', + 'codeUrl': 'https://www.code.mil/code.json', + 'numRepos': 8 + }, + { + 'acronym': 'DOC', + 'name': 'Department of Commerce', + 'website': 'https://www.commerce.gov/', + 'codeUrl': 'https://www.commerce.gov/code.json', + 'numRepos': 3 + }, + { + 'acronym': 'USDA', + 'name': 'Department of Agriculture', + 'website': 'https://usda.gov/', + 'codeUrl': 'https://www.usda.gov/code.json', + 'numRepos': 21 + } + ] + }`; + const expectedAgencyList = [ + 'Department of Transportation', + 'Department of Labor', + 'Department of Justice', + 'Department of Housing and Urban Development', + 'Department of Health and Human Services', + 'Department of Energy', + 'Department of Education', + 'Department of Defense', + 'Department of Commerce', + 'Department of Agriculture' + ]; + const expectedAgencyInfo = `{ + "acronym": "DOT", + "name": "Department of Transportation", + "website": "https://www.transportation.gov/", + "codeUrl": "https://www.transportation.gov/code.json", + "numRepos": 127 + }`; + const agency = 'DOT'; + }); + it('should return a list of agency names', () => { + inject([ClientService, XHRBackend], (clientService, mockBackend) => { + + mockBackend.connections.subscribe(connection => { + connection.mockRespond(new Response(new ResponseOptions({ + body: JSON.stringify(this.dummyAgencyResponse) + }))); + }); + clientService.getAgencies().subscribe(agencies => { + expect(agencies).toEqual(this.expectedAgencyList); + }); + + }); + }); + it('should return info for the specified agency', () => { + inject([ClientService, XHRBackend], (clientService, mockBackend) => { + mockBackend.connections.subscribe(connection => { + connection.mockRespond(new Response(new ResponseOptions({ + body: JSON.stringify(this.dummyAgencyResponse) + }))); + }); + clientService.getAgencyByAcronym(this.agency).subscribe(agency => { + expect(agency).toEqual(this.expectedAgencyInfo); + }); + }); + }); + }); +}); + From 6ba58e3ba0f6e083efceae7c0008b0cff6312a6f Mon Sep 17 00:00:00 2001 From: Froilan Irizarry Date: Sat, 28 Apr 2018 11:57:06 -0400 Subject: [PATCH 7/7] Fixed PR review comment --- .../compliance-dashboard/compliance-dashboard.component.ts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/app/components/policy-guide/docs/compliance/compliance-dashboard/compliance-dashboard.component.ts b/src/app/components/policy-guide/docs/compliance/compliance-dashboard/compliance-dashboard.component.ts index 2661f2b6..706f90ec 100644 --- a/src/app/components/policy-guide/docs/compliance/compliance-dashboard/compliance-dashboard.component.ts +++ b/src/app/components/policy-guide/docs/compliance/compliance-dashboard/compliance-dashboard.component.ts @@ -55,8 +55,7 @@ export class ComplianceDashboardComponent implements OnInit, OnDestroy { if (rValue >= 1) { requirementStatus = 'compliant'; - } - if (rValue >= 0.25 && rValue < 1) { + } else if (rValue >= 0.25 && rValue < 1) { requirementStatus = 'partial'; } @@ -72,7 +71,7 @@ export class ComplianceDashboardComponent implements OnInit, OnDestroy { _getCodePath(status) { - if (this.agencyIds.find((x) => x === status)) { + if (this.agencyIds.find(x => x === status)) { return '/explore-code/agencies/' + status; }