{"id":3663,"name":"Xanthos","description":"An open-source hydrologic model, written in Python, designed to quantify and analyze global water availability.","url":"https://github.com/JGCRI/xanthos","last_synced_at":"2026-04-07T14:30:41.092Z","repository":{"id":23481546,"uuid":"88797535","full_name":"JGCRI/xanthos","owner":"JGCRI","description":"An extensible global hydrologic framework","archived":false,"fork":false,"pushed_at":"2024-08-15T15:10:03.000Z","size":264741,"stargazers_count":38,"open_issues_count":18,"forks_count":16,"subscribers_count":9,"default_branch":"main","last_synced_at":"2026-03-05T01:58:03.458Z","etag":null,"topics":["climate","hydrology","simulation"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JGCRI.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2017-04-19T22:47:48.000Z","updated_at":"2026-02-12T23:12:23.000Z","dependencies_parsed_at":"2024-03-17T04:41:55.098Z","dependency_job_id":"1d9cdfa8-f73d-4576-8255-ad215726b92a","html_url":"https://github.com/JGCRI/xanthos","commit_stats":{"total_commits":269,"total_committers":8,"mean_commits":33.625,"dds":0.5315985130111525,"last_synced_commit":"9ad117a7c51ad7a0426ca4472dd50d100659573c"},"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/JGCRI/xanthos","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JGCRI","download_url":"https://codeload.github.com/JGCRI/xanthos/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/sbom","scorecard":{"id":68853,"data":{"date":"2025-08-11","repo":{"name":"github.com/JGCRI/xanthos","commit":"9ad117a7c51ad7a0426ca4472dd50d100659573c"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.4,"checks":[{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":3,"reason":"Found 3/9 approved changesets -- score normalized to 3","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"License","score":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 28 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-15T03:20:02.933Z","repository_id":23481546,"created_at":"2025-08-15T03:20:02.933Z","updated_at":"2025-08-15T03:20:02.933Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30454982,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-12T21:31:01.033Z","status":"online","status_checked_at":"2026-03-13T02:00:07.565Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":"JGCRI","name":"Joint Global Change Research Institute","uuid":"8431983","kind":"organization","description":"Advancing fundamental understanding of human and Earth systems","email":null,"website":"https://www.pnnl.gov/projects/jgcri","location":"College Park, MD, USA","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/8431983?v=4","repositories_count":129,"last_synced_at":"2023-08-13T09:31:28.823Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/JGCRI","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-07T04:03:22.182Z","updated_at":"2023-08-13T09:31:30.169Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JGCRI","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JGCRI/repositories"},"packages":[{"id":2974929,"name":"xanthos","ecosystem":"pypi","description":"A global hydrologic modeling framework","homepage":"https://github.com/JGCRI/xanthos","licenses":"BSD2-Simplified","normalized_licenses":["BSD-2-Clause"],"repository_url":"https://github.com/JGCRI/xanthos","keywords_array":[],"namespace":null,"versions_count":1,"first_release_published_at":"2021-08-10T20:55:25.000Z","latest_release_published_at":"2021-08-10T20:55:25.000Z","latest_release_number":"2.4.1","last_synced_at":"2026-03-04T22:01:02.908Z","created_at":"2022-04-10T13:07:12.408Z","updated_at":"2026-03-04T22:01:02.908Z","registry_url":"https://pypi.org/project/xanthos/","install_command":"pip install xanthos --index-url https://pypi.org/simple","documentation_url":"https://xanthos.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":[],"normalized_name":"xanthos","project_status":null},"repo_metadata":{"uuid":"88797535","full_name":"JGCRI/xanthos","owner":"JGCRI","description":"An extensible global hydrologic framework","archived":false,"fork":false,"pushed_at":"2023-10-28T00:15:22.000Z","size":264714,"stargazers_count":28,"open_issues_count":19,"forks_count":16,"subscribers_count":10,"default_branch":"main","last_synced_at":"2023-12-12T23:03:28.012Z","etag":null,"topics":["climate","hydrology","simulation"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JGCRI.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2017-04-19T22:47:48.000Z","updated_at":"2023-11-08T17:13:16.000Z","dependencies_parsed_at":"2023-09-24T09:17:41.022Z","dependency_job_id":null,"html_url":"https://github.com/JGCRI/xanthos","commit_stats":{"total_commits":269,"total_committers":8,"mean_commits":33.625,"dds":0.5315985130111525,"last_synced_commit":"9ad117a7c51ad7a0426ca4472dd50d100659573c"},"previous_names":[],"tags_count":8,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JGCRI","download_url":"https://codeload.github.com/JGCRI/xanthos/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":176674815,"owners_count":10433552,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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_record":{"login":"JGCRI","name":"Joint Global Change Research Institute","uuid":"8431983","kind":"organization","description":"Advancing fundamental understanding of human and Earth systems","email":null,"website":"https://www.pnnl.gov/projects/jgcri","location":"College Park, MD, USA","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/8431983?v=4","repositories_count":129,"last_synced_at":"2023-08-13T09:31:28.823Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/JGCRI","created_at":"2022-11-07T04:03:22.182Z","updated_at":"2023-08-13T09:31:30.169Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JGCRI","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JGCRI/repositories"},"tags":[{"name":"v2.4.1","sha":"2f489565ecde4e7a950588bfb8b36a14dbdff815","kind":"commit","published_at":"2021-08-10T20:57:01.000Z","download_url":"https://codeload.github.com/JGCRI/xanthos/tar.gz/v2.4.1","html_url":"https://github.com/JGCRI/xanthos/releases/tag/v2.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags/v2.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags/v2.4.1/manifests"},{"name":"v2.4.0","sha":"bb956d6d26c57d65f09ede4662bc642ae5be7b7c","kind":"commit","published_at":"2021-04-29T23:13:43.000Z","download_url":"https://codeload.github.com/JGCRI/xanthos/tar.gz/v2.4.0","html_url":"https://github.com/JGCRI/xanthos/releases/tag/v2.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags/v2.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags/v2.4.0/manifests"},{"name":"v2.3.1","sha":"f597baa5072b84c9562baf328f8425ef3ce60ce1","kind":"commit","published_at":"2019-05-08T12:14:51.000Z","download_url":"https://codeload.github.com/JGCRI/xanthos/tar.gz/v2.3.1","html_url":"https://github.com/JGCRI/xanthos/releases/tag/v2.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags/v2.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags/v2.3.1/manifests"},{"name":"v2.3.0","sha":"1b4dae4d99921d551d9f61eac13f8deaffa5f836","kind":"commit","published_at":"2019-02-21T20:03:22.000Z","download_url":"https://codeload.github.com/JGCRI/xanthos/tar.gz/v2.3.0","html_url":"https://github.com/JGCRI/xanthos/releases/tag/v2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags/v2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags/v2.3.0/manifests"},{"name":"v2.2.0","sha":"1bf538f6b46618f94522542214e8980c230bc3e4","kind":"commit","published_at":"2018-12-07T20:24:49.000Z","download_url":"https://codeload.github.com/JGCRI/xanthos/tar.gz/v2.2.0","html_url":"https://github.com/JGCRI/xanthos/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags/v2.2.0/manifests"},{"name":"v2.1.0","sha":"4526209dd3606fed4e61db6da38333cd0c46bdc8","kind":"commit","published_at":"2018-08-01T17:00:03.000Z","download_url":"https://codeload.github.com/JGCRI/xanthos/tar.gz/v2.1.0","html_url":"https://github.com/JGCRI/xanthos/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags/v2.1.0/manifests"},{"name":"v2.0.0","sha":"6722771979dc82520300c1db198d0325ab505794","kind":"commit","published_at":"2018-06-18T17:46:21.000Z","download_url":"https://codeload.github.com/JGCRI/xanthos/tar.gz/v2.0.0","html_url":"https://github.com/JGCRI/xanthos/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags/v2.0.0/manifests"},{"name":"v1.0.0","sha":"5067a3f439493b69a42cdce9d5c04bdf32f9db60","kind":"commit","published_at":"2017-08-02T18:42:10.000Z","download_url":"https://codeload.github.com/JGCRI/xanthos/tar.gz/v1.0.0","html_url":"https://github.com/JGCRI/xanthos/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/tags/v1.0.0/manifests"}]},"repo_metadata_updated_at":"2023-12-16T22:37:21.254Z","dependent_packages_count":0,"downloads":7,"downloads_period":"last-month","dependent_repos_count":1,"rankings":{"downloads":47.223935298574524,"dependent_repos_count":22.087784936889527,"dependent_packages_count":7.31012528119255,"stargazers_count":11.719055897508184,"forks_count":9.143716338049677,"docker_downloads_count":null,"average":19.496923550442894},"purl":"pkg:pypi/xanthos","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/xanthos","docker_dependents_count":0,"docker_downloads_count":0,"usage_url":"https://repos.ecosyste.ms/usage/pypi/xanthos","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/xanthos/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2023-12-16T22:37:17.161Z","issues_count":34,"pull_requests_count":35,"avg_time_to_close_issue":10381595.52631579,"avg_time_to_close_pull_request":1072454.7419354839,"issues_closed_count":19,"pull_requests_closed_count":31,"pull_request_authors_count":7,"issue_authors_count":17,"avg_comments_per_issue":1.647058823529412,"avg_comments_per_pull_request":0.37142857142857144,"merged_pull_requests_count":30,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":4,"past_year_pull_requests_count":1,"past_year_avg_time_to_close_issue":2124656.0,"past_year_avg_time_to_close_pull_request":62.0,"past_year_issues_closed_count":2,"past_year_pull_requests_closed_count":1,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":3,"past_year_avg_comments_per_issue":6.0,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":1,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/issues"},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/xanthos/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/xanthos/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/xanthos/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/xanthos/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/xanthos/codemeta","maintainers":[{"uuid":"crvernon","login":"crvernon","name":null,"email":null,"url":null,"packages_count":12,"html_url":"https://pypi.org/user/crvernon/","role":null,"created_at":"2023-02-25T19:58:25.338Z","updated_at":"2023-02-25T19:58:25.338Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/crvernon/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":813982,"maintainers_count":346084,"namespaces_count":0,"keywords_count":0,"github":"pypi","metadata":{"funded_packages_count":52762},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2026-03-12T08:07:04.219Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/namespaces"}}],"commits":{"id":681218,"full_name":"JGCRI/xanthos","default_branch":"main","total_commits":269,"total_committers":8,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":33.625,"dds":0.5315985130111525,"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-03-03T17:26:18.716Z","last_synced_commit":"9ad117a7c51ad7a0426ca4472dd50d100659573c","created_at":"2023-03-09T10:52:48.955Z","updated_at":"2026-03-03T17:25:25.172Z","committers":[{"name":"Caleb Braun","email":"caleb.braun@pnnl.gov","login":"calebbraun","count":126},{"name":"crvernon","email":"chrisrvernon@gmail.com","login":"crvernon","count":124},{"name":"Li","email":"Xinya.Li@pnnl.gov","login":null,"count":8},{"name":"Mengqi Zhao","email":"mengqiz@umd.edu","login":"mengqi-z","count":5},{"name":"Robert Link","email":"robert.link@pnnl.gov","login":"rplzzz","count":3},{"name":"evanoffPNNL","email":"50331146+evanoffPNNL","login":"evanoffPNNL","count":1},{"name":"Vernon","email":"d3y010@pe11690.pnl.gov","login":null,"count":1},{"name":"Khan","email":"zarrar.khan@pnnl.gov","login":null,"count":1}],"past_year_committers":[],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-03-13T00:00:08.723Z","repositories_count":6203538,"commits_count":934275681,"contributors_count":36190878,"owners_count":1149971,"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":"JGCRI/xanthos","html_url":"https://github.com/JGCRI/xanthos","last_synced_at":"2026-01-06T18:05:34.522Z","status":"error","issues_count":35,"pull_requests_count":35,"avg_time_to_close_issue":10224827.25,"avg_time_to_close_pull_request":4117102.875,"issues_closed_count":20,"pull_requests_closed_count":32,"pull_request_authors_count":7,"issue_authors_count":17,"avg_comments_per_issue":1.7142857142857142,"avg_comments_per_pull_request":0.37142857142857144,"merged_pull_requests_count":30,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":1,"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":1,"past_year_avg_comments_per_issue":2.0,"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-15T02:51:16.586Z","updated_at":"2026-01-06T18:05:34.523Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/JGCRI%2Fxanthos/issues","issue_labels_count":{"enhancement":2,"tests":1,"question":1},"pull_request_labels_count":{"enhancement":1},"issue_author_associations_count":{"NONE":15,"CONTRIBUTOR":10,"MEMBER":6,"COLLABORATOR":4},"pull_request_author_associations_count":{"CONTRIBUTOR":22,"MEMBER":10,"NONE":2,"COLLABORATOR":1},"issue_authors":{"calebbraun":9,"crvernon":6,"swd-turner":3,"yvettelkxii":2,"mgaacGitHub":2,"rubcalvo":2,"rplzzz":1,"zarrarkhan":1,"atmos-project":1,"fidelle":1,"tianfuyou":1,"codewhite-0":1,"mengqi-z":1,"flannerydolan":1,"wangshaobobetter":1,"landsat12":1,"thurber":1},"pull_request_authors":{"calebbraun":18,"crvernon":10,"rplzzz":3,"evanoffPNNL":1,"mengqi-z":1,"zarrarkhan":1,"thurber":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-03-13T00:00:08.721Z","repositories_count":13689400,"issues_count":34658244,"pull_requests_count":113057692,"authors_count":11198532,"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":"crvernon","count":16,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/crvernon"},{"login":"swd-turner","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/swd-turner"},{"login":"mengqi-z","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mengqi-z"}],"active_maintainers":[]},"events":{"total":{"ForkEvent":2,"WatchEvent":4},"last_year":{"WatchEvent":1}},"keywords":["climate","hydrology","simulation"],"dependencies":[{"ecosystem":"pypi","filepath":"requirements.txt","sha":null,"kind":"manifest","created_at":"2022-08-08T03:00:11.927Z","updated_at":"2022-08-08T03:00:11.927Z","repository_link":"https://github.com/JGCRI/xanthos/blob/main/requirements.txt","dependencies":[{"id":621196058,"package_name":"numpy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":621196059,"package_name":"scipy","ecosystem":"pypi","requirements":"\u003e=1.6","direct":true,"kind":"runtime","optional":false},{"id":621196060,"package_name":"pandas","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":621196061,"package_name":"configobj","ecosystem":"pypi","requirements":"\u003e=5.0.6","direct":true,"kind":"runtime","optional":false},{"id":621196062,"package_name":"joblib","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":621196063,"package_name":"matplotlib","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"setup.py","sha":null,"kind":"manifest","created_at":"2022-08-08T03:00:12.119Z","updated_at":"2022-08-08T03:00:12.119Z","repository_link":"https://github.com/JGCRI/xanthos/blob/main/setup.py","dependencies":[{"id":621197960,"package_name":"numpy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":621197961,"package_name":"scipy","ecosystem":"pypi","requirements":"\u003e=1.6","direct":true,"kind":"runtime","optional":false},{"id":621197962,"package_name":"pandas","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":621197963,"package_name":"configobj","ecosystem":"pypi","requirements":"\u003e=5.0.6","direct":true,"kind":"runtime","optional":false},{"id":621197964,"package_name":"joblib","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":621197965,"package_name":"matplotlib","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]}],"score":8.302017809751206,"created_at":"2023-09-11T14:32:23.930Z","updated_at":"2026-04-07T14:30:41.096Z","avatar_url":"https://github.com/JGCRI.png","language":"Python","category":"Hydrosphere","sub_category":"Freshwater and Hydrology","monthly_downloads":7,"total_dependent_repos":1,"total_dependent_packages":0,"readme":"[![DOI](https://zenodo.org/badge/88797535.svg)](https://zenodo.org/badge/latestdoi/88797535)\n\n# Xanthos\nXanthos is an open-source hydrologic model, written in Python, designed to quantify and analyze global water availability. Xanthos simulates historical and future global water availability on a monthly time step at a spatial resolution of 0.5 geographic degrees. Xanthos was designed to be extensible and used by scientists that study global water supply and work with the Global Change Analysis Model (GCAM). Xanthos uses a user-defined configuration file to specify model inputs, outputs and parameters. Xanthos has been tested using actual global data sets and the model is able to provide historical observations and future estimates of renewable freshwater resources in the form of total runoff, average streamflow, potential evapotranspiration, actual evapotranspiration, accessible water, hydropower potential, and more.\n\n# Get Started with Xanthos\nSet up Xanthos using the following steps:\n1. Install Xanthos \n\n    * install released version from PyPi using:\n    ```bash\n    pip install xanthos\n    ```\n   \n    * or install the latest version hosted on Github using:\n    ```bash\n    python -m pip install git+https://github.com/JGCRI/xanthos.git\n    ```\n2. Download the example data using the following in a Python prompt:\n    ```python\n    import xanthos\n    \n    # the directory that you want to download and extract the example data to\n    data_dir = \"\u003cmy data download location\u003e\"\n    \n    # download and unzip the package data to your local machine\n    xanthos.get_package_data(data_dir)\n    ```\n3. Setup your configuration file (.ini).  Examples are located in the \"example\" directory that you just downloaded.  Be sure to change the following variables to represent the local path to your example data:  `RootDir`, `TempMinFile`, `PrecipitationFile`.\n4. To run Xanthos:\n\n    ```python\n    import xanthos\n    \n    # the path and file name that my example configuration (.ini) file was downloaded to\n    config_file = '\u003cpath to my example config file\u003e/pm_abcd_mrtm.ini'\n    \n    # run Xanthos \n    xanthos.run_model(config_file)\n    ```\n\n# Setting up a Xanthos run\nA detailed Wiki set up to describe how to set up a Xanthos run can be viewed here:  https://github.com/JGCRI/xanthos/wiki/Tutorial-1:--Setting-up-a-Xanthos-run\n\n# Available Modules\nA detailed Wiki set up to describe available modules, as well as their associated configuration settings, can be viewed here: https://github.com/JGCRI/xanthos/wiki/Available-modules\n\n# Xanthos 2 - Upgrades\nWith the ability to simulate historical and future global water availability on a monthly time step at a spatial resolution of 0.5 geographic degrees, Xanthos version 1.0 provided a solid foundation for continued advancements in global water dynamics science.  The goal of Xanthos version 2 was to build upon previous investments by creating an accessible computing environment where core components of the model (potential evapotranspiration (PET), runoff generation, and river routing) could be interchanged or added to without having to start from scratch.  Xanthos 2 utilizes a component-style architecture which enables researchers to quickly incorporate and test cutting-edge research in a stable modeling environment prebuilt with a diagnostics module.  Major advancements for Xanthos 2.0 were also achieved by creating a more robust default configuration for the model that is now available to the scientific community.  These advancements include the addition of:  the Penman-Monteith PET module to capture the impacts of evolving land cover, the ABCD water balance module to account for groundwater recharge and discharge in runoff projections, improved water velocity considerations for the Modified River Transport Model (MRTM) routing module, a built-in differential evolution optimization module to calibrate ABCD parameters to modeled global runoff, and hydropower production assessment and potential capacity modules.  The figure below demonstrates the optimization module’s ability to calibrate Xanthos 2 runoff to the complex Variable Infiltration Capacity (VIC) model runoff projections when forced by the same climate data. Xanthos can be calibrated against other land surface models and Earth system models.\n\n![Xanthos to VIC](docs/xanthos2_to_vic_watch_basins.png)\n\nFigure:  Xanthos 2.0 performance when calibrated to the VIC model forced by WATCH observational climate data.  Each point represents the mean annual runoff for each of the 235 river basins in GCAM.\n\n# Contact Us\nFor questions, technical supporting and user contribution, please contact:\n\nMengqi Zhao \u003cmengqi.zhao@pnnl.gov\u003e\n\nChris Vernon \u003cchris.vernon@pnnl.gov\u003e\n\n# Citations\n\nVernon, C.R., Hejazi, M.I., Turner, S.W.D., Liu, Y., Braun, C.J., Li, X. and Link, R.P. (2019). A Global Hydrologic Framework to Accelerate Scientific Discovery.  Journal of Open Research Software,  7(1), p.1. DOI: https://doi.org/10.5334/jors.245.\n\n# Related Publications\n\n* Abeshu, G. W., Tian, F., Wild, T., Zhao, M., Turner, S., Chowdhury, A. F. M. K., Vernon, C. R., Hu, H., Zhuang, Y., Hejazi, M., and Li, H.-Y. (2023). Enhancing the representation of water management in global hydrological models, Geosci. Model Dev. Discuss. https://doi.org/10.5194/gmd-2023-12.\n* Chowdhury, K., Wessel, J., Wild, T.B., Lamontagne, J., Kanyako, F. (2023). Exploring Sustainable Electricity System Development Pathways in South America’s MERCOSUR Sub-Region. Energy Strategy Reviews. https://doi.org/10.1016/j.esr.2023.101150.\n* Khan, Z., Thompson, I., Vernon, C., Graham, N., Chen, M., Wild, T.B. (2023). A global 0.5° gridded multi-sector monthly water withdrawal dataset for 2015-2100 under alternative futures. Nature Scientific Data. https://doi.org/10.1038/s41597-023-02086-2.\n* Kanyako, F., Baker, E., Lamontagne, J., Turner, S., Wild, T.B. (2022). Seasonality and Trade in Hydro-heavy Electricity Markets: The West Africa Power Pool (WAPP). Applied Energy. DOI: https://doi.org/10.1016/j.apenergy.2022.120214.\n* Birnbaum, A.N., Lamontagne, J.R., Wild, T.B., Dolan, F., Yarlagadda, B. (2022). Drivers of Physical and Economic Water Scarcity in Latin America and the Caribbean. Earth’s Future. DOI: https://doi.org/10.1029/2022EF002764.\n* Liu, Y., Hejazi, M., Li, H., Zhang, X., and Leng, G. (2018). A hydrological emulator for global applications – HE v1.0.0, Geosci. Model Dev., 11, 1077–1092, https://doi.org/10.5194/gmd-11-1077-2018.\n* Turner, S.W., Ng, J.Y. and Galelli, S. (2017). Examining global electricity supply vulnerability to climate change using a high-fidelity hydropower dam model. Science of the Total Environment, 590: 663–675. DOI: https://doi.org/10.1016/j.scitotenv.2017.03.022.\n* Turner, S.W., Hejazi, M., Kim, S.H., Clarke, L., Edmonds, J. (2017). Climate impacts on hydropower and consequences for global electricity supply investment needs. Energy, 141: 2081–2090. DOI: https://doi.org/10.1016/j.energy.2017.11.089.\n","funding_links":[],"readme_doi_urls":["https://doi.org/10.5334/jors.245","https://doi.org/10.5194/gmd-2023-12","https://doi.org/10.1016/j.esr.2023.101150","https://doi.org/10.1038/s41597-023-02086-2","https://doi.org/10.1016/j.apenergy.2022.120214","https://doi.org/10.1029/2022EF002764","https://doi.org/10.5194/gmd-11-1077-2018","https://doi.org/10.1016/j.scitotenv.2017.03.022","https://doi.org/10.1016/j.energy.2017.11.089"],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["gcam","gcims","human-earth-system","coupled-human-natural-systems","multi-scale","multi-sector","nexus"],"project_url":"https://ost.ecosyste.ms/api/v1/projects/3663","html_url":"https://ost.ecosyste.ms/projects/3663"}