{"id":958,"name":"The Safe Water Project","description":"A team of volunteers at Code for Boston who are using data modeling, data visualization and machine learning to predict, visualize, and share data about the presence of hazardous drinking and surface water contaminants in the United States.","url":"https://github.com/codeforboston/safe-water","last_synced_at":"2026-05-17T12:30:37.980Z","repository":{"id":34397613,"uuid":"148405132","full_name":"codeforboston/safe-water","owner":"codeforboston","description":"We are using data science to analyze water quality issues.","archived":false,"fork":false,"pushed_at":"2022-12-08T07:45:34.000Z","size":53530,"stargazers_count":42,"open_issues_count":5,"forks_count":63,"subscribers_count":9,"default_branch":"master","last_synced_at":"2026-04-13T20:04:08.538Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/codeforboston.png","metadata":{"funding":{"custom":"https://www.codeforamerica.org/donate-to-a-brigade?utm_campaign=CodeforBoston\u0026utm_source=github"},"files":{"readme":"README.md","changelog":null,"contributing":"docs/contributing.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-09-12T01:49:23.000Z","updated_at":"2026-03-13T20:38:39.000Z","dependencies_parsed_at":"2023-01-15T07:00:52.471Z","dependency_job_id":null,"html_url":"https://github.com/codeforboston/safe-water","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/codeforboston/safe-water","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeforboston%2Fsafe-water","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeforboston%2Fsafe-water/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeforboston%2Fsafe-water/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeforboston%2Fsafe-water/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codeforboston","download_url":"https://codeload.github.com/codeforboston/safe-water/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeforboston%2Fsafe-water/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31859796,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-15T15:24:51.572Z","status":"ssl_error","status_checked_at":"2026-04-15T15:24:39.138Z","response_time":63,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"owner":{"login":"codeforboston","name":"Code for Boston","uuid":"2533182","kind":"organization","description":"Improving civic life and social good in Greater Boston.","email":"hello@codeforboston.org","website":"https://www.codeforboston.org","location":"Boston, MA","twitter":"codeforboston","company":null,"icon_url":"https://avatars.githubusercontent.com/u/2533182?v=4","repositories_count":119,"last_synced_at":"2024-04-15T11:18:18.984Z","metadata":{"has_sponsors_listing":false,"funding":{"custom":"https://www.codeforboston.org/donate/"}},"html_url":"https://github.com/codeforboston","funding_links":["https://www.codeforboston.org/donate/"],"total_stars":993,"followers":99,"following":0,"created_at":"2022-11-04T15:15:45.019Z","updated_at":"2024-04-15T11:19:09.060Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codeforboston","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codeforboston/repositories"},"packages":[],"commits":{"id":1254508,"full_name":"codeforboston/safe-water","default_branch":"master","total_commits":172,"total_committers":29,"total_bot_commits":6,"total_bot_committers":1,"mean_commits":5.931034482758621,"dds":0.8662790697674418,"past_year_total_commits":0,"past_year_total_committers":0,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":0.0,"past_year_dds":0.0,"last_synced_at":"2026-04-17T07:35:47.942Z","last_synced_commit":"a85dbd48d852e616a394585b5aec18fc150bf474","created_at":"2023-03-27T11:48:19.875Z","updated_at":"2026-04-17T07:34:21.258Z","committers":[{"name":"Daniel Reeves","email":"xdanielreeves@gmail.com","login":"dwreeves","count":23},{"name":"François Paupier","email":"francois.paupier@gmail.com","login":"fpaupier","count":20},{"name":"François","email":"francois.delavy@gmail.com","login":"de-la-viz","count":18},{"name":"joshua","email":"jvl.mclellan@gmail.com","login":"jmclellan","count":16},{"name":"Dominic Surrao","email":"dsurrao@Dominics-MacBook-Pro.local","login":null,"count":11},{"name":"Bhushan Choudhari","email":"34213367+bhushan-choudhari","login":"bhushan-choudhari","count":9},{"name":"Lewis Staples","email":"lewis.staples@gmail.com","login":"LewisStaples","count":9},{"name":"anhase","email":"andrew.seeder@gmail.com","login":"anhase","count":8},{"name":"Manuel Odendahl","email":"wesen@ruinwesen.com","login":"wesen","count":7},{"name":"Jeff Langevin","email":"jeff.langevin@gmail.com","login":"jlangevin","count":6},{"name":"Nicholas Jin","email":"nicholas.jin@gmail.com","login":"nicholasjin","count":6},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":6},{"name":"Ewan Stephens","email":"Ewan.Stephens26@gmail.com","login":"EwanStephens","count":5},{"name":"Harris Lapiroff","email":"harris@chromamine.com","login":"harrislapiroff","count":4},{"name":"Kacper Wardega","email":"kacper@wardega.com","login":"gitsper","count":4},{"name":"jsecol","email":"40470306+jsecol","login":"jsecol","count":4},{"name":"Aaron Evan-Browning","email":"aaevan@gmail.com","login":"aaevan","count":3},{"name":"Srihari","email":"srihari2761@gmail.com","login":"srihari2761","count":2},{"name":"Ashir Borah","email":"aborah@broadinstitute.org","login":"AshirBorah","count":1},{"name":"BabarBaig","email":"BobBaig@outlook.com","login":"BabarBaig","count":1},{"name":"Dawn Graham","email":"dawnwgraham@gmail.com","login":"dawngraham","count":1},{"name":"Dominic Surrao","email":"dsurrao@hotmail.com","login":"dsurrao","count":1},{"name":"SJ Choi","email":"57929283+SJClarissa","login":"SJClarissa","count":1},{"name":"Victor Clarke","email":"victorclarke2@gmail.com","login":"VictorClarke","count":1},{"name":"h-clef","email":"matthew.rumizen@gmail.com","login":"hiclef","count":1},{"name":"kkliu5","email":"kkliu5@gmail.com","login":"kkliu5","count":1},{"name":"Victor Clarke","email":"victorclarke@Victors-MacBook-Pro.local","login":null,"count":1},{"name":"Mia","email":"Mia@Mias-MacBook-Pro-6.local","login":null,"count":1},{"name":"laruec","email":"clarue831@gmail.com","login":"laruec","count":1}],"past_year_committers":[],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeforboston%2Fsafe-water/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-17T00:00:13.716Z","repositories_count":6214403,"commits_count":900569839,"contributors_count":34925264,"owners_count":1144542,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"codeforboston/safe-water","html_url":"https://github.com/codeforboston/safe-water","last_synced_at":"2025-12-09T07:05:41.012Z","status":"error","issues_count":45,"pull_requests_count":87,"avg_time_to_close_issue":24053059.51111111,"avg_time_to_close_pull_request":535799.4024390244,"issues_closed_count":45,"pull_requests_closed_count":82,"pull_request_authors_count":27,"issue_authors_count":7,"avg_comments_per_issue":1.1111111111111112,"avg_comments_per_pull_request":0.28735632183908044,"merged_pull_requests_count":75,"bot_issues_count":0,"bot_pull_requests_count":15,"past_year_issues_count":0,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"created_at":"2023-05-09T10:35:49.108Z","updated_at":"2025-12-09T07:05:41.012Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeforboston%2Fsafe-water","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeforboston%2Fsafe-water/issues","issue_labels_count":{"research / conceptualization":11,"Documentation":9,"good first issue":9,"question":6,"enhancement":6,"Design":4,"data exploration":4,"help wanted":4,"data viz":4,"data transformation":4,"data extraction":3,"PRIORITY":3,"SDWIS":3,"bug":1,"PM":1},"pull_request_labels_count":{"dependencies":15,"python":8},"issue_author_associations_count":{"COLLABORATOR":27,"NONE":10,"CONTRIBUTOR":8},"pull_request_author_associations_count":{"CONTRIBUTOR":74,"COLLABORATOR":12,"NONE":1},"issue_authors":{"de-la-viz":25,"russmatson":8,"dwreeves":6,"wesen":2,"jdseags":2,"nicholasjin":1,"hiclef":1},"pull_request_authors":{"dependabot[bot]":15,"dsurrao":11,"dwreeves":10,"de-la-viz":7,"EwanStephens":5,"nicholasjin":5,"LewisStaples":4,"bhushan-choudhari":3,"jmclellan":3,"wesen":3,"srihari2761":2,"harrislapiroff":2,"VictorClarke":2,"fpaupier":2,"aaevan":1,"AshirBorah":1,"polanskers":1,"hiclef":1,"gitsper":1,"BabarBaig":1,"jlangevin":1,"laruec":1,"SJClarissa":1,"anhase":1,"jsecol":1,"kkliu5":1,"dawngraham":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-17T00:00:09.649Z","repositories_count":14299569,"issues_count":34552259,"pull_requests_count":113095999,"authors_count":11237034,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{},"past_year_pull_request_author_associations_count":{},"past_year_issue_authors":{},"past_year_pull_request_authors":{},"maintainers":[{"login":"de-la-viz","count":32,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/de-la-viz"},{"login":"wesen","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/wesen"},{"login":"harrislapiroff","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/harrislapiroff"}],"active_maintainers":[]},"events":{"total":{"WatchEvent":1},"last_year":{}},"keywords":[],"dependencies":[{"ecosystem":"pypi","filepath":"projects/exploratory_phase/code/Pipfile","sha":null,"kind":"manifest","created_at":"2022-09-14T06:00:26.839Z","updated_at":"2022-09-14T06:00:26.839Z","repository_link":"https://github.com/codeforboston/safe-water/blob/master/projects/exploratory_phase/code/Pipfile","dependencies":[{"id":4800529849,"package_name":"jupyter","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":4800529850,"package_name":"pandas","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":4800529851,"package_name":"matplotlib","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":4800529852,"package_name":"sklearn","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":4800529853,"package_name":"statsmodels","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":4800529854,"package_name":"ipython","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":4800529855,"package_name":"requests","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"projects/exploratory_phase/code/Pipfile.lock","sha":null,"kind":"lockfile","created_at":"2022-09-14T06:00:26.980Z","updated_at":"2022-09-14T06:00:26.980Z","repository_link":"https://github.com/codeforboston/safe-water/blob/master/projects/exploratory_phase/code/Pipfile.lock","dependencies":[{"id":4800530511,"package_name":"argon2-cffi","ecosystem":"pypi","requirements":"==20.1.0","direct":false,"kind":"runtime","optional":false},{"id":4800530512,"package_name":"async-generator","ecosystem":"pypi","requirements":"==1.10","direct":false,"kind":"runtime","optional":false},{"id":4800530513,"package_name":"attrs","ecosystem":"pypi","requirements":"==20.3.0","direct":false,"kind":"runtime","optional":false},{"id":4800530514,"package_name":"backcall","ecosystem":"pypi","requirements":"==0.2.0","direct":false,"kind":"runtime","optional":false},{"id":4800530515,"package_name":"bleach","ecosystem":"pypi","requirements":"==3.3.0","direct":false,"kind":"runtime","optional":false},{"id":4800530516,"package_name":"certifi","ecosystem":"pypi","requirements":"==2020.12.5","direct":false,"kind":"runtime","optional":false},{"id":4800530517,"package_name":"cffi","ecosystem":"pypi","requirements":"==1.14.4","direct":false,"kind":"runtime","optional":false},{"id":4800530518,"package_name":"chardet","ecosystem":"pypi","requirements":"==3.0.4","direct":false,"kind":"runtime","optional":false},{"id":4800530519,"package_name":"cycler","ecosystem":"pypi","requirements":"==0.10.0","direct":false,"kind":"runtime","optional":false},{"id":4800530520,"package_name":"decorator","ecosystem":"pypi","requirements":"==4.4.2","direct":false,"kind":"runtime","optional":false},{"id":4800530521,"package_name":"defusedxml","ecosystem":"pypi","requirements":"==0.6.0","direct":false,"kind":"runtime","optional":false},{"id":4800530522,"package_name":"entrypoints","ecosystem":"pypi","requirements":"==0.3","direct":false,"kind":"runtime","optional":false},{"id":4800530523,"package_name":"idna","ecosystem":"pypi","requirements":"==2.8","direct":false,"kind":"runtime","optional":false},{"id":4800530524,"package_name":"importlib-metadata","ecosystem":"pypi","requirements":"==3.4.0","direct":false,"kind":"runtime","optional":false},{"id":4800530525,"package_name":"ipykernel","ecosystem":"pypi","requirements":"==5.4.3","direct":false,"kind":"runtime","optional":false},{"id":4800530526,"package_name":"ipython","ecosystem":"pypi","requirements":"==7.2.0","direct":false,"kind":"runtime","optional":false},{"id":4800530527,"package_name":"ipython-genutils","ecosystem":"pypi","requirements":"==0.2.0","direct":false,"kind":"runtime","optional":false},{"id":4800530534,"package_name":"jupyter-client","ecosystem":"pypi","requirements":"==6.1.11","direct":false,"kind":"runtime","optional":false},{"id":4800530528,"package_name":"ipywidgets","ecosystem":"pypi","requirements":"==7.6.3","direct":false,"kind":"runtime","optional":false},{"id":4800530529,"package_name":"jedi","ecosystem":"pypi","requirements":"==0.18.0","direct":false,"kind":"runtime","optional":false},{"id":4800530530,"package_name":"jinja2","ecosystem":"pypi","requirements":"==2.11.3","direct":false,"kind":"runtime","optional":false},{"id":4800530531,"package_name":"joblib","ecosystem":"pypi","requirements":"==1.0.0","direct":false,"kind":"runtime","optional":false},{"id":4800530532,"package_name":"jsonschema","ecosystem":"pypi","requirements":"==3.2.0","direct":false,"kind":"runtime","optional":false},{"id":4800530533,"package_name":"jupyter","ecosystem":"pypi","requirements":"==1.0.0","direct":false,"kind":"runtime","optional":false},{"id":4800530535,"package_name":"jupyter-console","ecosystem":"pypi","requirements":"==6.2.0","direct":false,"kind":"runtime","optional":false},{"id":4800530536,"package_name":"jupyter-core","ecosystem":"pypi","requirements":"==4.7.1","direct":false,"kind":"runtime","optional":false},{"id":4800530537,"package_name":"jupyterlab-pygments","ecosystem":"pypi","requirements":"==0.1.2","direct":false,"kind":"runtime","optional":false},{"id":4800530538,"package_name":"jupyterlab-widgets","ecosystem":"pypi","requirements":"==1.0.0","direct":false,"kind":"runtime","optional":false},{"id":4800530539,"package_name":"kiwisolver","ecosystem":"pypi","requirements":"==1.3.1","direct":false,"kind":"runtime","optional":false},{"id":4800530540,"package_name":"markupsafe","ecosystem":"pypi","requirements":"==1.1.1","direct":false,"kind":"runtime","optional":false},{"id":4800530541,"package_name":"matplotlib","ecosystem":"pypi","requirements":"==3.0.2","direct":false,"kind":"runtime","optional":false},{"id":4800530542,"package_name":"mistune","ecosystem":"pypi","requirements":"==0.8.4","direct":false,"kind":"runtime","optional":false},{"id":4800530543,"package_name":"nbclient","ecosystem":"pypi","requirements":"==0.5.1","direct":false,"kind":"runtime","optional":false},{"id":4800530544,"package_name":"nbconvert","ecosystem":"pypi","requirements":"==6.0.7","direct":false,"kind":"runtime","optional":false},{"id":4800530545,"package_name":"nbformat","ecosystem":"pypi","requirements":"==5.1.2","direct":false,"kind":"runtime","optional":false},{"id":4800530546,"package_name":"nest-asyncio","ecosystem":"pypi","requirements":"==1.5.1","direct":false,"kind":"runtime","optional":false},{"id":4800530547,"package_name":"notebook","ecosystem":"pypi","requirements":"==6.2.0","direct":false,"kind":"runtime","optional":false},{"id":4800530548,"package_name":"numpy","ecosystem":"pypi","requirements":"==1.20.0","direct":false,"kind":"runtime","optional":false},{"id":4800530549,"package_name":"packaging","ecosystem":"pypi","requirements":"==20.9","direct":false,"kind":"runtime","optional":false},{"id":4800530550,"package_name":"pandas","ecosystem":"pypi","requirements":"==0.23.4","direct":false,"kind":"runtime","optional":false},{"id":4800530551,"package_name":"pandocfilters","ecosystem":"pypi","requirements":"==1.4.3","direct":false,"kind":"runtime","optional":false},{"id":4800530552,"package_name":"parso","ecosystem":"pypi","requirements":"==0.8.1","direct":false,"kind":"runtime","optional":false},{"id":4800530553,"package_name":"patsy","ecosystem":"pypi","requirements":"==0.5.1","direct":false,"kind":"runtime","optional":false},{"id":4800530554,"package_name":"pexpect","ecosystem":"pypi","requirements":"==4.8.0","direct":false,"kind":"runtime","optional":false},{"id":4800530555,"package_name":"pickleshare","ecosystem":"pypi","requirements":"==0.7.5","direct":false,"kind":"runtime","optional":false},{"id":4800530556,"package_name":"prometheus-client","ecosystem":"pypi","requirements":"==0.9.0","direct":false,"kind":"runtime","optional":false},{"id":4800530557,"package_name":"prompt-toolkit","ecosystem":"pypi","requirements":"==2.0.10","direct":false,"kind":"runtime","optional":false},{"id":4800530558,"package_name":"ptyprocess","ecosystem":"pypi","requirements":"==0.7.0","direct":false,"kind":"runtime","optional":false},{"id":4800530559,"package_name":"pycparser","ecosystem":"pypi","requirements":"==2.20","direct":false,"kind":"runtime","optional":false},{"id":4800530560,"package_name":"pygments","ecosystem":"pypi","requirements":"==2.7.4","direct":false,"kind":"runtime","optional":false},{"id":4800530561,"package_name":"pyparsing","ecosystem":"pypi","requirements":"==2.4.7","direct":false,"kind":"runtime","optional":false},{"id":4800530562,"package_name":"pyrsistent","ecosystem":"pypi","requirements":"==0.17.3","direct":false,"kind":"runtime","optional":false},{"id":4800530563,"package_name":"python-dateutil","ecosystem":"pypi","requirements":"==2.8.1","direct":false,"kind":"runtime","optional":false},{"id":4800530564,"package_name":"pytz","ecosystem":"pypi","requirements":"==2021.1","direct":false,"kind":"runtime","optional":false},{"id":4800530565,"package_name":"pyzmq","ecosystem":"pypi","requirements":"==22.0.2","direct":false,"kind":"runtime","optional":false},{"id":4800530566,"package_name":"qtconsole","ecosystem":"pypi","requirements":"==5.0.2","direct":false,"kind":"runtime","optional":false},{"id":4800530567,"package_name":"qtpy","ecosystem":"pypi","requirements":"==1.9.0","direct":false,"kind":"runtime","optional":false},{"id":4800530568,"package_name":"requests","ecosystem":"pypi","requirements":"==2.21.0","direct":false,"kind":"runtime","optional":false},{"id":4800530569,"package_name":"scikit-learn","ecosystem":"pypi","requirements":"==0.24.1","direct":false,"kind":"runtime","optional":false},{"id":4800530570,"package_name":"scipy","ecosystem":"pypi","requirements":"==1.6.0","direct":false,"kind":"runtime","optional":false},{"id":4800530571,"package_name":"send2trash","ecosystem":"pypi","requirements":"==1.5.0","direct":false,"kind":"runtime","optional":false},{"id":4800530572,"package_name":"six","ecosystem":"pypi","requirements":"==1.15.0","direct":false,"kind":"runtime","optional":false},{"id":4800530573,"package_name":"sklearn","ecosystem":"pypi","requirements":"==0.0","direct":false,"kind":"runtime","optional":false},{"id":4800530574,"package_name":"statsmodels","ecosystem":"pypi","requirements":"==0.9.0","direct":false,"kind":"runtime","optional":false},{"id":4800530575,"package_name":"terminado","ecosystem":"pypi","requirements":"==0.9.2","direct":false,"kind":"runtime","optional":false},{"id":4800530576,"package_name":"testpath","ecosystem":"pypi","requirements":"==0.4.4","direct":false,"kind":"runtime","optional":false},{"id":4800530577,"package_name":"threadpoolctl","ecosystem":"pypi","requirements":"==2.1.0","direct":false,"kind":"runtime","optional":false},{"id":4800530578,"package_name":"tornado","ecosystem":"pypi","requirements":"==6.1","direct":false,"kind":"runtime","optional":false},{"id":4800530579,"package_name":"traitlets","ecosystem":"pypi","requirements":"==5.0.5","direct":false,"kind":"runtime","optional":false},{"id":4800530580,"package_name":"typing-extensions","ecosystem":"pypi","requirements":"==3.7.4.3","direct":false,"kind":"runtime","optional":false},{"id":4800530581,"package_name":"urllib3","ecosystem":"pypi","requirements":"==1.24.3","direct":false,"kind":"runtime","optional":false},{"id":4800530582,"package_name":"wcwidth","ecosystem":"pypi","requirements":"==0.2.5","direct":false,"kind":"runtime","optional":false},{"id":4800530583,"package_name":"webencodings","ecosystem":"pypi","requirements":"==0.5.1","direct":false,"kind":"runtime","optional":false},{"id":4800530584,"package_name":"widgetsnbextension","ecosystem":"pypi","requirements":"==3.5.1","direct":false,"kind":"runtime","optional":false},{"id":4800530585,"package_name":"zipp","ecosystem":"pypi","requirements":"==3.4.0","direct":false,"kind":"runtime","optional":false}]}],"score":7.217443431696532,"created_at":"2023-09-11T11:54:36.473Z","updated_at":"2026-05-17T12:30:38.004Z","avatar_url":"https://github.com/codeforboston.png","language":"Jupyter Notebook","category":"Natural Resources","sub_category":"Water Supply and Quality","monthly_downloads":0,"total_dependent_repos":0,"total_dependent_packages":0,"readme":"# Safe Water Project 🚰\n\nThe Safe Water Project is a team of volunteers at [Code for Boston](https://www.codeforboston.org/) who are using data modeling, data visualization and machine learning to predict, visualize, and share data about the presence of hazardous drinking and surface water contaminants in the United States. \n\n#### We are interested in collaborating with health and environmental organizations.\n\nRepresentatives for nonprofit organizations and government agencies interested in our work should contact Andrew at andrew@codeforboston.org. Please feel free to also join our Slack channel at Code for Boston and meet the team.\n\n## Our Work\n\n### Institutional Partners\n\nThe Safe Water Project works with Boston-based community partners. These organizations have needs related to data infrastructure and data science, and we provide our expertise in assisting them.   \n\n**Currently we work with the [Charles River Watershed Association](https://www.crwa.org/).** We help them deploying their predictive model, visualizing and communicating their data, as well as better understanding their constituents. You can learn more about this project [in the related folder](https://github.com/codeforboston/safe-water/tree/master/projects/crwa).\n\nMost volunteers work in [python](http://python.org) with [pandas](https://pandas.pydata.org/). Some volunteers also use [R](https://www.r-project.org/), or PHP.\n\n## Project Materials and Communications\n\n- [Slack channel](https://cfb-public.slack.com): #water\n  - [Join Code for Boston's Slack Workplace](https://communityinviter.com/apps/cfb-public/code-for-boston)\n- [Google Drive - Notes and Research](https://drive.google.com/drive/folders/1FbQE9_NP664lkz4d-Xu4omijLl-HNklz)\n- [Wiki - how to contribute etc.](https://github.com/codeforboston/safe-water/wiki)\n\n## Join Us\n\nIf you are interested in volunteering for the Safe Drinking Water Project:\n\n- __Join the Slack.__ The #water channel has various pinned items that will be of use for getting started.\n\n- __Read the docs.__ The ``docs/`` folder contains more information about the project, plus steps on how to set up the project so you can start contributing. [Click here](docs/) for the docs.\n\n- __Meet us on Tuesday nights.__ We would love to meet you! We meet alongside other Code for Boston teams every Tuesday in Kendall Square, Cambridge, MA. [Sign up to attend Code for Boston events here](https://www.meetup.com/Code-for-Boston/).\n","funding_links":["https://www.codeforamerica.org/donate-to-a-brigade?utm_campaign=CodeforBoston\u0026utm_source=github"],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["archived","transforms","optimize","measur","observation","conversion","generic","projection","animals","compose"],"project_url":"https://ost.ecosyste.ms/api/v1/projects/958","html_url":"https://ost.ecosyste.ms/projects/958"}