{"id":140815,"name":null,"description":"Track your [⛵|🚂|🚙|🚜|🛵|🛷|🚶] with a Raspberry Pi and a GPS.","url":"https://github.com/bencevans/tracksix","last_synced_at":"2025-09-09T13:26:01.866Z","repository":{"id":39738023,"uuid":"170146261","full_name":"bencevans/tracksix","owner":"bencevans","description":"Track your [⛵|🚂|🚙|🚜|🛵|🛷|🚶] with a Raspberry Pi and a GPS.","archived":false,"fork":false,"pushed_at":"2025-08-26T14:27:28.000Z","size":251,"stargazers_count":17,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-08-26T19:43:25.066Z","etag":null,"topics":["iot","location","owntracks","raspberry-pi"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bencevans.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"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},"funding":{"github":"bencevans","custom":"https://buymeacoffee.com/bencevans"}},"created_at":"2019-02-11T14:50:44.000Z","updated_at":"2025-08-26T14:27:24.000Z","dependencies_parsed_at":"2023-11-21T03:29:40.935Z","dependency_job_id":"e4db4430-0be7-4de3-a713-d0de0928fcdb","html_url":"https://github.com/bencevans/tracksix","commit_stats":{"total_commits":76,"total_committers":4,"mean_commits":19.0,"dds":0.2763157894736842,"last_synced_commit":"1640a83be09667ff09c7bcd5f5f342c597ae7137"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/bencevans/tracksix","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bencevans","download_url":"https://codeload.github.com/bencevans/tracksix/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/sbom","scorecard":{"id":231669,"data":{"date":"2025-08-11","repo":{"name":"github.com/bencevans/tracksix","commit":"c7ac8c437e4aa9339249f8baf67ecd749473c235"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.6,"checks":[{"name":"Maintained","score":4,"reason":"5 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 4","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"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":"Code-Review","score":0,"reason":"Found 0/3 approved changesets -- score normalized to 0","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":"Pinned-Dependencies","score":3,"reason":"dependency not pinned by hash detected -- score normalized to 3","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/bencevans/tracksix/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/bencevans/tracksix/ci.yml/main?enable=pin","Info:   0 out of   2 GitHub-owned GitHubAction dependencies pinned","Info:   1 out of   1 npmCommand dependencies pinned"],"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":"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":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"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":"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":"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":"License","score":0,"reason":"license file not detected","details":["Warn: project does not have a license file"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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":"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":"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 27 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"}},{"name":"Vulnerabilities","score":9,"reason":"1 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-17T04:57:48.276Z","repository_id":39738023,"created_at":"2025-08-17T04:57:48.276Z","updated_at":"2025-08-17T04:57:48.276Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274300244,"owners_count":25259716,"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-09-09T02:00:10.223Z","response_time":80,"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":"bencevans","name":"Ben Evans","uuid":"638535","kind":"user","description":"","email":"","website":"https://bencevans.io/","location":"London, UK","twitter":"bencevans","company":"Institute of Zoology, ZSL","icon_url":"https://avatars.githubusercontent.com/u/638535?u=1f7925ea9b6520d6d67d16c14ad8bc3f90efb0f5\u0026v=4","repositories_count":282,"last_synced_at":"2025-09-02T07:49:32.303Z","metadata":{"has_sponsors_listing":true,"funding":{"github":"bencevans","custom":"https://buymeacoffee.com/bencevans"}},"html_url":"https://github.com/bencevans","funding_links":["https://github.com/sponsors/bencevans","https://buymeacoffee.com/bencevans"],"total_stars":1898,"followers":225,"following":41,"created_at":"2022-11-02T16:37:06.535Z","updated_at":"2025-09-02T07:49:32.303Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bencevans","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bencevans/repositories"},"packages":[{"id":2473785,"name":"tracksix","ecosystem":"npm","description":"Track your [⛵|🚂|🚙|🚜|🛵|🛷|🚶] with a Raspberry Pi and a GPS.","homepage":"https://github.com/bencevans/tracksix#readme","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/bencevans/tracksix","keywords_array":["owntracks","gps","recorder","gpsd"],"namespace":null,"versions_count":6,"first_release_published_at":"2019-02-15T16:24:48.504Z","latest_release_published_at":"2025-06-04T09:48:23.864Z","latest_release_number":"1.2.2","last_synced_at":"2025-08-27T01:01:55.610Z","created_at":"2022-04-10T02:18:09.792Z","updated_at":"2025-08-27T01:08:04.233Z","registry_url":"https://www.npmjs.com/package/tracksix","install_command":"npm install tracksix","documentation_url":null,"metadata":{"funding":null,"dist-tags":{"latest":"1.2.2"}},"repo_metadata":{"id":39738023,"uuid":"170146261","full_name":"bencevans/tracksix","owner":"bencevans","description":"Track your [⛵|🚂|🚙|🚜|🛵|🛷|🚶] with a Raspberry Pi and a GPS.","archived":false,"fork":false,"pushed_at":"2025-08-26T14:27:28.000Z","size":251,"stargazers_count":17,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-08-26T19:43:25.066Z","etag":null,"topics":["iot","location","owntracks","raspberry-pi"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bencevans.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"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},"funding":{"github":"bencevans","custom":"https://buymeacoffee.com/bencevans"}},"created_at":"2019-02-11T14:50:44.000Z","updated_at":"2025-08-26T14:27:24.000Z","dependencies_parsed_at":"2023-11-21T03:29:40.935Z","dependency_job_id":"e4db4430-0be7-4de3-a713-d0de0928fcdb","html_url":"https://github.com/bencevans/tracksix","commit_stats":{"total_commits":76,"total_committers":4,"mean_commits":19.0,"dds":0.2763157894736842,"last_synced_commit":"1640a83be09667ff09c7bcd5f5f342c597ae7137"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/bencevans/tracksix","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bencevans","download_url":"https://codeload.github.com/bencevans/tracksix/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/sbom","scorecard":{"id":231669,"data":{"date":"2025-08-11","repo":{"name":"github.com/bencevans/tracksix","commit":"c7ac8c437e4aa9339249f8baf67ecd749473c235"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.6,"checks":[{"name":"Maintained","score":4,"reason":"5 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 4","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"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":"Code-Review","score":0,"reason":"Found 0/3 approved changesets -- score normalized to 0","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":"Pinned-Dependencies","score":3,"reason":"dependency not pinned by hash detected -- score normalized to 3","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/bencevans/tracksix/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/bencevans/tracksix/ci.yml/main?enable=pin","Info:   0 out of   2 GitHub-owned GitHubAction dependencies pinned","Info:   1 out of   1 npmCommand dependencies pinned"],"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":"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":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yml:1","Info: no jobLevel write permissions found"],"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":"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":"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":"License","score":0,"reason":"license file not detected","details":["Warn: project does not have a license file"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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":"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":"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 27 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"}},{"name":"Vulnerabilities","score":9,"reason":"1 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-17T04:57:48.276Z","repository_id":39738023,"created_at":"2025-08-17T04:57:48.276Z","updated_at":"2025-08-17T04:57:48.276Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272275635,"owners_count":24905201,"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-08-26T02:00:07.904Z","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_record":{"login":"bencevans","name":"Ben Evans","uuid":"638535","kind":"user","description":"","email":"","website":"https://bencevans.io/","location":"London, UK","twitter":"bencevans","company":"Institute of Zoology, ZSL","icon_url":"https://avatars.githubusercontent.com/u/638535?u=1f7925ea9b6520d6d67d16c14ad8bc3f90efb0f5\u0026v=4","repositories_count":282,"last_synced_at":"2025-08-26T04:50:03.496Z","metadata":{"has_sponsors_listing":true,"funding":{"github":"bencevans","custom":"https://buymeacoffee.com/bencevans"}},"html_url":"https://github.com/bencevans","funding_links":["https://github.com/sponsors/bencevans","https://buymeacoffee.com/bencevans"],"total_stars":1896,"followers":224,"following":41,"created_at":"2022-11-02T16:37:06.535Z","updated_at":"2025-08-26T04:50:03.496Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bencevans","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bencevans/repositories"},"tags":[{"name":"v1.2.2","sha":"52b03ee9b83ecc69bebc8c37e0e9add861ca0180","kind":"tag","published_at":"2025-06-04T09:46:21.000Z","download_url":"https://codeload.github.com/bencevans/tracksix/tar.gz/v1.2.2","html_url":"https://github.com/bencevans/tracksix/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/bencevans/tracksix@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/tags/v1.2.2/manifests"},{"name":"v1.2.1","sha":"9675296629758ccf744df455f4e559c7f5c5172e","kind":"tag","published_at":"2024-04-26T10:41:22.000Z","download_url":"https://codeload.github.com/bencevans/tracksix/tar.gz/v1.2.1","html_url":"https://github.com/bencevans/tracksix/releases/tag/v1.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/bencevans/tracksix@v1.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/tags/v1.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/tags/v1.2.1/manifests"},{"name":"v1.2.0","sha":"4f3d7d48cf03b0aba61118df20f89f6de725be3d","kind":"tag","published_at":"2022-12-21T18:26:31.000Z","download_url":"https://codeload.github.com/bencevans/tracksix/tar.gz/v1.2.0","html_url":"https://github.com/bencevans/tracksix/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/bencevans/tracksix@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"19d64bfc48a7cec2e794be1173ff54ec2d541f28","kind":"commit","published_at":"2019-06-16T14:26:59.000Z","download_url":"https://codeload.github.com/bencevans/tracksix/tar.gz/v1.1.0","html_url":"https://github.com/bencevans/tracksix/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/bencevans/tracksix@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/tags/v1.1.0/manifests"},{"name":"v1.0.1","sha":"f96baa56229716b13f967ea7b2fc81dfb09a5db9","kind":"commit","published_at":"2019-06-16T14:18:42.000Z","download_url":"https://codeload.github.com/bencevans/tracksix/tar.gz/v1.0.1","html_url":"https://github.com/bencevans/tracksix/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/bencevans/tracksix@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/tags/v1.0.1/manifests"},{"name":"v1.0.0","sha":"d5a786026185d1e127307533dd4fa62d44ff99df","kind":"commit","published_at":"2019-02-15T16:23:13.000Z","download_url":"https://codeload.github.com/bencevans/tracksix/tar.gz/v1.0.0","html_url":"https://github.com/bencevans/tracksix/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/bencevans/tracksix@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/tags/v1.0.0/manifests"}]},"repo_metadata_updated_at":"2025-08-27T01:08:04.233Z","dependent_packages_count":0,"downloads":11,"downloads_period":"last-month","dependent_repos_count":1,"rankings":{"downloads":66.02935790794048,"dependent_repos_count":10.756864959314456,"dependent_packages_count":54.22632899098109,"stargazers_count":8.337922621122344,"forks_count":11.953376224465138,"docker_downloads_count":null,"average":30.260770140764702},"purl":"pkg:npm/tracksix","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/npm/tracksix","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/npm/tracksix","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/npm/tracksix/dependencies","status":null,"funding_links":["https://github.com/sponsors/bencevans","https://buymeacoffee.com/bencevans"],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-27T01:08:03.647Z","issues_count":5,"pull_requests_count":89,"avg_time_to_close_issue":69164455.2,"avg_time_to_close_pull_request":429541.7528089888,"issues_closed_count":5,"pull_requests_closed_count":89,"pull_request_authors_count":3,"issue_authors_count":1,"avg_comments_per_issue":0.2,"avg_comments_per_pull_request":0.4044943820224719,"merged_pull_requests_count":66,"bot_issues_count":0,"bot_pull_requests_count":85,"past_year_issues_count":0,"past_year_pull_requests_count":22,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":534656.0454545454,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":22,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":0.22727272727272727,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":22,"past_year_merged_pull_requests_count":17,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/issues","maintainers":[{"login":"bencevans","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bencevans"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/tracksix/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/tracksix/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/tracksix/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/tracksix/related_packages","maintainers":[{"uuid":"bencevans","login":"bencevans","name":null,"email":"ben@bensbit.co.uk","url":null,"packages_count":92,"html_url":"https://www.npmjs.com/~bencevans","role":null,"created_at":"2022-11-15T01:39:06.273Z","updated_at":"2022-11-15T01:39:06.273Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/bencevans/packages"}],"registry":{"name":"npmjs.org","url":"https://registry.npmjs.org","ecosystem":"npm","default":true,"packages_count":5135608,"maintainers_count":1052697,"namespaces_count":314046,"keywords_count":731068,"github":"npm","metadata":{"funded_packages_count":156026},"icon_url":"https://github.com/npm.png","created_at":"2022-04-04T15:19:23.081Z","updated_at":"2025-09-09T05:57:39.025Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/namespaces"}}],"commits":{"id":370795,"full_name":"bencevans/tracksix","default_branch":"main","committers":[{"name":"Ben Evans","email":"ben@bluechimp.io","login":"bencevans","count":58},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":45},{"name":"Renovate Bot","email":"bot@renovateapp.com","login":"renovate-bot","count":13},{"name":"renovate[bot]","email":"renovate[bot]","login":"renovate[bot]","count":4}],"total_commits":120,"total_committers":4,"total_bot_commits":49,"total_bot_committers":2,"mean_commits":30.0,"dds":0.5166666666666666,"past_year_committers":[{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":17},{"name":"Ben Evans","email":"ben@bluechimp.io","login":"bencevans","count":2}],"past_year_total_commits":19,"past_year_total_committers":2,"past_year_total_bot_commits":17,"past_year_total_bot_committers":1,"past_year_mean_commits":9.5,"past_year_dds":0.10526315789473684,"last_synced_at":"2025-06-08T15:00:48.704Z","last_synced_commit":"52b03ee9b83ecc69bebc8c37e0e9add861ca0180","created_at":"2023-03-08T19:31:24.023Z","updated_at":"2025-06-08T15:00:48.705Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-09T00:17:06.873Z","repositories_count":5521302,"commits_count":866413376,"contributors_count":31848533,"owners_count":916578,"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":"bencevans/tracksix","html_url":"https://github.com/bencevans/tracksix","last_synced_at":"2025-08-31T19:32:13.699Z","status":null,"issues_count":5,"pull_requests_count":99,"avg_time_to_close_issue":69164455.2,"avg_time_to_close_pull_request":455916.7708333333,"issues_closed_count":5,"pull_requests_closed_count":96,"pull_request_authors_count":3,"issue_authors_count":1,"avg_comments_per_issue":0.2,"avg_comments_per_pull_request":0.3939393939393939,"merged_pull_requests_count":70,"bot_issues_count":0,"bot_pull_requests_count":95,"past_year_issues_count":0,"past_year_pull_requests_count":26,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":576808.5652173914,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":23,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":0.2692307692307692,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":26,"past_year_merged_pull_requests_count":16,"created_at":"2023-05-21T01:44:37.612Z","updated_at":"2025-09-03T03:52:49.226Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/bencevans%2Ftracksix/issues","issue_labels_count":{"released":1},"pull_request_labels_count":{"dependencies":102,"javascript":95,"released":11,"github_actions":4},"issue_author_associations_count":{"OWNER":5},"pull_request_author_associations_count":{"CONTRIBUTOR":119,"OWNER":4},"issue_authors":{"bencevans":5},"pull_request_authors":{"dependabot[bot]":102,"renovate[bot]":17,"bencevans":4},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-05T00:00:10.444Z","repositories_count":10100132,"issues_count":31474143,"pull_requests_count":97447451,"authors_count":10702673,"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":{"dependencies":31,"javascript":30,"github_actions":1},"past_year_issue_author_associations_count":{},"past_year_pull_request_author_associations_count":{"CONTRIBUTOR":31},"past_year_issue_authors":{},"past_year_pull_request_authors":{"dependabot[bot]":31},"maintainers":[{"login":"bencevans","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bencevans"}],"active_maintainers":[]},"events":{"total":{"DeleteEvent":14,"IssueCommentEvent":4,"PushEvent":11,"PullRequestEvent":27,"CreateEvent":14},"last_year":{"DeleteEvent":14,"IssueCommentEvent":4,"PushEvent":11,"PullRequestEvent":27,"CreateEvent":14}},"keywords":["iot","location","owntracks","raspberry-pi"],"dependencies":[{"ecosystem":"npm","filepath":"package.json","sha":null,"kind":"manifest","created_at":"2022-09-20T13:27:11.743Z","updated_at":"2022-09-20T13:27:11.743Z","repository_link":"https://github.com/bencevans/tracksix/blob/main/package.json","dependencies":[{"id":5631227403,"package_name":"debug","ecosystem":"npm","requirements":"^4.1.1","direct":true,"kind":"runtime","optional":false},{"id":5631227404,"package_name":"mqtt","ecosystem":"npm","requirements":"^3.0.0","direct":true,"kind":"runtime","optional":false},{"id":5631227405,"package_name":"node-gpsd","ecosystem":"npm","requirements":"^0.3.0","direct":true,"kind":"runtime","optional":false},{"id":5631227406,"package_name":"throttle-end","ecosystem":"npm","requirements":"git+https://github.com/bencevans/throttle-end.git#961a27a72c82310797382e1083cb85e9059f24e1","direct":true,"kind":"runtime","optional":false},{"id":5631227407,"package_name":"semantic-release","ecosystem":"npm","requirements":"^17.3.7","direct":true,"kind":"development","optional":false},{"id":5631227408,"package_name":"standard","ecosystem":"npm","requirements":"^16.0.3","direct":true,"kind":"development","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/ci.yml","sha":null,"kind":"manifest","created_at":"2023-01-31T17:02:02.955Z","updated_at":"2023-01-31T17:02:02.955Z","repository_link":"https://github.com/bencevans/tracksix/blob/main/.github/workflows/ci.yml","dependencies":[{"id":7275829173,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":7275829176,"package_name":"actions/setup-node","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"npm","filepath":"package-lock.json","sha":null,"kind":"lockfile","created_at":"2023-01-31T17:02:03.057Z","updated_at":"2023-01-31T17:02:03.057Z","repository_link":"https://github.com/bencevans/tracksix/blob/main/package-lock.json","dependencies":[{"id":7275832008,"package_name":"@eslint/eslintrc","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":7275832009,"package_name":"strip-json-comments","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":7275832010,"package_name":"@humanwhocodes/config-array","ecosystem":"npm","requirements":"0.11.8","direct":false,"kind":"development","optional":false},{"id":7275832011,"package_name":"@humanwhocodes/module-importer","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":7275832012,"package_name":"@humanwhocodes/object-schema","ecosystem":"npm","requirements":"1.2.1","direct":false,"kind":"development","optional":false},{"id":7275832013,"package_name":"@nodelib/fs.scandir","ecosystem":"npm","requirements":"2.1.5","direct":false,"kind":"development","optional":false},{"id":7275832014,"package_name":"@nodelib/fs.stat","ecosystem":"npm","requirements":"2.0.5","direct":false,"kind":"development","optional":false},{"id":7275832015,"package_name":"@nodelib/fs.walk","ecosystem":"npm","requirements":"1.2.8","direct":false,"kind":"development","optional":false},{"id":7275832016,"package_name":"@types/json5","ecosystem":"npm","requirements":"0.0.29","direct":false,"kind":"development","optional":false},{"id":7275832017,"package_name":"acorn","ecosystem":"npm","requirements":"8.8.1","direct":false,"kind":"development","optional":false},{"id":7275832018,"package_name":"acorn-jsx","ecosystem":"npm","requirements":"5.3.2","direct":false,"kind":"development","optional":false},{"id":7275832019,"package_name":"ajv","ecosystem":"npm","requirements":"6.12.6","direct":false,"kind":"development","optional":false},{"id":7275832020,"package_name":"ansi-regex","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":7275832021,"package_name":"ansi-styles","ecosystem":"npm","requirements":"4.3.0","direct":false,"kind":"development","optional":false},{"id":7275832022,"package_name":"argparse","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":7275832023,"package_name":"array-includes","ecosystem":"npm","requirements":"3.1.6","direct":false,"kind":"development","optional":false},{"id":7275832024,"package_name":"array.prototype.flat","ecosystem":"npm","requirements":"1.3.1","direct":false,"kind":"development","optional":false},{"id":7275832025,"package_name":"array.prototype.flatmap","ecosystem":"npm","requirements":"1.3.1","direct":false,"kind":"development","optional":false},{"id":7275832026,"package_name":"array.prototype.tosorted","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":7275832027,"package_name":"balanced-match","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"runtime","optional":false},{"id":7275832028,"package_name":"base64-js","ecosystem":"npm","requirements":"1.5.1","direct":false,"kind":"runtime","optional":false},{"id":7275832029,"package_name":"bl","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"runtime","optional":false},{"id":7275832030,"package_name":"brace-expansion","ecosystem":"npm","requirements":"1.1.11","direct":false,"kind":"runtime","optional":false},{"id":7275832031,"package_name":"buffer","ecosystem":"npm","requirements":"5.7.1","direct":false,"kind":"runtime","optional":false},{"id":7275832032,"package_name":"buffer-from","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"runtime","optional":false},{"id":7275832033,"package_name":"builtins","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":7275832034,"package_name":"call-bind","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":7275832035,"package_name":"callsites","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":7275832036,"package_name":"chalk","ecosystem":"npm","requirements":"4.1.2","direct":false,"kind":"development","optional":false},{"id":7275832037,"package_name":"color-convert","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":7275832038,"package_name":"color-name","ecosystem":"npm","requirements":"1.1.4","direct":false,"kind":"development","optional":false},{"id":7275832039,"package_name":"commist","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"runtime","optional":false},{"id":7275832040,"package_name":"concat-map","ecosystem":"npm","requirements":"0.0.1","direct":false,"kind":"runtime","optional":false},{"id":7275832041,"package_name":"concat-stream","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"runtime","optional":false},{"id":7275832042,"package_name":"cross-spawn","ecosystem":"npm","requirements":"7.0.3","direct":false,"kind":"development","optional":false},{"id":7275832043,"package_name":"debug","ecosystem":"npm","requirements":"4.3.4","direct":false,"kind":"runtime","optional":false},{"id":7275832044,"package_name":"deep-is","ecosystem":"npm","requirements":"0.1.4","direct":false,"kind":"development","optional":false},{"id":7275832045,"package_name":"define-properties","ecosystem":"npm","requirements":"1.1.4","direct":false,"kind":"development","optional":false},{"id":7275832046,"package_name":"doctrine","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":7275832047,"package_name":"duplexify","ecosystem":"npm","requirements":"4.1.2","direct":false,"kind":"runtime","optional":false},{"id":7275832048,"package_name":"end-of-stream","ecosystem":"npm","requirements":"1.4.4","direct":false,"kind":"runtime","optional":false},{"id":7275832049,"package_name":"error-ex","ecosystem":"npm","requirements":"1.3.2","direct":false,"kind":"development","optional":false},{"id":7275832050,"package_name":"es-abstract","ecosystem":"npm","requirements":"1.20.5","direct":false,"kind":"development","optional":false},{"id":7275832051,"package_name":"es-shim-unscopables","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":7275832052,"package_name":"es-to-primitive","ecosystem":"npm","requirements":"1.2.1","direct":false,"kind":"development","optional":false},{"id":7275832053,"package_name":"eslint","ecosystem":"npm","requirements":"8.30.0","direct":false,"kind":"development","optional":false},{"id":7275832054,"package_name":"eslint-config-standard","ecosystem":"npm","requirements":"17.0.0","direct":false,"kind":"development","optional":false},{"id":7275832055,"package_name":"eslint-config-standard-jsx","ecosystem":"npm","requirements":"11.0.0","direct":false,"kind":"development","optional":false},{"id":7275832056,"package_name":"eslint-import-resolver-node","ecosystem":"npm","requirements":"0.3.6","direct":false,"kind":"development","optional":false},{"id":7275832057,"package_name":"debug","ecosystem":"npm","requirements":"3.2.7","direct":false,"kind":"development","optional":false},{"id":7275832058,"package_name":"eslint-module-utils","ecosystem":"npm","requirements":"2.7.4","direct":false,"kind":"development","optional":false},{"id":7275832059,"package_name":"eslint-plugin-es","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":7275832060,"package_name":"eslint-utils","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":7275832061,"package_name":"eslint-visitor-keys","ecosystem":"npm","requirements":"1.3.0","direct":false,"kind":"development","optional":false},{"id":7275832062,"package_name":"eslint-plugin-import","ecosystem":"npm","requirements":"2.26.0","direct":false,"kind":"development","optional":false},{"id":7275832063,"package_name":"debug","ecosystem":"npm","requirements":"2.6.9","direct":false,"kind":"development","optional":false},{"id":7275832064,"package_name":"doctrine","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":7275832065,"package_name":"is-glob","ecosystem":"npm","requirements":"4.0.3","direct":false,"kind":"development","optional":false},{"id":7275832066,"package_name":"ms","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":7275832067,"package_name":"eslint-plugin-n","ecosystem":"npm","requirements":"15.6.0","direct":false,"kind":"development","optional":false},{"id":7275832068,"package_name":"eslint-plugin-promise","ecosystem":"npm","requirements":"6.1.1","direct":false,"kind":"development","optional":false},{"id":7275832069,"package_name":"eslint-plugin-react","ecosystem":"npm","requirements":"7.31.11","direct":false,"kind":"development","optional":false},{"id":7275832070,"package_name":"resolve","ecosystem":"npm","requirements":"2.0.0-next.4","direct":false,"kind":"development","optional":false},{"id":7275832071,"package_name":"semver","ecosystem":"npm","requirements":"6.3.0","direct":false,"kind":"development","optional":false},{"id":7275832072,"package_name":"eslint-scope","ecosystem":"npm","requirements":"7.1.1","direct":false,"kind":"development","optional":false},{"id":7275832073,"package_name":"eslint-utils","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":7275832074,"package_name":"eslint-visitor-keys","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":7275832075,"package_name":"eslint-visitor-keys","ecosystem":"npm","requirements":"3.3.0","direct":false,"kind":"development","optional":false},{"id":7275832076,"package_name":"escape-string-regexp","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":7275832077,"package_name":"find-up","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":7275832078,"package_name":"glob-parent","ecosystem":"npm","requirements":"6.0.2","direct":false,"kind":"development","optional":false},{"id":7275832079,"package_name":"locate-path","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":7275832080,"package_name":"p-limit","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":7275832081,"package_name":"p-locate","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":7275832082,"package_name":"espree","ecosystem":"npm","requirements":"9.4.1","direct":false,"kind":"development","optional":false},{"id":7275832083,"package_name":"esquery","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":7275832084,"package_name":"esrecurse","ecosystem":"npm","requirements":"4.3.0","direct":false,"kind":"development","optional":false},{"id":7275832085,"package_name":"estraverse","ecosystem":"npm","requirements":"5.3.0","direct":false,"kind":"development","optional":false},{"id":7275832086,"package_name":"esutils","ecosystem":"npm","requirements":"2.0.3","direct":false,"kind":"development","optional":false},{"id":7275832087,"package_name":"fast-deep-equal","ecosystem":"npm","requirements":"3.1.3","direct":false,"kind":"development","optional":false},{"id":7275832088,"package_name":"fast-json-stable-stringify","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":7275832089,"package_name":"fast-levenshtein","ecosystem":"npm","requirements":"2.0.6","direct":false,"kind":"development","optional":false},{"id":7275832090,"package_name":"fastq","ecosystem":"npm","requirements":"1.14.0","direct":false,"kind":"development","optional":false},{"id":7275832091,"package_name":"file-entry-cache","ecosystem":"npm","requirements":"6.0.1","direct":false,"kind":"development","optional":false},{"id":7275832092,"package_name":"flat-cache","ecosystem":"npm","requirements":"3.0.4","direct":false,"kind":"development","optional":false},{"id":7275832093,"package_name":"flatted","ecosystem":"npm","requirements":"3.2.7","direct":false,"kind":"development","optional":false},{"id":7275832094,"package_name":"fs.realpath","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":7275832095,"package_name":"function-bind","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":7275832096,"package_name":"function.prototype.name","ecosystem":"npm","requirements":"1.1.5","direct":false,"kind":"development","optional":false},{"id":7275832097,"package_name":"functions-have-names","ecosystem":"npm","requirements":"1.2.3","direct":false,"kind":"development","optional":false},{"id":7275832098,"package_name":"get-intrinsic","ecosystem":"npm","requirements":"1.1.3","direct":false,"kind":"development","optional":false},{"id":7275832099,"package_name":"get-stdin","ecosystem":"npm","requirements":"8.0.0","direct":false,"kind":"development","optional":false},{"id":7275832100,"package_name":"get-symbol-description","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":7275832101,"package_name":"glob","ecosystem":"npm","requirements":"7.2.3","direct":false,"kind":"runtime","optional":false},{"id":7275832102,"package_name":"globals","ecosystem":"npm","requirements":"13.19.0","direct":false,"kind":"development","optional":false},{"id":7275832103,"package_name":"type-fest","ecosystem":"npm","requirements":"0.20.2","direct":false,"kind":"development","optional":false},{"id":7275832104,"package_name":"gopd","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":7275832105,"package_name":"graceful-fs","ecosystem":"npm","requirements":"4.2.10","direct":false,"kind":"development","optional":false},{"id":7275832106,"package_name":"grapheme-splitter","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":7275832107,"package_name":"has","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":7275832108,"package_name":"has-bigints","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":7275832109,"package_name":"has-flag","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":7275832110,"package_name":"has-property-descriptors","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":7275832111,"package_name":"has-symbols","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":7275832112,"package_name":"has-tostringtag","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":7275832113,"package_name":"help-me","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"runtime","optional":false},{"id":7275832114,"package_name":"ieee754","ecosystem":"npm","requirements":"1.2.1","direct":false,"kind":"runtime","optional":false},{"id":7275832115,"package_name":"ignore","ecosystem":"npm","requirements":"5.2.4","direct":false,"kind":"development","optional":false},{"id":7275832116,"package_name":"import-fresh","ecosystem":"npm","requirements":"3.3.0","direct":false,"kind":"development","optional":false},{"id":7275832117,"package_name":"resolve-from","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":7275832118,"package_name":"imurmurhash","ecosystem":"npm","requirements":"0.1.4","direct":false,"kind":"development","optional":false},{"id":7275832119,"package_name":"inflight","ecosystem":"npm","requirements":"1.0.6","direct":false,"kind":"runtime","optional":false},{"id":7275832120,"package_name":"inherits","ecosystem":"npm","requirements":"2.0.4","direct":false,"kind":"runtime","optional":false},{"id":7275832121,"package_name":"internal-slot","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":7275832122,"package_name":"is-arrayish","ecosystem":"npm","requirements":"0.2.1","direct":false,"kind":"development","optional":false},{"id":7275832123,"package_name":"is-bigint","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":7275832124,"package_name":"is-boolean-object","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"development","optional":false},{"id":7275832125,"package_name":"is-callable","ecosystem":"npm","requirements":"1.2.7","direct":false,"kind":"development","optional":false},{"id":7275832127,"package_name":"is-core-module","ecosystem":"npm","requirements":"2.11.0","direct":false,"kind":"development","optional":false},{"id":7275832128,"package_name":"is-date-object","ecosystem":"npm","requirements":"1.0.5","direct":false,"kind":"development","optional":false},{"id":7275832129,"package_name":"is-extglob","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":7275832132,"package_name":"is-negative-zero","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":7275832134,"package_name":"is-number-object","ecosystem":"npm","requirements":"1.0.7","direct":false,"kind":"development","optional":false},{"id":7275832136,"package_name":"is-path-inside","ecosystem":"npm","requirements":"3.0.3","direct":false,"kind":"development","optional":false},{"id":7275832138,"package_name":"is-regex","ecosystem":"npm","requirements":"1.1.4","direct":false,"kind":"development","optional":false},{"id":7275832140,"package_name":"is-shared-array-buffer","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":7275832142,"package_name":"is-string","ecosystem":"npm","requirements":"1.0.7","direct":false,"kind":"development","optional":false},{"id":7275832144,"package_name":"is-symbol","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":7275832146,"package_name":"is-weakref","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":7275832147,"package_name":"isexe","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":7275832148,"package_name":"js-sdsl","ecosystem":"npm","requirements":"4.2.0","direct":false,"kind":"development","optional":false},{"id":7275832150,"package_name":"js-tokens","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":7275832151,"package_name":"js-yaml","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":7275832152,"package_name":"json-parse-better-errors","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":7275832154,"package_name":"json-schema-traverse","ecosystem":"npm","requirements":"0.4.1","direct":false,"kind":"development","optional":false},{"id":7275832156,"package_name":"json-stable-stringify-without-jsonify","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":7275832158,"package_name":"json5","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":7275832161,"package_name":"jsx-ast-utils","ecosystem":"npm","requirements":"3.3.3","direct":false,"kind":"development","optional":false},{"id":7275832163,"package_name":"leven","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"runtime","optional":false},{"id":7275832166,"package_name":"levn","ecosystem":"npm","requirements":"0.4.1","direct":false,"kind":"development","optional":false},{"id":7275832168,"package_name":"lodash.merge","ecosystem":"npm","requirements":"4.6.2","direct":false,"kind":"development","optional":false},{"id":7275832172,"package_name":"loose-envify","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":7275832175,"package_name":"lru-cache","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"runtime","optional":false},{"id":7275832177,"package_name":"minimatch","ecosystem":"npm","requirements":"3.1.2","direct":false,"kind":"runtime","optional":false},{"id":7275832180,"package_name":"minimist","ecosystem":"npm","requirements":"1.2.7","direct":false,"kind":"runtime","optional":false},{"id":7275832182,"package_name":"mqtt","ecosystem":"npm","requirements":"4.3.7","direct":false,"kind":"runtime","optional":false},{"id":7275832184,"package_name":"mqtt-packet","ecosystem":"npm","requirements":"6.10.0","direct":false,"kind":"runtime","optional":false},{"id":7275832186,"package_name":"ms","ecosystem":"npm","requirements":"2.1.2","direct":false,"kind":"runtime","optional":false},{"id":7275832188,"package_name":"natural-compare","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":7275832190,"package_name":"node-gpsd","ecosystem":"npm","requirements":"0.3.4","direct":false,"kind":"runtime","optional":false},{"id":7275832204,"package_name":"number-allocator","ecosystem":"npm","requirements":"1.0.12","direct":false,"kind":"runtime","optional":false},{"id":7275832207,"package_name":"js-sdsl","ecosystem":"npm","requirements":"4.1.4","direct":false,"kind":"runtime","optional":false},{"id":7275832208,"package_name":"object-assign","ecosystem":"npm","requirements":"4.1.1","direct":false,"kind":"development","optional":false},{"id":7275832211,"package_name":"object-inspect","ecosystem":"npm","requirements":"1.12.2","direct":false,"kind":"development","optional":false},{"id":7275832213,"package_name":"object-keys","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":7275832215,"package_name":"object.assign","ecosystem":"npm","requirements":"4.1.4","direct":false,"kind":"development","optional":false},{"id":7275832216,"package_name":"object.entries","ecosystem":"npm","requirements":"1.1.6","direct":false,"kind":"development","optional":false},{"id":7275832218,"package_name":"object.fromentries","ecosystem":"npm","requirements":"2.0.6","direct":false,"kind":"development","optional":false},{"id":7275832219,"package_name":"object.hasown","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"development","optional":false},{"id":7275832221,"package_name":"object.values","ecosystem":"npm","requirements":"1.1.6","direct":false,"kind":"development","optional":false},{"id":7275832223,"package_name":"once","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"runtime","optional":false},{"id":7275832225,"package_name":"optionator","ecosystem":"npm","requirements":"0.9.1","direct":false,"kind":"development","optional":false},{"id":7275832227,"package_name":"p-limit","ecosystem":"npm","requirements":"2.3.0","direct":false,"kind":"development","optional":false},{"id":7275832229,"package_name":"p-try","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":7275832231,"package_name":"parent-module","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":7275832233,"package_name":"path-exists","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":7275832235,"package_name":"path-is-absolute","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"runtime","optional":false},{"id":7275832237,"package_name":"path-key","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":7275832239,"package_name":"path-parse","ecosystem":"npm","requirements":"1.0.7","direct":false,"kind":"development","optional":false},{"id":7275832241,"package_name":"prelude-ls","ecosystem":"npm","requirements":"1.2.1","direct":false,"kind":"development","optional":false},{"id":7275832244,"package_name":"process-nextick-args","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"runtime","optional":false},{"id":7275832246,"package_name":"prop-types","ecosystem":"npm","requirements":"15.8.1","direct":false,"kind":"development","optional":false},{"id":7275832249,"package_name":"pump","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"runtime","optional":false},{"id":7275832250,"package_name":"punycode","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":7275832252,"package_name":"queue-microtask","ecosystem":"npm","requirements":"1.2.3","direct":false,"kind":"development","optional":false},{"id":7275832254,"package_name":"react-is","ecosystem":"npm","requirements":"16.13.1","direct":false,"kind":"development","optional":false},{"id":7275832256,"package_name":"readable-stream","ecosystem":"npm","requirements":"3.6.0","direct":false,"kind":"runtime","optional":false},{"id":7275832258,"package_name":"regexp.prototype.flags","ecosystem":"npm","requirements":"1.4.3","direct":false,"kind":"development","optional":false},{"id":7275832260,"package_name":"regexpp","ecosystem":"npm","requirements":"3.2.0","direct":false,"kind":"development","optional":false},{"id":7275832262,"package_name":"reinterval","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"runtime","optional":false},{"id":7275832263,"package_name":"resolve","ecosystem":"npm","requirements":"1.22.1","direct":false,"kind":"development","optional":false},{"id":7275832264,"package_name":"reusify","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":7275832265,"package_name":"rfdc","ecosystem":"npm","requirements":"1.3.0","direct":false,"kind":"runtime","optional":false},{"id":7275832266,"package_name":"rimraf","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":7275832267,"package_name":"run-parallel","ecosystem":"npm","requirements":"1.2.0","direct":false,"kind":"development","optional":false},{"id":7275832268,"package_name":"safe-buffer","ecosystem":"npm","requirements":"5.1.2","direct":false,"kind":"runtime","optional":false},{"id":7275832269,"package_name":"safe-regex-test","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":7275832270,"package_name":"semver","ecosystem":"npm","requirements":"7.3.8","direct":false,"kind":"development","optional":false},{"id":7275832271,"package_name":"shebang-command","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":7275832272,"package_name":"shebang-regex","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":7275832273,"package_name":"side-channel","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":7275832274,"package_name":"split2","ecosystem":"npm","requirements":"3.2.2","direct":false,"kind":"runtime","optional":false},{"id":7275832275,"package_name":"standard","ecosystem":"npm","requirements":"17.0.0","direct":false,"kind":"development","optional":false},{"id":7275832276,"package_name":"standard-engine","ecosystem":"npm","requirements":"15.0.0","direct":false,"kind":"development","optional":false},{"id":7275832277,"package_name":"find-up","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":7275832278,"package_name":"load-json-file","ecosystem":"npm","requirements":"5.3.0","direct":false,"kind":"development","optional":false},{"id":7275832279,"package_name":"locate-path","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":7275832280,"package_name":"p-locate","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":7275832281,"package_name":"parse-json","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":7275832282,"package_name":"path-exists","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":7275832283,"package_name":"pify","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":7275832284,"package_name":"pkg-conf","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":7275832285,"package_name":"type-fest","ecosystem":"npm","requirements":"0.3.1","direct":false,"kind":"development","optional":false},{"id":7275832286,"package_name":"stream-shift","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"runtime","optional":false},{"id":7275832287,"package_name":"string_decoder","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"runtime","optional":false},{"id":7275832288,"package_name":"string.prototype.matchall","ecosystem":"npm","requirements":"4.0.8","direct":false,"kind":"development","optional":false},{"id":7275832289,"package_name":"string.prototype.trimend","ecosystem":"npm","requirements":"1.0.6","direct":false,"kind":"development","optional":false},{"id":7275832290,"package_name":"string.prototype.trimstart","ecosystem":"npm","requirements":"1.0.6","direct":false,"kind":"development","optional":false},{"id":7275832291,"package_name":"strip-ansi","ecosystem":"npm","requirements":"6.0.1","direct":false,"kind":"development","optional":false},{"id":7275832292,"package_name":"strip-bom","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":7275832293,"package_name":"supports-color","ecosystem":"npm","requirements":"7.2.0","direct":false,"kind":"development","optional":false},{"id":7275832294,"package_name":"supports-preserve-symlinks-flag","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":7275832295,"package_name":"text-table","ecosystem":"npm","requirements":"0.2.0","direct":false,"kind":"development","optional":false},{"id":7275832296,"package_name":"throttle-end","ecosystem":"npm","requirements":"0.0.1","direct":false,"kind":"runtime","optional":false},{"id":7275832309,"package_name":"tsconfig-paths","ecosystem":"npm","requirements":"3.14.1","direct":false,"kind":"development","optional":false},{"id":7275832311,"package_name":"type-check","ecosystem":"npm","requirements":"0.4.0","direct":false,"kind":"development","optional":false},{"id":7275832313,"package_name":"typedarray","ecosystem":"npm","requirements":"0.0.6","direct":false,"kind":"runtime","optional":false},{"id":7275832315,"package_name":"unbox-primitive","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":7275832316,"package_name":"uri-js","ecosystem":"npm","requirements":"4.4.1","direct":false,"kind":"development","optional":false},{"id":7275832318,"package_name":"util-deprecate","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"runtime","optional":false},{"id":7275832320,"package_name":"which","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":7275832323,"package_name":"which-boxed-primitive","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":7275832325,"package_name":"word-wrap","ecosystem":"npm","requirements":"1.2.3","direct":false,"kind":"development","optional":false},{"id":7275832327,"package_name":"wrappy","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"runtime","optional":false},{"id":7275832329,"package_name":"ws","ecosystem":"npm","requirements":"7.5.9","direct":false,"kind":"runtime","optional":false},{"id":7275832330,"package_name":"xdg-basedir","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":7275832331,"package_name":"xtend","ecosystem":"npm","requirements":"4.0.2","direct":false,"kind":"runtime","optional":false},{"id":7275832332,"package_name":"yallist","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"runtime","optional":false},{"id":7275832333,"package_name":"yocto-queue","ecosystem":"npm","requirements":"0.1.0","direct":false,"kind":"development","optional":false}]}],"score":6.784457062637643,"created_at":"2025-09-09T00:10:47.848Z","updated_at":"2025-10-07T08:35:58.114Z","avatar_url":"https://github.com/bencevans.png","language":"JavaScript","category":null,"sub_category":null,"monthly_downloads":11,"funding_links":["https://github.com/sponsors/bencevans","https://buymeacoffee.com/bencevans"],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["charts","transformers","sequences","interactive","zsh-plugin","embedded","productivity","archival","community","exports"],"project_url":"https://science.ecosyste.ms/api/v1/projects/140815","html_url":"https://science.ecosyste.ms/projects/140815"}