{"id":46087,"name":"PhytoFit","description":"Used to display satellite chlorophyll concentration, and calculate statistics and model phytoplankton blooms for regions within custom polygons.","url":"https://github.com/BIO-RSG/PhytoFit","last_synced_at":"2026-05-26T14:00:56.899Z","repository":{"id":40542025,"uuid":"277295931","full_name":"BIO-RSG/PhytoFit","owner":"BIO-RSG","description":"Shiny app for viewing satellite chla and modelling phytoplankton blooms","archived":false,"fork":false,"pushed_at":"2026-04-24T20:29:18.000Z","size":268466,"stargazers_count":8,"open_issues_count":1,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2026-05-22T16:42:53.872Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"HTML","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/BIO-RSG.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-07-05T12:16:52.000Z","updated_at":"2026-04-24T20:29:24.000Z","dependencies_parsed_at":"2025-08-25T23:46:35.100Z","dependency_job_id":"ac584685-e32c-46c0-bf95-3801674314c1","html_url":"https://github.com/BIO-RSG/PhytoFit","commit_stats":{"total_commits":345,"total_committers":9,"mean_commits":"38.333333333333336","dds":0.3652173913043478,"last_synced_commit":"118bf55c2f8b034d57f84e1016f2fd0e5c54fcdc"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/BIO-RSG/PhytoFit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BIO-RSG","download_url":"https://codeload.github.com/BIO-RSG/PhytoFit/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33523669,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T03:12:49.672Z","status":"ssl_error","status_checked_at":"2026-05-26T03:12:47.976Z","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":"BIO-RSG","name":"SOPhyE (Satellite Ocean Colour and Phytoplankton Ecology Group)","uuid":"68566074","kind":"organization","description":"Remote Sensing Group at the Bedford Institute of Oceanography for DFO Canada","email":null,"website":"https://bio-rsg.github.io/","location":"Canada","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/68566074?v=4","repositories_count":7,"last_synced_at":"2024-04-23T11:36:32.833Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/BIO-RSG","funding_links":[],"total_stars":13,"followers":14,"following":0,"created_at":"2022-11-14T09:15:53.094Z","updated_at":"2024-04-23T11:36:34.423Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BIO-RSG","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BIO-RSG/repositories"},"packages":[{"id":11729276,"name":"github.com/bio-rsg/phytofit","ecosystem":"go","description":null,"homepage":null,"licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/bio-rsg/phytofit","keywords_array":[],"namespace":null,"versions_count":1,"first_release_published_at":"2021-05-18T17:33:42.000Z","latest_release_published_at":"2021-05-18T17:33:42.000Z","latest_release_number":"v1.0.0","last_synced_at":"2026-05-24T13:01:21.478Z","created_at":"2025-06-04T10:54:28.577Z","updated_at":"2026-05-24T13:01:21.478Z","registry_url":"https://pkg.go.dev/github.com/bio-rsg/phytofit","install_command":"go get github.com/bio-rsg/phytofit","documentation_url":"https://pkg.go.dev/github.com/bio-rsg/phytofit#section-documentation","metadata":{},"repo_metadata":{"id":40542025,"uuid":"277295931","full_name":"BIO-RSG/PhytoFit","owner":"BIO-RSG","description":"Shiny app for viewing satellite chla and modelling phytoplankton blooms","archived":false,"fork":false,"pushed_at":"2025-09-09T18:37:33.000Z","size":230571,"stargazers_count":8,"open_issues_count":1,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-10-19T00:32:23.086Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"HTML","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/BIO-RSG.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-07-05T12:16:52.000Z","updated_at":"2025-10-18T14:29:57.000Z","dependencies_parsed_at":"2025-08-25T23:46:35.100Z","dependency_job_id":null,"html_url":"https://github.com/BIO-RSG/PhytoFit","commit_stats":{"total_commits":345,"total_committers":9,"mean_commits":"38.333333333333336","dds":0.3652173913043478,"last_synced_commit":"118bf55c2f8b034d57f84e1016f2fd0e5c54fcdc"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/BIO-RSG/PhytoFit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BIO-RSG","download_url":"https://codeload.github.com/BIO-RSG/PhytoFit/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280088678,"owners_count":26269905,"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","status":"online","status_checked_at":"2025-10-20T02:00:06.978Z","response_time":62,"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_record":{"login":"BIO-RSG","name":"SOPhyE (Satellite Ocean Colour and Phytoplankton Ecology Group)","uuid":"68566074","kind":"organization","description":"Remote Sensing Group at the Bedford Institute of Oceanography for DFO Canada","email":null,"website":"https://bio-rsg.github.io/","location":"Canada","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/68566074?v=4","repositories_count":7,"last_synced_at":"2024-04-23T11:36:32.833Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/BIO-RSG","funding_links":[],"total_stars":13,"followers":14,"following":0,"created_at":"2022-11-14T09:15:53.094Z","updated_at":"2024-04-23T11:36:34.423Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BIO-RSG","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BIO-RSG/repositories"},"tags":[{"name":"v1.0.0","sha":"ae3bfa6d6373c2fcec77969bb546f9dbff64943b","kind":"commit","published_at":"2021-05-18T17:33:42.000Z","download_url":"https://codeload.github.com/BIO-RSG/PhytoFit/tar.gz/v1.0.0","html_url":"https://github.com/BIO-RSG/PhytoFit/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/BIO-RSG/PhytoFit@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/tags/v1.0.0/manifests"}]},"repo_metadata_updated_at":"2025-10-20T12:13:51.675Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":5.764254255794306,"dependent_packages_count":5.401293307900869,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":5.582773781847587},"purl":"pkg:golang/github.com/bio-rsg/phytofit","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/bio-rsg/phytofit","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/bio-rsg/phytofit","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/bio-rsg/phytofit/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-09-01T02:32:57.879Z","issues_count":1,"pull_requests_count":6,"avg_time_to_close_issue":1200877.0,"avg_time_to_close_pull_request":156381.0,"issues_closed_count":1,"pull_requests_closed_count":5,"pull_request_authors_count":4,"issue_authors_count":1,"avg_comments_per_issue":0.0,"avg_comments_per_pull_request":0.0,"merged_pull_requests_count":5,"bot_issues_count":0,"bot_pull_requests_count":0,"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,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/issues","maintainers":[{"login":"sjbruce","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/sjbruce"},{"login":"jeffcullis","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jeffcullis"},{"login":"claysa","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/claysa"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fbio-rsg%2Fphytofit/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fbio-rsg%2Fphytofit/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fbio-rsg%2Fphytofit/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fbio-rsg%2Fphytofit/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fbio-rsg%2Fphytofit/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fbio-rsg%2Fphytofit/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":2149224,"maintainers_count":0,"namespaces_count":782439,"keywords_count":112823,"github":"golang","metadata":{"funded_packages_count":53495},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2026-04-19T05:14:45.920Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/namespaces"}},{"id":11729274,"name":"github.com/BIO-RSG/PhytoFit","ecosystem":"go","description":null,"homepage":null,"licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/BIO-RSG/PhytoFit","keywords_array":[],"namespace":null,"versions_count":1,"first_release_published_at":"2021-05-18T17:33:42.000Z","latest_release_published_at":"2021-05-18T17:33:42.000Z","latest_release_number":"v1.0.0","last_synced_at":"2026-05-24T13:01:22.648Z","created_at":"2025-06-04T10:54:28.295Z","updated_at":"2026-05-24T13:01:22.649Z","registry_url":"https://pkg.go.dev/github.com/BIO-RSG/PhytoFit","install_command":"go get github.com/BIO-RSG/PhytoFit","documentation_url":"https://pkg.go.dev/github.com/BIO-RSG/PhytoFit#section-documentation","metadata":{},"repo_metadata":{"id":40542025,"uuid":"277295931","full_name":"BIO-RSG/PhytoFit","owner":"BIO-RSG","description":"Shiny app for viewing satellite chla and modelling phytoplankton blooms","archived":false,"fork":false,"pushed_at":"2025-09-09T18:37:33.000Z","size":230571,"stargazers_count":8,"open_issues_count":1,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-10-19T00:32:23.086Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"HTML","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/BIO-RSG.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-07-05T12:16:52.000Z","updated_at":"2025-10-18T14:29:57.000Z","dependencies_parsed_at":"2025-08-25T23:46:35.100Z","dependency_job_id":null,"html_url":"https://github.com/BIO-RSG/PhytoFit","commit_stats":{"total_commits":345,"total_committers":9,"mean_commits":"38.333333333333336","dds":0.3652173913043478,"last_synced_commit":"118bf55c2f8b034d57f84e1016f2fd0e5c54fcdc"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/BIO-RSG/PhytoFit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BIO-RSG","download_url":"https://codeload.github.com/BIO-RSG/PhytoFit/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280050618,"owners_count":26263883,"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","status":"online","status_checked_at":"2025-10-20T02:00:06.978Z","response_time":62,"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_record":{"login":"BIO-RSG","name":"SOPhyE (Satellite Ocean Colour and Phytoplankton Ecology Group)","uuid":"68566074","kind":"organization","description":"Remote Sensing Group at the Bedford Institute of Oceanography for DFO Canada","email":null,"website":"https://bio-rsg.github.io/","location":"Canada","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/68566074?v=4","repositories_count":7,"last_synced_at":"2024-04-23T11:36:32.833Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/BIO-RSG","funding_links":[],"total_stars":13,"followers":14,"following":0,"created_at":"2022-11-14T09:15:53.094Z","updated_at":"2024-04-23T11:36:34.423Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BIO-RSG","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BIO-RSG/repositories"},"tags":[{"name":"v1.0.0","sha":"ae3bfa6d6373c2fcec77969bb546f9dbff64943b","kind":"commit","published_at":"2021-05-18T17:33:42.000Z","download_url":"https://codeload.github.com/BIO-RSG/PhytoFit/tar.gz/v1.0.0","html_url":"https://github.com/BIO-RSG/PhytoFit/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/BIO-RSG/PhytoFit@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/tags/v1.0.0/manifests"}]},"repo_metadata_updated_at":"2025-10-20T12:13:51.661Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":5.764254255794306,"dependent_packages_count":5.401293307900869,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":5.582773781847587},"purl":"pkg:golang/github.com/%21b%21i%21o-%21r%21s%21g/%21phyto%21fit","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/BIO-RSG/PhytoFit","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/BIO-RSG/PhytoFit","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/BIO-RSG/PhytoFit/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-09-01T02:32:57.879Z","issues_count":1,"pull_requests_count":6,"avg_time_to_close_issue":1200877.0,"avg_time_to_close_pull_request":156381.0,"issues_closed_count":1,"pull_requests_closed_count":5,"pull_request_authors_count":4,"issue_authors_count":1,"avg_comments_per_issue":0.0,"avg_comments_per_pull_request":0.0,"merged_pull_requests_count":5,"bot_issues_count":0,"bot_pull_requests_count":0,"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,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/issues","maintainers":[{"login":"sjbruce","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/sjbruce"},{"login":"jeffcullis","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jeffcullis"},{"login":"claysa","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/claysa"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FBIO-RSG%2FPhytoFit/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FBIO-RSG%2FPhytoFit/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FBIO-RSG%2FPhytoFit/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FBIO-RSG%2FPhytoFit/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FBIO-RSG%2FPhytoFit/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FBIO-RSG%2FPhytoFit/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":2149224,"maintainers_count":0,"namespaces_count":782439,"keywords_count":112823,"github":"golang","metadata":{"funded_packages_count":53495},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2026-04-19T05:14:45.920Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/namespaces"}}],"commits":{"id":1358738,"full_name":"BIO-RSG/PhytoFit","default_branch":"master","total_commits":407,"total_committers":9,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":45.22222222222222,"dds":0.33415233415233414,"past_year_total_commits":21,"past_year_total_committers":3,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":7.0,"past_year_dds":0.09523809523809523,"last_synced_at":"2026-05-24T13:01:42.882Z","last_synced_commit":"bf6669e2c252ecb097d2e6ce7f87352e0c629c0c","created_at":"2023-09-13T08:46:33.474Z","updated_at":"2026-05-24T13:01:25.773Z","committers":[{"name":"Clay","email":"Stephanie.Clay@dfo-mpo.gc.ca","login":null,"count":271},{"name":"claysa","email":"clay_steph@hotmail.com","login":"claysa","count":99},{"name":"Default Seadas User","email":"seadas-user@localhost","login":null,"count":12},{"name":"Jeff Cullis","email":"jcullis@dal.ca","login":"jeffcullis","count":9},{"name":"David Fishman","email":"davjfish@gmail.com","login":"davjfish","count":8},{"name":"Scott Bruce","email":"scott.bruce@mi.mun.ca","login":"sjbruce","count":3},{"name":"Andrea Hilborn","email":"andreahilborn@gmail.com","login":"schckngs","count":2},{"name":"Clay","email":"ClaySA@ENT.dfo-mpo.ca","login":null,"count":2},{"name":"Daniel Ricard","email":"Daniel.Ricard@dfo-mpo.gc.ca","login":"ricardd","count":1}],"past_year_committers":[{"name":"Clay","email":"Stephanie.Clay@dfo-mpo.gc.ca","login":null,"count":19},{"name":"Stephanie Clay","email":"52824065+claysa","login":"claysa","count":1},{"name":"Daniel Ricard","email":"Daniel.Ricard@dfo-mpo.gc.ca","login":"ricardd","count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-05-26T00:00:10.885Z","repositories_count":6242035,"commits_count":882983520,"contributors_count":34921713,"owners_count":1157700,"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":"BIO-RSG/PhytoFit","html_url":"https://github.com/BIO-RSG/PhytoFit","last_synced_at":"2026-05-06T04:03:17.343Z","status":"active","issues_count":1,"pull_requests_count":10,"avg_time_to_close_issue":1200877.0,"avg_time_to_close_pull_request":121086.75,"issues_closed_count":1,"pull_requests_closed_count":8,"pull_request_authors_count":6,"issue_authors_count":1,"avg_comments_per_issue":0.0,"avg_comments_per_pull_request":0.0,"merged_pull_requests_count":8,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":89935.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"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":2,"created_at":"2023-09-13T08:47:08.416Z","updated_at":"2026-05-06T04:03:17.344Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/BIO-RSG%2FPhytoFit/issues","issue_labels_count":{},"pull_request_labels_count":{},"issue_author_associations_count":{"COLLABORATOR":1},"pull_request_author_associations_count":{"COLLABORATOR":7,"CONTRIBUTOR":2,"NONE":1},"issue_authors":{"jeffcullis":1},"pull_request_authors":{"sjbruce":4,"schckngs":2,"claysa":1,"jeffcullis":1,"ricardd":1,"davjfish":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-05-22T00:00:21.018Z","repositories_count":14663096,"issues_count":34147617,"pull_requests_count":111763670,"authors_count":11269358,"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":{"COLLABORATOR":1,"NONE":1},"past_year_issue_authors":{},"past_year_pull_request_authors":{"davjfish":1,"ricardd":1},"maintainers":[{"login":"sjbruce","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/sjbruce"},{"login":"jeffcullis","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jeffcullis"},{"login":"claysa","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/claysa"},{"login":"ricardd","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ricardd"}],"active_maintainers":[{"login":"ricardd","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ricardd"}]},"events":{"total":{"MemberEvent":1,"PullRequestEvent":1,"ForkEvent":1,"WatchEvent":1,"PushEvent":17},"last_year":{"MemberEvent":1,"PullRequestEvent":1,"PushEvent":4}},"keywords":[],"dependencies":[{"ecosystem":"docker","filepath":"Dockerfile","sha":null,"kind":"manifest","created_at":"2023-09-21T19:29:46.694Z","updated_at":"2023-09-21T19:29:46.694Z","repository_link":"https://github.com/BIO-RSG/PhytoFit/blob/master/Dockerfile","dependencies":[{"id":13856702707,"package_name":"rocker/shiny","ecosystem":"docker","requirements":"latest","direct":true,"kind":"build","optional":false}]},{"ecosystem":"docker","filepath":"docker-compose.yml","sha":null,"kind":"manifest","created_at":"2023-09-21T19:29:47.333Z","updated_at":"2023-09-21T19:29:47.333Z","repository_link":"https://github.com/BIO-RSG/PhytoFit/blob/master/docker-compose.yml","dependencies":[{"id":13856703457,"package_name":"cioosatlantic/phytofit","ecosystem":"docker","requirements":"latest","direct":true,"kind":"runtime","optional":false}]}],"score":null,"created_at":"2023-09-13T08:45:12.968Z","updated_at":"2026-05-26T14:00:56.900Z","avatar_url":"https://github.com/BIO-RSG.png","language":"HTML","category":"Biosphere","sub_category":"Marine Life and Fishery","monthly_downloads":0,"total_dependent_repos":0,"total_dependent_packages":0,"readme":"# PhytoFit\n\n[![DOI](https://zenodo.org/badge/277295931.svg)](https://zenodo.org/badge/latestdoi/277295931)\n\nThis app can be used to display satellite chlorophyll concentration, and calculate statistics and model phytoplankton blooms for regions within custom polygons. See below for example in screen capture.  \n\n\u003ca target=\"_blank\" href=\"images/screencap01.png\"\u003e\n\u003cimg src=\"images/screencap01.png\" alt=\"screencap\" width=\"200\"/\u003e\n\u003c/a\u003e\n\n**Public host:** https://cioosatlantic.ca/phytofit/  \n\n\n### How to cite\n\nIn publications, please include acknowledgements to [NASA OBPG](https://oceancolor.gsfc.nasa.gov) for the satellite data and the [BIO remote sensing group](https://github.com/BIO-RSG) for the application, and use this citation in the references:  \n\n*Stephanie Clay, Chantelle Layton, \u0026 Emmanuel Devred. (2021). BIO-RSG/PhytoFit: First release (v1.0.0). Zenodo. https://doi.org/10.5281/zenodo.4770754*  \n\nBibTeX format:  \n\n    @misc{clay21,\n      author       = {Clay, Stephanie and Layton, Chantelle and Devred, Emmanuel},\n      title        = \"PhytoFit\",\n      howpublished = \"\\url{https://github.com/BIO-RSG/PhytoFit}\",\n      year         = 2021\n    }\n\n\n## Prerequisites\n\n1. Install the latest versions of R and RStudio.\n\n2. Install the necessary packages:\n```r\ninstall.packages(c(\"fst\", \"shiny\", \"shinyWidgets\", \"shinyjs\", \"shinybusy\", \"leaflet\", \"leafpm\", \"quantreg\", \"minpack.lm\", \"sp\", \"ggplot2\", \"ggpp\", \"dplyr\", \"tidyr\", \"terra\", \"stringr\", \"RCurl\", \"sf\", \"fs\"))\n```\n\n3. Restart R after the packages have been installed.\n\n\n## Getting started\n\n1. Download this repository one of two ways:  \n\n- Option 1: Code --\u003e Download ZIP  \n\n- Option 2: Using git (this will make it easier to download updates in the future, by simply using the `git pull` command): Open git bash terminal, navigate to the folder where you want to download the repository, and type: `git clone https://github.com/BIO-RSG/PhytoFit.git`  \n\n2. Open the PhytoFit repository in RStudio:  \n\n- File --\u003e Open Project --\u003e Navigate to the PhytoFit folder and open \"PhytoFit.Rproj\"  \n\n3. Download the datasets of your choice:  \n\n- Open `00_download_new_datasets.R` from the PhytoFit folder. Set *ask_user=FALSE* to download all available datasets, or *ask_user=TRUE* to ask before downloading each one. Alternatively, you can run the script from the command line like:  `Rscript [script directory]/00_download_new_datasets.R 'false'`, filling in the [script directory] with the location where you stored the script. *'false'* is the ask_user argument, set to *'true'* for prompts.    \n\n4. To update existing datasets:  \n\n- Similar to the download script in step 3, open `00_update_datasets.R` and set the *ask_user* argument, or run from the command line (e.g. `Rscript [script directory]/00_update_datasets.R 'false'`. This will update the datasets you have already downloaded with the most recent copies (and download any years of data missing from your local directory).  \n\n\n**WARNINGS:**  \n- Data files will be downloaded to `data/[region]/` subfolders of the PhytoFit repository - Do NOT move them from there or the app will not be able to read them.  \n- If possible, please keep the data files if you intend to use them in the future, rather than re-downloading them later, to avoid excessive traffic on the ftp server.  \n- Any data that is \u003c 3 months old is \"Near Real Time\" (NRT) quality. NRT data is replaced with \"Science quality\" data after it becomes available, following the 3-month lag. More info \u003ca href=\"https://lance.modaps.eosdis.nasa.gov/data/difference.php\"\u003ehere\u003c/a\u003e.  \n\n\n## Running\n\nOpen app.R within RStudio, and click \"Run app\"\n\n\n## Authors\n\n* **Chantelle Layton** - *Initial concept, preliminary design, coding, and algorithm development/improvements*  \n* **Stephanie Clay** - *Final app design and modifications, feature addition, new datasets, maintenance, and algorithm improvements*  \n* **Emmanuel Devred** - *Scientific support, algorithm development/improvements, review and feature recommendations*  \n\n## Acknowledgments\n\n* **Andrea Hilborn** for many valuable suggestions\n\n\n## Tips and recommendations\n\n- **Selecting the region from the drop-down menu before loading data:**  \nIf your area of interest is contained within one of the smaller regions (e.g. Bay of Fundy or Gulf of Saint Lawrence), choose this in the \"Region\" drop-down menu to get the satellite/variable selections available for that region.  \nRecommended satellite sensor and chl-a models:  \n  - **Atlantic:** OC-CCI v6.0 POLY4 chl-a  \n  - **Gulf of Saint Lawrence, 4km:** OC-CCI v6.0 POLY4 chl-a (**\u003cfont color=\"red\"\u003eIMPORTANT\u003c/font\u003e**: This is a different version of POLY4 than the Atlantic, trained with data from the GoSL only. To use the GoSL-POLY4 instead of the Atlantic-POLY4, you must select \"Gulf of Saint Lawrence (4km)\" from the region drop-down menu).  \nNote that the \"Gulf of Saint Lawrence, 1km\" option in the region drop-down menu is an out-of-date product that was used in a single study, and should no longer be used.  \n  - **Bay of Fundy (BoF):** OC-CCI v6.0 OCxSPM-cor chl-a  \n\n- **Selecting a temporal composite length:**  \nIf you're concerned about low data coverage, you can use 4- or 8-day average composites, but you risk missing short-lived peaks in chl-a concentration. **Typically we use daily data**.  \n\n- **Custom polygons:**  \n  - Ensure your polygon overlaps at least several pixels. Chl-a can be highly variable over small spatial scales and outliers or erroneous pixels (particularly near the coast) could have a more negative effect on the results in polygons with fewer pixels. If your area of interest is very small, consider expanding your polygon to take an average of the surrounding area.  \n  - If your region of interest it too close to the coast, it might not overlap any valid data pixels. Pixels near the coast should also be used with caution as they can be affected by land runoff or shallow water where the bottom is visible and interferes with the reflected light detected by the satellite.  \n\n- **csv table of statistics:**  \nThe columns with \"_log10\" suffixes are the calculations performed on the log10-transformed data (i.e. chl-a pixel values are logged, the statistics are calculated, then the result is transformed back to linear space). Since chl-a is lognormally distributed, **we recommend that you use these statistics** - e.g. if you want a time series of daily average chl-a within the polygon, use the \"mean_log10\" column.  \n\n\n## Links\n\n[User guide](https://github.com/BIO-RSG/PhytoFit/blob/master/USERGUIDE.md) (In progress)  \n[Chl-a model performance evaluation](https://bio-rsg.github.io/chla_model_performance_summary.html)  \n[References and data sources](docs/references.md)  \n[Using the raw (binned) data](https://github.com/BIO-RSG/PhytoFit/blob/master/fst_tutorial.md) (This is a quick tutorial explaining how the raw satellite chlorophyll data used in PhytoFit can be read into R and manipulated for other purposes)  \n[Code updates affecting the algorithms](https://github.com/BIO-RSG/PhytoFit/blob/master/updates.md) (Summary of updates that affected the way the bloom metrics are calculated)  \n\n","funding_links":[],"readme_doi_urls":["https://doi.org/10.5281/zenodo.4770754"],"works":{"https://doi.org/10.5281/zenodo.4770754":null},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://ost.ecosyste.ms/api/v1/projects/46087","html_url":"https://ost.ecosyste.ms/projects/46087"}