{"id":369235,"url":"https://github.com/gr2m/before-after-hook","last_synced_at":"2026-08-24T12:32:56.389Z","repository":{"id":13973744,"uuid":"75477357","full_name":"gr2m/before-after-hook","owner":"gr2m","description":"wrap methods with before/after hooks","archived":false,"fork":false,"pushed_at":"2026-04-03T20:19:32.000Z","size":993,"stargazers_count":83,"open_issues_count":3,"forks_count":24,"subscribers_count":4,"default_branch":"main","last_synced_at":"2026-07-22T18:21:58.777Z","etag":null,"topics":["api","async","asynchronous","events","hooks","promise"],"latest_commit_sha":null,"homepage":"http://npm.im/before-after-hook","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gr2m.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":".github/SECURITY.md","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},"funding":{"github":"gr2m"}},"created_at":"2016-12-03T14:06:52.000Z","updated_at":"2026-04-28T04:47:06.000Z","dependencies_parsed_at":"2024-11-13T04:00:56.003Z","dependency_job_id":"efeb85c3-f0c6-437c-a6ed-d3e3fe85493c","html_url":"https://github.com/gr2m/before-after-hook","commit_stats":{"total_commits":153,"total_committers":12,"mean_commits":12.75,"dds":0.5816993464052287,"last_synced_commit":"a5b7b583447b86befeb749555e7824b0f6bd6958"},"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"purl":"pkg:github/gr2m/before-after-hook","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gr2m","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/sbom","scorecard":{"id":442864,"data":{"date":"2025-08-11","repo":{"name":"github.com/gr2m/before-after-hook","commit":"37b8490c5a69a6e732799972887e5c8748515040"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.2,"checks":[{"name":"Code-Review","score":1,"reason":"Found 3/16 approved changesets -- score normalized to 1","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":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: .github/SECURITY.md:1","Info: Found linked content: .github/SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: .github/SECURITY.md:1","Info: Found text in security policy: .github/SECURITY.md:1"],"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":"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":"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":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Pinned-Dependencies","score":5,"reason":"dependency not pinned by hash detected -- score normalized to 5","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/update-prettier.yml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/update-prettier.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/update-prettier.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/update-prettier.yml/main?enable=pin","Info:   0 out of  10 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   2 third-party GitHubAction dependencies pinned","Info:   4 out of   4 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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/release.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1","Warn: no topLevel permission defined: .github/workflows/update-prettier.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":"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":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"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":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"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":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/release.yml:10"],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 21 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-19T05:57:06.312Z","repository_id":13973744,"created_at":"2025-08-19T05:57:06.312Z","updated_at":"2025-08-19T05:57:06.312Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36326259,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-08-06T02:00:07.852Z","response_time":54,"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":"gr2m","name":"Gregor Martynus","uuid":"39992","kind":"user","description":"Staff Engineer at @GitHub","email":"","website":"https://dev.to/gr2m","location":"Los Angeles","twitter":"gr2m","company":"@github @octokit @octoherd @probot @nock @semantic-release @AllContributors","icon_url":"https://avatars.githubusercontent.com/u/39992?u=1ee38610bb2d8a082b3e84db7ecacf78149d061b\u0026v=4","repositories_count":505,"last_synced_at":"2024-10-29T17:10:24.699Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/gr2m","funding_links":["https://github.com/sponsors/gr2m"],"total_stars":3182,"followers":1532,"following":6,"created_at":"2022-11-02T16:25:20.838Z","updated_at":"2024-10-29T17:10:24.699Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gr2m","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gr2m/repositories"},"packages":[{"id":4997348,"name":"org.webjars.npm:before-after-hook","ecosystem":"maven","description":"WebJar for before-after-hook","homepage":"https://www.webjars.org","licenses":"Apache-2.0","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/gr2m/before-after-hook","keywords_array":[],"namespace":"org.webjars.npm","versions_count":7,"first_release_published_at":"2019-04-02T10:57:57.000Z","latest_release_published_at":"2025-07-06T03:45:44.000Z","latest_release_number":"3.0.2","last_synced_at":"2026-08-23T12:03:58.810Z","created_at":"2022-07-27T10:52:03.168Z","updated_at":"2026-08-23T12:03:58.810Z","registry_url":"https://central.sonatype.com/artifact/org.webjars.npm/before-after-hook/","install_command":null,"documentation_url":"https://appdoc.app/artifact/org.webjars.npm/before-after-hook/","metadata":{"repositories":["https://repo.maven.apache.org/maven2"]},"repo_metadata":{"id":13973744,"uuid":"75477357","full_name":"gr2m/before-after-hook","owner":"gr2m","description":"wrap methods with before/after hooks","archived":false,"fork":false,"pushed_at":"2026-04-03T20:19:32.000Z","size":993,"stargazers_count":83,"open_issues_count":3,"forks_count":24,"subscribers_count":4,"default_branch":"main","last_synced_at":"2026-07-22T18:21:58.777Z","etag":null,"topics":["api","async","asynchronous","events","hooks","promise"],"latest_commit_sha":null,"homepage":"http://npm.im/before-after-hook","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gr2m.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":".github/SECURITY.md","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},"funding":{"github":"gr2m"}},"created_at":"2016-12-03T14:06:52.000Z","updated_at":"2026-04-28T04:47:06.000Z","dependencies_parsed_at":"2024-11-13T04:00:56.003Z","dependency_job_id":"efeb85c3-f0c6-437c-a6ed-d3e3fe85493c","html_url":"https://github.com/gr2m/before-after-hook","commit_stats":{"total_commits":153,"total_committers":12,"mean_commits":12.75,"dds":0.5816993464052287,"last_synced_commit":"a5b7b583447b86befeb749555e7824b0f6bd6958"},"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"purl":"pkg:github/gr2m/before-after-hook","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gr2m","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/sbom","scorecard":{"id":442864,"data":{"date":"2025-08-11","repo":{"name":"github.com/gr2m/before-after-hook","commit":"37b8490c5a69a6e732799972887e5c8748515040"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.2,"checks":[{"name":"Code-Review","score":1,"reason":"Found 3/16 approved changesets -- score normalized to 1","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":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: .github/SECURITY.md:1","Info: Found linked content: .github/SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: .github/SECURITY.md:1","Info: Found text in security policy: .github/SECURITY.md:1"],"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":"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":"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":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Pinned-Dependencies","score":5,"reason":"dependency not pinned by hash detected -- score normalized to 5","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/update-prettier.yml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/update-prettier.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/update-prettier.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/update-prettier.yml/main?enable=pin","Info:   0 out of  10 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   2 third-party GitHubAction dependencies pinned","Info:   4 out of   4 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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/release.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1","Warn: no topLevel permission defined: .github/workflows/update-prettier.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":"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":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"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":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"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":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/release.yml:10"],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 21 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-19T05:57:06.312Z","repository_id":13973744,"created_at":"2025-08-19T05:57:06.312Z","updated_at":"2025-08-19T05:57:06.312Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36326259,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-08-06T02:00:07.852Z","response_time":54,"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":"gr2m","name":"Gregor Martynus","uuid":"39992","kind":"user","description":"Staff Engineer at @GitHub","email":"","website":"https://dev.to/gr2m","location":"Los Angeles","twitter":"gr2m","company":"@github @octokit @octoherd @probot @nock @semantic-release @AllContributors","icon_url":"https://avatars.githubusercontent.com/u/39992?u=1ee38610bb2d8a082b3e84db7ecacf78149d061b\u0026v=4","repositories_count":505,"last_synced_at":"2024-10-29T17:10:24.699Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/gr2m","funding_links":["https://github.com/sponsors/gr2m"],"total_stars":3182,"followers":1532,"following":6,"created_at":"2022-11-02T16:25:20.838Z","updated_at":"2024-10-29T17:10:24.699Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gr2m","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gr2m/repositories"},"tags":[{"name":"v4.0.0","sha":"37b8490c5a69a6e732799972887e5c8748515040","kind":"commit","published_at":"2025-05-12T22:37:05.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v4.0.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v4.0.0/manifests"},{"name":"v3.0.2","sha":"42497f5727952ea7d789d40b6b20d0b3bd0cda86","kind":"commit","published_at":"2022-10-06T23:43:34.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v3.0.2","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"1e494892c2248a10bdb85ae1ae5086b1b35afc2b","kind":"commit","published_at":"2022-10-04T21:57:41.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v3.0.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"826603301a76de8f39c3812898c722466a793520","kind":"commit","published_at":"2022-10-04T21:54:33.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v3.0.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.0/manifests"},{"name":"v2.2.3","sha":"445b99d66938425ca6b3693311feede456448576","kind":"commit","published_at":"2022-10-04T00:19:00.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.2.3","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.3/manifests"},{"name":"v2.2.2","sha":"f237b9665e594c50a6fdd2ed3c26ef8a919796cc","kind":"commit","published_at":"2021-06-04T22:02:52.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.2.2","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.2/manifests"},{"name":"v2.2.1","sha":"45d19213bc085f08178a52fdac154e163f24688e","kind":"commit","published_at":"2021-04-05T00:43:52.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.2.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.1/manifests"},{"name":"v2.2.0","sha":"2cd95c7afbb07e300707d19ee3127878d7941bba","kind":"commit","published_at":"2021-03-05T21:34:40.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.2.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.0/manifests"},{"name":"v2.1.1","sha":"b86c975bd6584e64f4ab1c780f2e24346168007d","kind":"commit","published_at":"2021-01-31T21:41:25.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.1.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.1.1/manifests"},{"name":"v2.1.0","sha":"e57c123b1d977ea143a275e9d73cabcdf45403ee","kind":"commit","published_at":"2019-07-12T21:19:49.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.1.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.1.0/manifests"},{"name":"v2.0.1","sha":"4f55cbe3c10c47f6dc13d4b306ed9e2a342279b9","kind":"commit","published_at":"2019-07-09T21:21:22.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.0.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.0.1/manifests"},{"name":"v2.0.0","sha":"ea514aef701a5a32b1067ab0c4a7beaa48949488","kind":"commit","published_at":"2019-07-09T20:57:10.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.0.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.0.0/manifests"},{"name":"v1.4.0","sha":"3f630e16d7ae3afb405960ae151fb8fd806fdbfe","kind":"commit","published_at":"2019-03-04T18:07:32.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.4.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.4.0/manifests"},{"name":"v1.3.2","sha":"95315481c1c095ea3a6edf376b57db2147f2290b","kind":"commit","published_at":"2019-01-11T22:33:32.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.3.2","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.2/manifests"},{"name":"v1.3.1","sha":"ff2268440807a1731b6bbc9a91c9835bfccf4f81","kind":"commit","published_at":"2018-12-29T19:42:03.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.3.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.1/manifests"},{"name":"v1.3.0","sha":"06293c18f07131026ccf144012a12167dd90140e","kind":"commit","published_at":"2018-12-27T17:13:31.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.3.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"933ca1c540672a86535c509b0120a7fcd43a53ce","kind":"commit","published_at":"2018-10-31T17:58:49.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.2.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"9d76b1249baf2c31c668a77fe9b3d3020a601087","kind":"commit","published_at":"2018-01-16T06:57:57.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.1.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.1.0/manifests"},{"name":"v1.0.2","sha":"5ea4df0f3f5145e103a492b5a23c2407272d9869","kind":"commit","published_at":"2018-01-16T05:53:58.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.0.2","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.2/manifests"},{"name":"v1.0.1","sha":"b75f481dfa3ec9d7e21c8a3b1ea58519ed2d381b","kind":"commit","published_at":"2016-12-10T14:47:02.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.0.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.1/manifests"},{"name":"v1.0.0","sha":"a9fe5f1ce4363969f376bcb50fe7ca123bb224ef","kind":"commit","published_at":"2016-12-07T17:37:18.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.0.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.0/manifests"}]},"repo_metadata_updated_at":"2026-08-20T11:02:48.564Z","dependent_packages_count":2,"downloads":null,"downloads_period":null,"dependent_repos_count":1,"rankings":{"downloads":null,"dependent_repos_count":20.77217587716312,"dependent_packages_count":23.155264180186386,"stargazers_count":29.439480650548468,"forks_count":33.20744742628065,"docker_downloads_count":null,"average":26.643592033544657},"purl":"pkg:maven/org.webjars.npm/before-after-hook","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/maven/org.webjars.npm:before-after-hook","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/maven/org.webjars.npm:before-after-hook","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/maven/org.webjars.npm:before-after-hook/dependencies","status":null,"funding_links":["https://github.com/sponsors/gr2m"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-19T10:01:23.787Z","issues_count":30,"pull_requests_count":82,"avg_time_to_close_issue":2243431.214285714,"avg_time_to_close_pull_request":940834.3827160494,"issues_closed_count":28,"pull_requests_closed_count":81,"pull_request_authors_count":15,"issue_authors_count":9,"avg_comments_per_issue":2.066666666666667,"avg_comments_per_pull_request":1.5365853658536586,"merged_pull_requests_count":70,"bot_issues_count":21,"bot_pull_requests_count":47,"past_year_issues_count":2,"past_year_pull_requests_count":4,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":417793.6666666667,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":1.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":1,"past_year_bot_pull_requests_count":3,"past_year_merged_pull_requests_count":3,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/issues","maintainers":[{"login":"gr2m","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gr2m"},{"login":"JasonEtco","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/JasonEtco"}],"active_maintainers":[{"login":"gr2m","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gr2m"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:before-after-hook/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:before-after-hook/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:before-after-hook/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:before-after-hook/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:before-after-hook/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages/org.webjars.npm:before-after-hook/codemeta","maintainers":[],"registry":{"name":"repo1.maven.org","url":"https://maven-central.storage-download.googleapis.com/maven2","ecosystem":"maven","default":true,"packages_count":617985,"maintainers_count":0,"namespaces_count":82109,"keywords_count":36586,"github":"maven-central","metadata":{"funded_packages_count":47727,"rate_limit":2},"icon_url":"https://github.com/maven-central.png","created_at":"2022-07-21T16:40:13.074Z","updated_at":"2026-08-24T05:04:02.273Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/repo1.maven.org/namespaces"}},{"id":1466127,"name":"before-after-hook","ecosystem":"npm","description":"asynchronous before/error/after hooks for internal functionality","homepage":"https://github.com/gr2m/before-after-hook#readme","licenses":"Apache-2.0","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/gr2m/before-after-hook","keywords_array":["hook","hooks","api"],"namespace":null,"versions_count":21,"first_release_published_at":"2016-12-07T17:38:49.470Z","latest_release_published_at":"2025-05-12T22:37:33.860Z","latest_release_number":"4.0.0","last_synced_at":"2026-08-22T12:04:28.859Z","created_at":"2022-04-09T02:11:59.538Z","updated_at":"2026-08-22T14:12:16.262Z","registry_url":"https://www.npmjs.com/package/before-after-hook","install_command":"npm install before-after-hook","documentation_url":null,"metadata":{"funding":null,"dist-tags":{"latest":"4.0.0"},"contentPolicy":null},"repo_metadata":{"id":13973744,"uuid":"75477357","full_name":"gr2m/before-after-hook","owner":"gr2m","description":"wrap methods with before/after hooks","archived":false,"fork":false,"pushed_at":"2026-04-03T20:19:32.000Z","size":993,"stargazers_count":83,"open_issues_count":3,"forks_count":24,"subscribers_count":4,"default_branch":"main","last_synced_at":"2026-07-22T18:21:58.777Z","etag":null,"topics":["api","async","asynchronous","events","hooks","promise"],"latest_commit_sha":null,"homepage":"http://npm.im/before-after-hook","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gr2m.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":".github/SECURITY.md","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},"funding":{"github":"gr2m"}},"created_at":"2016-12-03T14:06:52.000Z","updated_at":"2026-04-28T04:47:06.000Z","dependencies_parsed_at":"2024-11-13T04:00:56.003Z","dependency_job_id":"efeb85c3-f0c6-437c-a6ed-d3e3fe85493c","html_url":"https://github.com/gr2m/before-after-hook","commit_stats":{"total_commits":153,"total_committers":12,"mean_commits":12.75,"dds":0.5816993464052287,"last_synced_commit":"a5b7b583447b86befeb749555e7824b0f6bd6958"},"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"purl":"pkg:github/gr2m/before-after-hook","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gr2m","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/sbom","scorecard":{"id":442864,"data":{"date":"2025-08-11","repo":{"name":"github.com/gr2m/before-after-hook","commit":"37b8490c5a69a6e732799972887e5c8748515040"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.2,"checks":[{"name":"Code-Review","score":1,"reason":"Found 3/16 approved changesets -- score normalized to 1","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":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: .github/SECURITY.md:1","Info: Found linked content: .github/SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: .github/SECURITY.md:1","Info: Found text in security policy: .github/SECURITY.md:1"],"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":"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":"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":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Pinned-Dependencies","score":5,"reason":"dependency not pinned by hash detected -- score normalized to 5","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/update-prettier.yml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/update-prettier.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/update-prettier.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/update-prettier.yml/main?enable=pin","Info:   0 out of  10 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   2 third-party GitHubAction dependencies pinned","Info:   4 out of   4 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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/release.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1","Warn: no topLevel permission defined: .github/workflows/update-prettier.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":"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":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"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":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"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":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/release.yml:10"],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 21 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-19T05:57:06.312Z","repository_id":13973744,"created_at":"2025-08-19T05:57:06.312Z","updated_at":"2025-08-19T05:57:06.312Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36326259,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-08-06T02:00:07.852Z","response_time":54,"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":"gr2m","name":"Gregor Martynus","uuid":"39992","kind":"user","description":"Staff Engineer at @GitHub","email":"","website":"https://dev.to/gr2m","location":"Los Angeles","twitter":"gr2m","company":"@github @octokit @octoherd @probot @nock @semantic-release @AllContributors","icon_url":"https://avatars.githubusercontent.com/u/39992?u=1ee38610bb2d8a082b3e84db7ecacf78149d061b\u0026v=4","repositories_count":505,"last_synced_at":"2024-10-29T17:10:24.699Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/gr2m","funding_links":["https://github.com/sponsors/gr2m"],"total_stars":3182,"followers":1532,"following":6,"created_at":"2022-11-02T16:25:20.838Z","updated_at":"2024-10-29T17:10:24.699Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gr2m","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gr2m/repositories"},"tags":[{"name":"v4.0.0","sha":"37b8490c5a69a6e732799972887e5c8748515040","kind":"commit","published_at":"2025-05-12T22:37:05.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v4.0.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v4.0.0/manifests"},{"name":"v3.0.2","sha":"42497f5727952ea7d789d40b6b20d0b3bd0cda86","kind":"commit","published_at":"2022-10-06T23:43:34.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v3.0.2","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"1e494892c2248a10bdb85ae1ae5086b1b35afc2b","kind":"commit","published_at":"2022-10-04T21:57:41.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v3.0.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"826603301a76de8f39c3812898c722466a793520","kind":"commit","published_at":"2022-10-04T21:54:33.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v3.0.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.0/manifests"},{"name":"v2.2.3","sha":"445b99d66938425ca6b3693311feede456448576","kind":"commit","published_at":"2022-10-04T00:19:00.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.2.3","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.3/manifests"},{"name":"v2.2.2","sha":"f237b9665e594c50a6fdd2ed3c26ef8a919796cc","kind":"commit","published_at":"2021-06-04T22:02:52.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.2.2","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.2/manifests"},{"name":"v2.2.1","sha":"45d19213bc085f08178a52fdac154e163f24688e","kind":"commit","published_at":"2021-04-05T00:43:52.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.2.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.1/manifests"},{"name":"v2.2.0","sha":"2cd95c7afbb07e300707d19ee3127878d7941bba","kind":"commit","published_at":"2021-03-05T21:34:40.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.2.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.0/manifests"},{"name":"v2.1.1","sha":"b86c975bd6584e64f4ab1c780f2e24346168007d","kind":"commit","published_at":"2021-01-31T21:41:25.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.1.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.1.1/manifests"},{"name":"v2.1.0","sha":"e57c123b1d977ea143a275e9d73cabcdf45403ee","kind":"commit","published_at":"2019-07-12T21:19:49.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.1.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.1.0/manifests"},{"name":"v2.0.1","sha":"4f55cbe3c10c47f6dc13d4b306ed9e2a342279b9","kind":"commit","published_at":"2019-07-09T21:21:22.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.0.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.0.1/manifests"},{"name":"v2.0.0","sha":"ea514aef701a5a32b1067ab0c4a7beaa48949488","kind":"commit","published_at":"2019-07-09T20:57:10.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.0.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.0.0/manifests"},{"name":"v1.4.0","sha":"3f630e16d7ae3afb405960ae151fb8fd806fdbfe","kind":"commit","published_at":"2019-03-04T18:07:32.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.4.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.4.0/manifests"},{"name":"v1.3.2","sha":"95315481c1c095ea3a6edf376b57db2147f2290b","kind":"commit","published_at":"2019-01-11T22:33:32.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.3.2","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.2/manifests"},{"name":"v1.3.1","sha":"ff2268440807a1731b6bbc9a91c9835bfccf4f81","kind":"commit","published_at":"2018-12-29T19:42:03.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.3.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.1/manifests"},{"name":"v1.3.0","sha":"06293c18f07131026ccf144012a12167dd90140e","kind":"commit","published_at":"2018-12-27T17:13:31.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.3.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"933ca1c540672a86535c509b0120a7fcd43a53ce","kind":"commit","published_at":"2018-10-31T17:58:49.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.2.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"9d76b1249baf2c31c668a77fe9b3d3020a601087","kind":"commit","published_at":"2018-01-16T06:57:57.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.1.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.1.0/manifests"},{"name":"v1.0.2","sha":"5ea4df0f3f5145e103a492b5a23c2407272d9869","kind":"commit","published_at":"2018-01-16T05:53:58.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.0.2","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.2/manifests"},{"name":"v1.0.1","sha":"b75f481dfa3ec9d7e21c8a3b1ea58519ed2d381b","kind":"commit","published_at":"2016-12-10T14:47:02.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.0.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.1/manifests"},{"name":"v1.0.0","sha":"a9fe5f1ce4363969f376bcb50fe7ca123bb224ef","kind":"commit","published_at":"2016-12-07T17:37:18.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.0.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.0/manifests"}]},"repo_metadata_updated_at":"2026-08-22T14:12:16.261Z","dependent_packages_count":390,"downloads":135721518,"downloads_period":"last-month","dependent_repos_count":211089,"rankings":{"downloads":0.04920154947918093,"dependent_repos_count":0.07307675879795987,"dependent_packages_count":0.1411156293910398,"stargazers_count":5.366172333013172,"forks_count":5.2812141751975386,"docker_downloads_count":0.19935252184636412,"average":1.8516888279542092},"purl":"pkg:npm/before-after-hook","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/npm/before-after-hook","docker_dependents_count":1517,"docker_downloads_count":138694146,"usage_url":"https://repos.ecosyste.ms/usage/npm/before-after-hook","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/npm/before-after-hook/dependencies","status":null,"funding_links":["https://github.com/sponsors/gr2m"],"critical":true,"issue_metadata":{"last_synced_at":"2026-08-22T11:31:15.143Z","issues_count":30,"pull_requests_count":83,"avg_time_to_close_issue":2243431.214285714,"avg_time_to_close_pull_request":940834.3827160494,"issues_closed_count":28,"pull_requests_closed_count":81,"pull_request_authors_count":15,"issue_authors_count":9,"avg_comments_per_issue":2.066666666666667,"avg_comments_per_pull_request":1.5180722891566265,"merged_pull_requests_count":70,"bot_issues_count":21,"bot_pull_requests_count":48,"past_year_issues_count":2,"past_year_pull_requests_count":5,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":417793.6666666667,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":1.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":1,"past_year_bot_pull_requests_count":4,"past_year_merged_pull_requests_count":3,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/issues","maintainers":[{"login":"gr2m","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gr2m"},{"login":"JasonEtco","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/JasonEtco"}],"active_maintainers":[{"login":"gr2m","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gr2m"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/before-after-hook/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/before-after-hook/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/before-after-hook/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/before-after-hook/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/before-after-hook/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/before-after-hook/codemeta","maintainers":[{"uuid":"gr2m","login":"gr2m","name":null,"email":"gregor@martynus.net","url":null,"packages_count":422,"html_url":"https://www.npmjs.com/~gr2m","role":null,"created_at":"2022-11-14T03:41:16.177Z","updated_at":"2022-11-14T03:41:16.177Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/gr2m/packages"}],"registry":{"name":"npmjs.org","url":"https://registry.npmjs.org","ecosystem":"npm","default":true,"packages_count":5777884,"maintainers_count":1236523,"namespaces_count":421466,"keywords_count":881826,"github":"npm","metadata":{"funded_packages_count":189888,"rate_limit":2},"icon_url":"https://github.com/npm.png","created_at":"2022-04-04T15:19:23.081Z","updated_at":"2026-08-24T05:03:24.460Z","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"}},{"id":14341187,"name":"github.com/gr2m/before-after-hook","ecosystem":"go","description":null,"homepage":null,"licenses":"apache-2.0","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/gr2m/before-after-hook","keywords_array":[],"namespace":null,"versions_count":21,"first_release_published_at":"2026-04-28T11:10:39.686Z","latest_release_published_at":"2025-05-12T22:37:05.000Z","latest_release_number":"v4.0.0+incompatible","last_synced_at":"2026-08-22T13:06:56.985Z","created_at":"2026-04-28T11:10:37.412Z","updated_at":"2026-08-22T13:06:56.985Z","registry_url":"https://pkg.go.dev/github.com/gr2m/before-after-hook","install_command":"go get github.com/gr2m/before-after-hook","documentation_url":"https://pkg.go.dev/github.com/gr2m/before-after-hook#section-documentation","metadata":{},"repo_metadata":{"id":13973744,"uuid":"75477357","full_name":"gr2m/before-after-hook","owner":"gr2m","description":"wrap methods with before/after hooks","archived":false,"fork":false,"pushed_at":"2026-04-03T20:19:32.000Z","size":993,"stargazers_count":83,"open_issues_count":3,"forks_count":24,"subscribers_count":4,"default_branch":"main","last_synced_at":"2026-07-22T18:21:58.777Z","etag":null,"topics":["api","async","asynchronous","events","hooks","promise"],"latest_commit_sha":null,"homepage":"http://npm.im/before-after-hook","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gr2m.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":".github/SECURITY.md","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},"funding":{"github":"gr2m"}},"created_at":"2016-12-03T14:06:52.000Z","updated_at":"2026-04-28T04:47:06.000Z","dependencies_parsed_at":"2024-11-13T04:00:56.003Z","dependency_job_id":"efeb85c3-f0c6-437c-a6ed-d3e3fe85493c","html_url":"https://github.com/gr2m/before-after-hook","commit_stats":{"total_commits":153,"total_committers":12,"mean_commits":12.75,"dds":0.5816993464052287,"last_synced_commit":"a5b7b583447b86befeb749555e7824b0f6bd6958"},"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"purl":"pkg:github/gr2m/before-after-hook","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gr2m","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/sbom","scorecard":{"id":442864,"data":{"date":"2025-08-11","repo":{"name":"github.com/gr2m/before-after-hook","commit":"37b8490c5a69a6e732799972887e5c8748515040"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.2,"checks":[{"name":"Code-Review","score":1,"reason":"Found 3/16 approved changesets -- score normalized to 1","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":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: .github/SECURITY.md:1","Info: Found linked content: .github/SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: .github/SECURITY.md:1","Info: Found text in security policy: .github/SECURITY.md:1"],"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":"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":"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":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Pinned-Dependencies","score":5,"reason":"dependency not pinned by hash detected -- score normalized to 5","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/update-prettier.yml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/update-prettier.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/update-prettier.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/gr2m/before-after-hook/update-prettier.yml/main?enable=pin","Info:   0 out of  10 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   2 third-party GitHubAction dependencies pinned","Info:   4 out of   4 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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/release.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1","Warn: no topLevel permission defined: .github/workflows/update-prettier.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":"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":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"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":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"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":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/release.yml:10"],"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 21 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-19T05:57:06.312Z","repository_id":13973744,"created_at":"2025-08-19T05:57:06.312Z","updated_at":"2025-08-19T05:57:06.312Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36326259,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-08-06T02:00:07.852Z","response_time":54,"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":"gr2m","name":"Gregor Martynus","uuid":"39992","kind":"user","description":"Staff Engineer at @GitHub","email":"","website":"https://dev.to/gr2m","location":"Los Angeles","twitter":"gr2m","company":"@github @octokit @octoherd @probot @nock @semantic-release @AllContributors","icon_url":"https://avatars.githubusercontent.com/u/39992?u=1ee38610bb2d8a082b3e84db7ecacf78149d061b\u0026v=4","repositories_count":505,"last_synced_at":"2024-10-29T17:10:24.699Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/gr2m","funding_links":["https://github.com/sponsors/gr2m"],"total_stars":3182,"followers":1532,"following":6,"created_at":"2022-11-02T16:25:20.838Z","updated_at":"2024-10-29T17:10:24.699Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gr2m","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gr2m/repositories"},"tags":[{"name":"v4.0.0","sha":"37b8490c5a69a6e732799972887e5c8748515040","kind":"commit","published_at":"2025-05-12T22:37:05.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v4.0.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v4.0.0/manifests"},{"name":"v3.0.2","sha":"42497f5727952ea7d789d40b6b20d0b3bd0cda86","kind":"commit","published_at":"2022-10-06T23:43:34.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v3.0.2","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"1e494892c2248a10bdb85ae1ae5086b1b35afc2b","kind":"commit","published_at":"2022-10-04T21:57:41.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v3.0.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"826603301a76de8f39c3812898c722466a793520","kind":"commit","published_at":"2022-10-04T21:54:33.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v3.0.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v3.0.0/manifests"},{"name":"v2.2.3","sha":"445b99d66938425ca6b3693311feede456448576","kind":"commit","published_at":"2022-10-04T00:19:00.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.2.3","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.3/manifests"},{"name":"v2.2.2","sha":"f237b9665e594c50a6fdd2ed3c26ef8a919796cc","kind":"commit","published_at":"2021-06-04T22:02:52.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.2.2","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.2/manifests"},{"name":"v2.2.1","sha":"45d19213bc085f08178a52fdac154e163f24688e","kind":"commit","published_at":"2021-04-05T00:43:52.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.2.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.1/manifests"},{"name":"v2.2.0","sha":"2cd95c7afbb07e300707d19ee3127878d7941bba","kind":"commit","published_at":"2021-03-05T21:34:40.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.2.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.2.0/manifests"},{"name":"v2.1.1","sha":"b86c975bd6584e64f4ab1c780f2e24346168007d","kind":"commit","published_at":"2021-01-31T21:41:25.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.1.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.1.1/manifests"},{"name":"v2.1.0","sha":"e57c123b1d977ea143a275e9d73cabcdf45403ee","kind":"commit","published_at":"2019-07-12T21:19:49.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.1.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.1.0/manifests"},{"name":"v2.0.1","sha":"4f55cbe3c10c47f6dc13d4b306ed9e2a342279b9","kind":"commit","published_at":"2019-07-09T21:21:22.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.0.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.0.1/manifests"},{"name":"v2.0.0","sha":"ea514aef701a5a32b1067ab0c4a7beaa48949488","kind":"commit","published_at":"2019-07-09T20:57:10.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v2.0.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v2.0.0/manifests"},{"name":"v1.4.0","sha":"3f630e16d7ae3afb405960ae151fb8fd806fdbfe","kind":"commit","published_at":"2019-03-04T18:07:32.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.4.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.4.0/manifests"},{"name":"v1.3.2","sha":"95315481c1c095ea3a6edf376b57db2147f2290b","kind":"commit","published_at":"2019-01-11T22:33:32.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.3.2","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.2/manifests"},{"name":"v1.3.1","sha":"ff2268440807a1731b6bbc9a91c9835bfccf4f81","kind":"commit","published_at":"2018-12-29T19:42:03.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.3.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.1/manifests"},{"name":"v1.3.0","sha":"06293c18f07131026ccf144012a12167dd90140e","kind":"commit","published_at":"2018-12-27T17:13:31.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.3.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"933ca1c540672a86535c509b0120a7fcd43a53ce","kind":"commit","published_at":"2018-10-31T17:58:49.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.2.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"9d76b1249baf2c31c668a77fe9b3d3020a601087","kind":"commit","published_at":"2018-01-16T06:57:57.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.1.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.1.0/manifests"},{"name":"v1.0.2","sha":"5ea4df0f3f5145e103a492b5a23c2407272d9869","kind":"commit","published_at":"2018-01-16T05:53:58.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.0.2","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.2/manifests"},{"name":"v1.0.1","sha":"b75f481dfa3ec9d7e21c8a3b1ea58519ed2d381b","kind":"commit","published_at":"2016-12-10T14:47:02.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.0.1","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.1/manifests"},{"name":"v1.0.0","sha":"a9fe5f1ce4363969f376bcb50fe7ca123bb224ef","kind":"commit","published_at":"2016-12-07T17:37:18.000Z","download_url":"https://codeload.github.com/gr2m/before-after-hook/tar.gz/v1.0.0","html_url":"https://github.com/gr2m/before-after-hook/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/gr2m/before-after-hook@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/tags/v1.0.0/manifests"}]},"repo_metadata_updated_at":"2026-08-20T16:22:01.551Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":5.135177172859481,"dependent_packages_count":4.811484132117595,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":4.973330652488539},"purl":"pkg:golang/github.com/gr2m/before-after-hook","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/gr2m/before-after-hook","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/gr2m/before-after-hook","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/gr2m/before-after-hook/dependencies","status":null,"funding_links":["https://github.com/sponsors/gr2m"],"critical":null,"issue_metadata":{"last_synced_at":"2026-08-20T10:30:45.190Z","issues_count":30,"pull_requests_count":83,"avg_time_to_close_issue":2243431.214285714,"avg_time_to_close_pull_request":940834.3827160494,"issues_closed_count":28,"pull_requests_closed_count":81,"pull_request_authors_count":15,"issue_authors_count":9,"avg_comments_per_issue":2.066666666666667,"avg_comments_per_pull_request":1.5180722891566265,"merged_pull_requests_count":70,"bot_issues_count":21,"bot_pull_requests_count":48,"past_year_issues_count":2,"past_year_pull_requests_count":5,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":417793.6666666667,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":1.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":1,"past_year_bot_pull_requests_count":4,"past_year_merged_pull_requests_count":3,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/issues","maintainers":[{"login":"gr2m","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gr2m"},{"login":"JasonEtco","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/JasonEtco"}],"active_maintainers":[{"login":"gr2m","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gr2m"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fgr2m%2Fbefore-after-hook/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fgr2m%2Fbefore-after-hook/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fgr2m%2Fbefore-after-hook/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fgr2m%2Fbefore-after-hook/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fgr2m%2Fbefore-after-hook/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fgr2m%2Fbefore-after-hook/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":2281895,"maintainers_count":0,"namespaces_count":839487,"keywords_count":124977,"github":"golang","metadata":{"funded_packages_count":67925,"sync_missing_packages_cursor":{"timestamp":"2026-08-17T00:00:58.969562Z","path":"github.com/Tektoncd/operator","version":"v0.78.0"},"rate_limit":1},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2026-08-24T05:01:22.286Z","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":134642,"full_name":"gr2m/before-after-hook","default_branch":"main","total_commits":159,"total_committers":13,"total_bot_commits":66,"total_bot_committers":2,"mean_commits":12.23076923076923,"dds":0.5031446540880503,"past_year_total_commits":5,"past_year_total_committers":3,"past_year_total_bot_commits":3,"past_year_total_bot_committers":1,"past_year_mean_commits":1.6666666666666667,"past_year_dds":0.4,"last_synced_at":"2026-08-19T10:02:00.892Z","last_synced_commit":"d791305f9d89ddc98f558458c42461bbfe8599e3","created_at":"2023-03-08T00:11:44.760Z","updated_at":"2026-08-19T10:02:00.046Z","committers":[{"name":"Gregor","email":"gregor@martynus.net","login":"gr2m","count":79},{"name":"greenkeeper[bot]","email":"23040076+greenkeeper[bot]","login":"greenkeeper[bot]","count":36},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":30},{"name":"Munif Tanjim","email":"muniftanjim@gmail.com","login":"MunifTanjim","count":4},{"name":"Jason Etcovitch","email":"jasonetco@github.com","login":"JasonEtco","count":2},{"name":"Y.D.X","email":"73375426+YDX-2147483647","login":"YDX-2147483647","count":1},{"name":"Michael B. Gale","email":"mbg@github.com","login":"mbg","count":1},{"name":"Joram van den Boezem","email":"joram@vandenboezem.nl","login":"hongaar","count":1},{"name":"Harm van der Werf","email":"harmvdwerf@gmail.com","login":"harm-less","count":1},{"name":"Drew Powers","email":"1369770+drwpow","login":"drwpow","count":1},{"name":"Aras Abbasi","email":"aras.abbasi@googlemail.com","login":"Uzlopak","count":1},{"name":"AnishaZ","email":"anishagzacharia@gmail.com","login":"anishaz","count":1},{"name":"David Custódio","email":"david.custodio@cxcompany.com","login":null,"count":1}],"past_year_committers":[{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":3},{"name":"Michael B. Gale","email":"mbg@github.com","login":"mbg","count":1},{"name":"Gregor Martynus","email":"39992+gr2m","login":"gr2m","count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-08-20T00:00:10.776Z","repositories_count":6750914,"commits_count":978124663,"contributors_count":41232052,"owners_count":1358723,"committers_count":3352629,"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":{"table":{"full_name":"gr2m/before-after-hook","html_url":"https://github.com/gr2m/before-after-hook","last_synced_at":"2026-08-23T12:03:43.269Z","status":null,"issues_count":30,"pull_requests_count":83,"avg_time_to_close_issue":2243431.214285714,"avg_time_to_close_pull_request":940834.3827160494,"issues_closed_count":28,"pull_requests_closed_count":81,"pull_request_authors_count":15,"issue_authors_count":9,"avg_comments_per_issue":2.066666666666667,"avg_comments_per_pull_request":1.5180722891566265,"merged_pull_requests_count":70,"bot_issues_count":21,"bot_pull_requests_count":48,"past_year_issues_count":2,"past_year_pull_requests_count":5,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":417793.6666666667,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":1.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":1,"past_year_bot_pull_requests_count":4,"past_year_merged_pull_requests_count":3,"created_at":"2023-05-19T08:47:47.192Z","updated_at":"2026-08-23T12:03:43.269Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/gr2m%2Fbefore-after-hook/issues","issue_labels_count":{"table":{"greenkeeper":19,"released":8,"bug":2,"semantic-release":2,"help wanted":1,"first-timers-only":1,"typescript":1}},"pull_request_labels_count":{"table":{"released":67,"dependencies":34,"greenkeeper":14,"javascript":4,"typescript":1,"bug":1}},"issue_author_associations_count":{"table":{"CONTRIBUTOR":20,"NONE":5,"OWNER":4,"COLLABORATOR":1}},"pull_request_author_associations_count":{"table":{"CONTRIBUTOR":58,"OWNER":18,"NONE":5,"COLLABORATOR":2}},"issue_authors":{"table":{"greenkeeper[bot]":19,"gr2m":4,"dcustodio":1,"jdmiranda":1,"github-actions[bot]":1,"JasonEtco":1,"MunifTanjim":1,"DasBen":1,"first-timers[bot]":1}},"pull_request_authors":{"table":{"dependabot[bot]":34,"gr2m":18,"greenkeeper[bot]":14,"MunifTanjim":4,"Uzlopak":2,"JasonEtco":2,"kkc-al":1,"Hackedaccount2016":1,"ReshimD":1,"drwpow":1,"dcustodio":1,"anishaz":1,"YDX-2147483647":1,"hongaar":1,"harm-less":1}},"host":{"table":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-08-24T00:00:06.384Z","repositories_count":16301769,"issues_count":42335015,"pull_requests_count":134763975,"authors_count":11516393,"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":{"table":{"semantic-release":1}},"past_year_pull_request_labels_count":{"table":{"dependencies":4,"javascript":4}},"past_year_issue_author_associations_count":{"table":{"NONE":2}},"past_year_pull_request_author_associations_count":{"table":{"CONTRIBUTOR":4,"OWNER":1}},"past_year_issue_authors":{"table":{"github-actions[bot]":1,"jdmiranda":1}},"past_year_pull_request_authors":{"table":{"dependabot[bot]":4,"gr2m":1}},"maintainers":[{"table":{"login":"gr2m","count":22,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gr2m"}},{"table":{"login":"JasonEtco","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/JasonEtco"}}],"active_maintainers":[{"table":{"login":"gr2m","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gr2m"}}]}},"events":{"total":{"ReleaseEvent":1,"DeleteEvent":1,"PullRequestEvent":5,"ForkEvent":4,"IssuesEvent":2,"WatchEvent":3,"IssueCommentEvent":6,"PushEvent":2,"PullRequestReviewEvent":9,"PullRequestReviewCommentEvent":8,"CreateEvent":3},"last_year":{"DeleteEvent":1,"PullRequestEvent":3,"ForkEvent":2,"IssuesEvent":2,"IssueCommentEvent":1,"PushEvent":1,"PullRequestReviewEvent":1,"CreateEvent":2}},"keywords":["api","async","asynchronous","events","hooks","promise"],"dependencies":[{"ecosystem":"actions","filepath":".github/workflows/release.yml","sha":null,"kind":"manifest","created_at":"2024-11-13T04:00:55.693Z","updated_at":"2024-11-13T04:00:55.693Z","repository_link":"https://github.com/gr2m/before-after-hook/blob/main/.github/workflows/release.yml","dependencies":[{"id":20704488256,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":20704488257,"package_name":"actions/setup-node","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/test.yml","sha":null,"kind":"manifest","created_at":"2024-11-13T04:00:55.759Z","updated_at":"2024-11-13T04:00:55.759Z","repository_link":"https://github.com/gr2m/before-after-hook/blob/main/.github/workflows/test.yml","dependencies":[{"id":20704488258,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":20704488259,"package_name":"actions/setup-node","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/update-prettier.yml","sha":null,"kind":"manifest","created_at":"2024-11-13T04:00:55.828Z","updated_at":"2024-11-13T04:00:55.828Z","repository_link":"https://github.com/gr2m/before-after-hook/blob/main/.github/workflows/update-prettier.yml","dependencies":[{"id":20704488260,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":20704488261,"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":"2022-09-06T10:50:53.323Z","updated_at":"2022-09-06T10:50:53.323Z","repository_link":"https://github.com/gr2m/before-after-hook/blob/main/package-lock.json","dependencies":[{"id":4001959500,"package_name":"@babel/code-frame","ecosystem":"npm","requirements":"7.16.7","direct":false,"kind":"development","optional":false},{"id":4001959501,"package_name":"@babel/helper-validator-identifier","ecosystem":"npm","requirements":"7.16.7","direct":false,"kind":"development","optional":false},{"id":4001959502,"package_name":"@babel/highlight","ecosystem":"npm","requirements":"7.17.12","direct":false,"kind":"development","optional":false},{"id":4001959503,"package_name":"ansi-styles","ecosystem":"npm","requirements":"3.2.1","direct":false,"kind":"development","optional":false},{"id":4001959504,"package_name":"chalk","ecosystem":"npm","requirements":"2.4.2","direct":false,"kind":"development","optional":false},{"id":4001959505,"package_name":"has-flag","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001959506,"package_name":"supports-color","ecosystem":"npm","requirements":"5.5.0","direct":false,"kind":"development","optional":false},{"id":4001959507,"package_name":"@babel/runtime","ecosystem":"npm","requirements":"7.9.2","direct":false,"kind":"development","optional":false},{"id":4001959508,"package_name":"@colors/colors","ecosystem":"npm","requirements":"1.5.0","direct":false,"kind":"development","optional":false},{"id":4001959509,"package_name":"@nodelib/fs.scandir","ecosystem":"npm","requirements":"2.1.5","direct":false,"kind":"development","optional":false},{"id":4001959510,"package_name":"@nodelib/fs.stat","ecosystem":"npm","requirements":"2.0.5","direct":false,"kind":"development","optional":false},{"id":4001959511,"package_name":"@nodelib/fs.walk","ecosystem":"npm","requirements":"1.2.8","direct":false,"kind":"development","optional":false},{"id":4001959512,"package_name":"@octokit/auth-token","ecosystem":"npm","requirements":"2.5.0","direct":false,"kind":"development","optional":false},{"id":4001959513,"package_name":"@octokit/core","ecosystem":"npm","requirements":"3.6.0","direct":false,"kind":"development","optional":false},{"id":4001959514,"package_name":"@octokit/endpoint","ecosystem":"npm","requirements":"6.0.12","direct":false,"kind":"development","optional":false},{"id":4001959515,"package_name":"@octokit/graphql","ecosystem":"npm","requirements":"4.8.0","direct":false,"kind":"development","optional":false},{"id":4001959516,"package_name":"@octokit/openapi-types","ecosystem":"npm","requirements":"11.2.0","direct":false,"kind":"development","optional":false},{"id":4001959517,"package_name":"@octokit/plugin-paginate-rest","ecosystem":"npm","requirements":"2.17.0","direct":false,"kind":"development","optional":false},{"id":4001959518,"package_name":"@octokit/plugin-request-log","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":4001959519,"package_name":"@octokit/plugin-rest-endpoint-methods","ecosystem":"npm","requirements":"5.13.0","direct":false,"kind":"development","optional":false},{"id":4001959520,"package_name":"@octokit/request","ecosystem":"npm","requirements":"5.6.3","direct":false,"kind":"development","optional":false},{"id":4001959521,"package_name":"@octokit/request-error","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001959522,"package_name":"@octokit/rest","ecosystem":"npm","requirements":"18.12.0","direct":false,"kind":"development","optional":false},{"id":4001959523,"package_name":"@octokit/types","ecosystem":"npm","requirements":"6.34.0","direct":false,"kind":"development","optional":false},{"id":4001959524,"package_name":"@semantic-release/commit-analyzer","ecosystem":"npm","requirements":"9.0.2","direct":false,"kind":"development","optional":false},{"id":4001959525,"package_name":"lodash","ecosystem":"npm","requirements":"4.17.21","direct":false,"kind":"development","optional":false},{"id":4001959526,"package_name":"@semantic-release/error","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001959527,"package_name":"@semantic-release/github","ecosystem":"npm","requirements":"8.0.4","direct":false,"kind":"development","optional":false},{"id":4001959528,"package_name":"@semantic-release/error","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":4001959529,"package_name":"@semantic-release/npm","ecosystem":"npm","requirements":"9.0.1","direct":false,"kind":"development","optional":false},{"id":4001959530,"package_name":"@semantic-release/release-notes-generator","ecosystem":"npm","requirements":"10.0.3","direct":false,"kind":"development","optional":false},{"id":4001959531,"package_name":"@tootallnate/once","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959532,"package_name":"@types/minimist","ecosystem":"npm","requirements":"1.2.2","direct":false,"kind":"development","optional":false},{"id":4001959533,"package_name":"@types/normalize-package-data","ecosystem":"npm","requirements":"2.4.1","direct":false,"kind":"development","optional":false},{"id":4001959534,"package_name":"@types/parse-json","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001959535,"package_name":"@types/retry","ecosystem":"npm","requirements":"0.12.0","direct":false,"kind":"development","optional":false},{"id":4001959536,"package_name":"JSONStream","ecosystem":"npm","requirements":"1.3.5","direct":false,"kind":"development","optional":false},{"id":4001959537,"package_name":"abbrev","ecosystem":"npm","requirements":"1.0.9","direct":false,"kind":"development","optional":false},{"id":4001959538,"package_name":"acorn","ecosystem":"npm","requirements":"7.1.1","direct":false,"kind":"development","optional":false},{"id":4001959539,"package_name":"acorn-node","ecosystem":"npm","requirements":"1.8.2","direct":false,"kind":"development","optional":false},{"id":4001959540,"package_name":"acorn-walk","ecosystem":"npm","requirements":"7.1.1","direct":false,"kind":"development","optional":false},{"id":4001959541,"package_name":"agent-base","ecosystem":"npm","requirements":"6.0.2","direct":false,"kind":"development","optional":false},{"id":4001959542,"package_name":"aggregate-error","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":4001959543,"package_name":"amdefine","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959544,"package_name":"ansi-escapes","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4001959545,"package_name":"type-fest","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":4001959546,"package_name":"ansi-regex","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":4001959547,"package_name":"ansi-styles","ecosystem":"npm","requirements":"2.2.1","direct":false,"kind":"development","optional":false},{"id":4001959548,"package_name":"ansicolors","ecosystem":"npm","requirements":"0.3.2","direct":false,"kind":"development","optional":false},{"id":4001959549,"package_name":"argparse","ecosystem":"npm","requirements":"1.0.10","direct":false,"kind":"development","optional":false},{"id":4001959550,"package_name":"argv-formatter","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959551,"package_name":"array-filter","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959552,"package_name":"array-ify","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959553,"package_name":"array-union","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001959554,"package_name":"arrify","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959555,"package_name":"asn1","ecosystem":"npm","requirements":"0.2.4","direct":false,"kind":"development","optional":false},{"id":4001959556,"package_name":"asn1.js","ecosystem":"npm","requirements":"4.10.1","direct":false,"kind":"development","optional":false},{"id":4001959557,"package_name":"assert","ecosystem":"npm","requirements":"1.5.0","direct":false,"kind":"development","optional":false},{"id":4001959558,"package_name":"inherits","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4001959559,"package_name":"util","ecosystem":"npm","requirements":"0.10.3","direct":false,"kind":"development","optional":false},{"id":4001959560,"package_name":"assert-plus","ecosystem":"npm","requirements":"0.2.0","direct":false,"kind":"development","optional":false},{"id":4001959561,"package_name":"async","ecosystem":"npm","requirements":"1.5.2","direct":false,"kind":"development","optional":false},{"id":4001959562,"package_name":"asynckit","ecosystem":"npm","requirements":"0.4.0","direct":false,"kind":"development","optional":false},{"id":4001959563,"package_name":"available-typed-arrays","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001959564,"package_name":"aws-sign2","ecosystem":"npm","requirements":"0.6.0","direct":false,"kind":"development","optional":false},{"id":4001959565,"package_name":"aws4","ecosystem":"npm","requirements":"1.9.1","direct":false,"kind":"development","optional":false},{"id":4001959566,"package_name":"balanced-match","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959567,"package_name":"base64-js","ecosystem":"npm","requirements":"1.3.1","direct":false,"kind":"development","optional":false},{"id":4001959568,"package_name":"bcrypt-pbkdf","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001959569,"package_name":"before-after-hook","ecosystem":"npm","requirements":"2.2.2","direct":false,"kind":"development","optional":false},{"id":4001959570,"package_name":"bn.js","ecosystem":"npm","requirements":"4.11.8","direct":false,"kind":"development","optional":false},{"id":4001959571,"package_name":"boom","ecosystem":"npm","requirements":"2.10.1","direct":false,"kind":"development","optional":false},{"id":4001959572,"package_name":"bottleneck","ecosystem":"npm","requirements":"2.19.5","direct":false,"kind":"development","optional":false},{"id":4001959573,"package_name":"brace-expansion","ecosystem":"npm","requirements":"1.1.11","direct":false,"kind":"development","optional":false},{"id":4001959574,"package_name":"braces","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":4001959575,"package_name":"brorand","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":4001959576,"package_name":"browser-pack","ecosystem":"npm","requirements":"6.1.0","direct":false,"kind":"development","optional":false},{"id":4001959577,"package_name":"browser-resolve","ecosystem":"npm","requirements":"1.11.3","direct":false,"kind":"development","optional":false},{"id":4001959578,"package_name":"resolve","ecosystem":"npm","requirements":"1.1.7","direct":false,"kind":"development","optional":false},{"id":4001959579,"package_name":"browserify","ecosystem":"npm","requirements":"16.5.1","direct":false,"kind":"development","optional":false},{"id":4001959580,"package_name":"browserify-aes","ecosystem":"npm","requirements":"1.2.0","direct":false,"kind":"development","optional":false},{"id":4001959581,"package_name":"browserify-cipher","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959582,"package_name":"browserify-des","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001959583,"package_name":"browserify-rsa","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":4001959584,"package_name":"browserify-sign","ecosystem":"npm","requirements":"4.0.4","direct":false,"kind":"development","optional":false},{"id":4001959585,"package_name":"browserify-zlib","ecosystem":"npm","requirements":"0.2.0","direct":false,"kind":"development","optional":false},{"id":4001959586,"package_name":"buffer","ecosystem":"npm","requirements":"5.2.1","direct":false,"kind":"development","optional":false},{"id":4001959587,"package_name":"buffer-from","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":4001959588,"package_name":"buffer-shims","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959589,"package_name":"buffer-xor","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":4001959590,"package_name":"builtin-status-codes","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001959591,"package_name":"cached-path-relative","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":4001959592,"package_name":"callsites","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":4001959593,"package_name":"camelcase","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":4001959594,"package_name":"camelcase-keys","ecosystem":"npm","requirements":"6.2.2","direct":false,"kind":"development","optional":false},{"id":4001959595,"package_name":"camelcase","ecosystem":"npm","requirements":"5.3.1","direct":false,"kind":"development","optional":false},{"id":4001959596,"package_name":"cardinal","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":4001959597,"package_name":"caseless","ecosystem":"npm","requirements":"0.11.0","direct":false,"kind":"development","optional":false},{"id":4001959598,"package_name":"chalk","ecosystem":"npm","requirements":"1.1.3","direct":false,"kind":"development","optional":false},{"id":4001959599,"package_name":"supports-color","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959600,"package_name":"cipher-base","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":4001959601,"package_name":"clean-stack","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":4001959602,"package_name":"cli-table3","ecosystem":"npm","requirements":"0.6.2","direct":false,"kind":"development","optional":false},{"id":4001959603,"package_name":"ansi-regex","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":4001959604,"package_name":"is-fullwidth-code-point","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001959605,"package_name":"string-width","ecosystem":"npm","requirements":"4.2.3","direct":false,"kind":"development","optional":false},{"id":4001959606,"package_name":"strip-ansi","ecosystem":"npm","requirements":"6.0.1","direct":false,"kind":"development","optional":false},{"id":4001959607,"package_name":"cliui","ecosystem":"npm","requirements":"3.2.0","direct":false,"kind":"development","optional":false},{"id":4001959608,"package_name":"code-point-at","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":4001959609,"package_name":"color-convert","ecosystem":"npm","requirements":"1.9.3","direct":false,"kind":"development","optional":false},{"id":4001959610,"package_name":"color-name","ecosystem":"npm","requirements":"1.1.3","direct":false,"kind":"development","optional":false},{"id":4001959611,"package_name":"combine-source-map","ecosystem":"npm","requirements":"0.8.0","direct":false,"kind":"development","optional":false},{"id":4001959612,"package_name":"combined-stream","ecosystem":"npm","requirements":"1.0.8","direct":false,"kind":"development","optional":false},{"id":4001959613,"package_name":"commander","ecosystem":"npm","requirements":"2.20.3","direct":false,"kind":"development","optional":false},{"id":4001959614,"package_name":"compare-func","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959615,"package_name":"concat-map","ecosystem":"npm","requirements":"0.0.1","direct":false,"kind":"development","optional":false},{"id":4001959616,"package_name":"concat-stream","ecosystem":"npm","requirements":"1.6.2","direct":false,"kind":"development","optional":false},{"id":4001959617,"package_name":"console-browserify","ecosystem":"npm","requirements":"1.2.0","direct":false,"kind":"development","optional":false},{"id":4001959618,"package_name":"constants-browserify","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959619,"package_name":"conventional-changelog-angular","ecosystem":"npm","requirements":"5.0.13","direct":false,"kind":"development","optional":false},{"id":4001959620,"package_name":"conventional-changelog-writer","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":4001959621,"package_name":"readable-stream","ecosystem":"npm","requirements":"3.6.0","direct":false,"kind":"development","optional":false},{"id":4001959622,"package_name":"semver","ecosystem":"npm","requirements":"6.3.0","direct":false,"kind":"development","optional":false},{"id":4001959623,"package_name":"through2","ecosystem":"npm","requirements":"4.0.2","direct":false,"kind":"development","optional":false},{"id":4001959624,"package_name":"conventional-commits-filter","ecosystem":"npm","requirements":"2.0.7","direct":false,"kind":"development","optional":false},{"id":4001959625,"package_name":"conventional-commits-parser","ecosystem":"npm","requirements":"3.2.4","direct":false,"kind":"development","optional":false},{"id":4001959626,"package_name":"convert-source-map","ecosystem":"npm","requirements":"1.1.3","direct":false,"kind":"development","optional":false},{"id":4001959627,"package_name":"core-util-is","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001959628,"package_name":"cosmiconfig","ecosystem":"npm","requirements":"7.0.1","direct":false,"kind":"development","optional":false},{"id":4001959629,"package_name":"yaml","ecosystem":"npm","requirements":"1.10.2","direct":false,"kind":"development","optional":false},{"id":4001959630,"package_name":"coveralls","ecosystem":"npm","requirements":"2.13.3","direct":false,"kind":"development","optional":false},{"id":4001959631,"package_name":"js-yaml","ecosystem":"npm","requirements":"3.6.1","direct":false,"kind":"development","optional":false},{"id":4001959632,"package_name":"minimist","ecosystem":"npm","requirements":"1.2.0","direct":false,"kind":"development","optional":false},{"id":4001959633,"package_name":"create-ecdh","ecosystem":"npm","requirements":"4.0.3","direct":false,"kind":"development","optional":false},{"id":4001959634,"package_name":"create-hash","ecosystem":"npm","requirements":"1.2.0","direct":false,"kind":"development","optional":false},{"id":4001959635,"package_name":"create-hmac","ecosystem":"npm","requirements":"1.1.7","direct":false,"kind":"development","optional":false},{"id":4001959636,"package_name":"cross-spawn","ecosystem":"npm","requirements":"7.0.3","direct":false,"kind":"development","optional":false},{"id":4001959637,"package_name":"which","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":4001959638,"package_name":"cryptiles","ecosystem":"npm","requirements":"2.0.5","direct":false,"kind":"development","optional":false},{"id":4001959639,"package_name":"crypto-browserify","ecosystem":"npm","requirements":"3.12.0","direct":false,"kind":"development","optional":false},{"id":4001959640,"package_name":"crypto-random-string","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959641,"package_name":"dash-ast","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959642,"package_name":"dashdash","ecosystem":"npm","requirements":"1.14.1","direct":false,"kind":"development","optional":false},{"id":4001959643,"package_name":"assert-plus","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959644,"package_name":"dateformat","ecosystem":"npm","requirements":"3.0.3","direct":false,"kind":"development","optional":false},{"id":4001959645,"package_name":"debug","ecosystem":"npm","requirements":"4.3.4","direct":false,"kind":"development","optional":false},{"id":4001959646,"package_name":"decamelize","ecosystem":"npm","requirements":"1.2.0","direct":false,"kind":"development","optional":false},{"id":4001959647,"package_name":"decamelize-keys","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":4001959648,"package_name":"map-obj","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959649,"package_name":"deep-equal","ecosystem":"npm","requirements":"2.0.3","direct":false,"kind":"development","optional":false},{"id":4001959650,"package_name":"isarray","ecosystem":"npm","requirements":"2.0.5","direct":false,"kind":"development","optional":false},{"id":4001959651,"package_name":"deep-extend","ecosystem":"npm","requirements":"0.6.0","direct":false,"kind":"development","optional":false},{"id":4001959652,"package_name":"deep-is","ecosystem":"npm","requirements":"0.1.3","direct":false,"kind":"development","optional":false},{"id":4001959653,"package_name":"define-properties","ecosystem":"npm","requirements":"1.1.3","direct":false,"kind":"development","optional":false},{"id":4001959654,"package_name":"defined","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959655,"package_name":"del","ecosystem":"npm","requirements":"6.1.1","direct":false,"kind":"development","optional":false},{"id":4001959656,"package_name":"graceful-fs","ecosystem":"npm","requirements":"4.2.10","direct":false,"kind":"development","optional":false},{"id":4001959657,"package_name":"p-map","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001959658,"package_name":"delayed-stream","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959659,"package_name":"deprecation","ecosystem":"npm","requirements":"2.3.1","direct":false,"kind":"development","optional":false},{"id":4001959660,"package_name":"deps-sort","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4001959661,"package_name":"des.js","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959662,"package_name":"detective","ecosystem":"npm","requirements":"5.2.0","direct":false,"kind":"development","optional":false},{"id":4001959663,"package_name":"diffie-hellman","ecosystem":"npm","requirements":"5.0.3","direct":false,"kind":"development","optional":false},{"id":4001959664,"package_name":"dir-glob","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":4001959665,"package_name":"domain-browser","ecosystem":"npm","requirements":"1.2.0","direct":false,"kind":"development","optional":false},{"id":4001959666,"package_name":"dot-prop","ecosystem":"npm","requirements":"5.3.0","direct":false,"kind":"development","optional":false},{"id":4001959667,"package_name":"dotignore","ecosystem":"npm","requirements":"0.1.2","direct":false,"kind":"development","optional":false},{"id":4001959668,"package_name":"duplexer","ecosystem":"npm","requirements":"0.1.1","direct":false,"kind":"development","optional":false},{"id":4001959669,"package_name":"duplexer2","ecosystem":"npm","requirements":"0.1.4","direct":false,"kind":"development","optional":false},{"id":4001959670,"package_name":"duplexer3","ecosystem":"npm","requirements":"0.1.4","direct":false,"kind":"development","optional":false},{"id":4001959671,"package_name":"ecc-jsbn","ecosystem":"npm","requirements":"0.1.2","direct":false,"kind":"development","optional":false},{"id":4001959672,"package_name":"elliptic","ecosystem":"npm","requirements":"6.5.4","direct":false,"kind":"development","optional":false},{"id":4001959673,"package_name":"bn.js","ecosystem":"npm","requirements":"4.12.0","direct":false,"kind":"development","optional":false},{"id":4001959674,"package_name":"emoji-regex","ecosystem":"npm","requirements":"8.0.0","direct":false,"kind":"development","optional":false},{"id":4001959675,"package_name":"env-ci","ecosystem":"npm","requirements":"5.5.0","direct":false,"kind":"development","optional":false},{"id":4001959676,"package_name":"error-ex","ecosystem":"npm","requirements":"1.3.2","direct":false,"kind":"development","optional":false},{"id":4001959677,"package_name":"es-abstract","ecosystem":"npm","requirements":"1.17.5","direct":false,"kind":"development","optional":false},{"id":4001959678,"package_name":"es-get-iterator","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":4001959679,"package_name":"es-to-primitive","ecosystem":"npm","requirements":"1.2.1","direct":false,"kind":"development","optional":false},{"id":4001959680,"package_name":"escalade","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":4001959681,"package_name":"escape-string-regexp","ecosystem":"npm","requirements":"1.0.5","direct":false,"kind":"development","optional":false},{"id":4001959682,"package_name":"escodegen","ecosystem":"npm","requirements":"1.8.1","direct":false,"kind":"development","optional":false},{"id":4001959683,"package_name":"source-map","ecosystem":"npm","requirements":"0.2.0","direct":false,"kind":"development","optional":false},{"id":4001959684,"package_name":"esprima","ecosystem":"npm","requirements":"2.7.3","direct":false,"kind":"development","optional":false},{"id":4001959685,"package_name":"estraverse","ecosystem":"npm","requirements":"1.9.3","direct":false,"kind":"development","optional":false},{"id":4001959686,"package_name":"esutils","ecosystem":"npm","requirements":"2.0.3","direct":false,"kind":"development","optional":false},{"id":4001959687,"package_name":"events","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001959688,"package_name":"events-to-array","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"development","optional":false},{"id":4001959689,"package_name":"evp_bytestokey","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":4001959690,"package_name":"exec-sh","ecosystem":"npm","requirements":"0.2.2","direct":false,"kind":"development","optional":false},{"id":4001959691,"package_name":"execa","ecosystem":"npm","requirements":"5.1.1","direct":false,"kind":"development","optional":false},{"id":4001959692,"package_name":"extend","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":4001959693,"package_name":"extsprintf","ecosystem":"npm","requirements":"1.3.0","direct":false,"kind":"development","optional":false},{"id":4001959694,"package_name":"fast-glob","ecosystem":"npm","requirements":"3.2.11","direct":false,"kind":"development","optional":false},{"id":4001959695,"package_name":"fast-levenshtein","ecosystem":"npm","requirements":"2.0.6","direct":false,"kind":"development","optional":false},{"id":4001959696,"package_name":"fast-safe-stringify","ecosystem":"npm","requirements":"2.0.7","direct":false,"kind":"development","optional":false},{"id":4001959697,"package_name":"fastq","ecosystem":"npm","requirements":"1.13.0","direct":false,"kind":"development","optional":false},{"id":4001959698,"package_name":"figures","ecosystem":"npm","requirements":"3.2.0","direct":false,"kind":"development","optional":false},{"id":4001959699,"package_name":"fill-range","ecosystem":"npm","requirements":"7.0.1","direct":false,"kind":"development","optional":false},{"id":4001959700,"package_name":"find-up","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":4001959701,"package_name":"find-versions","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001959702,"package_name":"for-each","ecosystem":"npm","requirements":"0.3.3","direct":false,"kind":"development","optional":false},{"id":4001959703,"package_name":"foreach","ecosystem":"npm","requirements":"2.0.5","direct":false,"kind":"development","optional":false},{"id":4001959704,"package_name":"forever-agent","ecosystem":"npm","requirements":"0.6.1","direct":false,"kind":"development","optional":false},{"id":4001959705,"package_name":"form-data","ecosystem":"npm","requirements":"2.1.4","direct":false,"kind":"development","optional":false},{"id":4001959706,"package_name":"from2","ecosystem":"npm","requirements":"2.3.0","direct":false,"kind":"development","optional":false},{"id":4001959707,"package_name":"fromentries","ecosystem":"npm","requirements":"1.3.2","direct":false,"kind":"development","optional":false},{"id":4001959708,"package_name":"fs-extra","ecosystem":"npm","requirements":"10.1.0","direct":false,"kind":"development","optional":false},{"id":4001959709,"package_name":"fs.realpath","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959710,"package_name":"function-bind","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":4001959711,"package_name":"gaze","ecosystem":"npm","requirements":"0.5.2","direct":false,"kind":"development","optional":false},{"id":4001959712,"package_name":"gaze-cli","ecosystem":"npm","requirements":"0.2.0","direct":false,"kind":"development","optional":false},{"id":4001959713,"package_name":"generate-function","ecosystem":"npm","requirements":"2.3.1","direct":false,"kind":"development","optional":false},{"id":4001959714,"package_name":"generate-object-property","ecosystem":"npm","requirements":"1.2.0","direct":false,"kind":"development","optional":false},{"id":4001959715,"package_name":"get-assigned-identifiers","ecosystem":"npm","requirements":"1.2.0","direct":false,"kind":"development","optional":false},{"id":4001959716,"package_name":"get-caller-file","ecosystem":"npm","requirements":"2.0.5","direct":false,"kind":"development","optional":false},{"id":4001959717,"package_name":"get-stream","ecosystem":"npm","requirements":"6.0.1","direct":false,"kind":"development","optional":false},{"id":4001959718,"package_name":"getpass","ecosystem":"npm","requirements":"0.1.7","direct":false,"kind":"development","optional":false},{"id":4001959719,"package_name":"git-log-parser","ecosystem":"npm","requirements":"1.2.0","direct":false,"kind":"development","optional":false},{"id":4001959720,"package_name":"split2","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959721,"package_name":"glob","ecosystem":"npm","requirements":"7.1.6","direct":false,"kind":"development","optional":false},{"id":4001959722,"package_name":"glob-parent","ecosystem":"npm","requirements":"5.1.2","direct":false,"kind":"development","optional":false},{"id":4001959723,"package_name":"globby","ecosystem":"npm","requirements":"11.1.0","direct":false,"kind":"development","optional":false},{"id":4001959724,"package_name":"globule","ecosystem":"npm","requirements":"0.1.0","direct":false,"kind":"development","optional":false},{"id":4001959725,"package_name":"glob","ecosystem":"npm","requirements":"3.1.21","direct":false,"kind":"development","optional":false},{"id":4001959726,"package_name":"inherits","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001959727,"package_name":"minimatch","ecosystem":"npm","requirements":"0.2.14","direct":false,"kind":"development","optional":false},{"id":4001959728,"package_name":"graceful-fs","ecosystem":"npm","requirements":"1.2.3","direct":false,"kind":"development","optional":false},{"id":4001959729,"package_name":"handlebars","ecosystem":"npm","requirements":"4.7.7","direct":false,"kind":"development","optional":false},{"id":4001959730,"package_name":"source-map","ecosystem":"npm","requirements":"0.6.1","direct":false,"kind":"development","optional":false},{"id":4001959731,"package_name":"har-validator","ecosystem":"npm","requirements":"2.0.6","direct":false,"kind":"development","optional":false},{"id":4001959732,"package_name":"hard-rejection","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001959733,"package_name":"has","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":4001959734,"package_name":"has-ansi","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959735,"package_name":"has-flag","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959736,"package_name":"has-symbols","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959737,"package_name":"hash-base","ecosystem":"npm","requirements":"3.0.4","direct":false,"kind":"development","optional":false},{"id":4001959738,"package_name":"hash.js","ecosystem":"npm","requirements":"1.1.7","direct":false,"kind":"development","optional":false},{"id":4001959739,"package_name":"hawk","ecosystem":"npm","requirements":"3.1.3","direct":false,"kind":"development","optional":false},{"id":4001959740,"package_name":"hirestime","ecosystem":"npm","requirements":"3.2.2","direct":false,"kind":"development","optional":false},{"id":4001959741,"package_name":"hmac-drbg","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959742,"package_name":"hoek","ecosystem":"npm","requirements":"2.16.3","direct":false,"kind":"development","optional":false},{"id":4001959743,"package_name":"hook-std","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959744,"package_name":"hosted-git-info","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":4001959745,"package_name":"lru-cache","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":4001959746,"package_name":"yallist","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001959747,"package_name":"htmlescape","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":4001959748,"package_name":"http-proxy-agent","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4001959749,"package_name":"http-signature","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":4001959750,"package_name":"https-browserify","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959751,"package_name":"https-proxy-agent","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":4001959752,"package_name":"human-signals","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001959753,"package_name":"ieee754","ecosystem":"npm","requirements":"1.1.13","direct":false,"kind":"development","optional":false},{"id":4001959754,"package_name":"ignore","ecosystem":"npm","requirements":"5.2.0","direct":false,"kind":"development","optional":false},{"id":4001959755,"package_name":"import-fresh","ecosystem":"npm","requirements":"3.3.0","direct":false,"kind":"development","optional":false},{"id":4001959756,"package_name":"resolve-from","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001959757,"package_name":"import-from","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001959758,"package_name":"indent-string","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001959759,"package_name":"inflight","ecosystem":"npm","requirements":"1.0.6","direct":false,"kind":"development","optional":false},{"id":4001959760,"package_name":"inherits","ecosystem":"npm","requirements":"2.0.4","direct":false,"kind":"development","optional":false},{"id":4001959761,"package_name":"ini","ecosystem":"npm","requirements":"1.3.8","direct":false,"kind":"development","optional":false},{"id":4001959762,"package_name":"inline-source-map","ecosystem":"npm","requirements":"0.6.2","direct":false,"kind":"development","optional":false},{"id":4001959763,"package_name":"insert-module-globals","ecosystem":"npm","requirements":"7.2.0","direct":false,"kind":"development","optional":false},{"id":4001959764,"package_name":"into-stream","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":4001959765,"package_name":"invert-kv","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959766,"package_name":"is-arguments","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":4001959767,"package_name":"is-arrayish","ecosystem":"npm","requirements":"0.2.1","direct":false,"kind":"development","optional":false},{"id":4001959768,"package_name":"is-bigint","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959769,"package_name":"is-boolean-object","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959770,"package_name":"is-buffer","ecosystem":"npm","requirements":"1.1.6","direct":false,"kind":"development","optional":false},{"id":4001959771,"package_name":"is-callable","ecosystem":"npm","requirements":"1.1.5","direct":false,"kind":"development","optional":false},{"id":4001959772,"package_name":"is-core-module","ecosystem":"npm","requirements":"2.9.0","direct":false,"kind":"development","optional":false},{"id":4001959773,"package_name":"is-date-object","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001959774,"package_name":"is-extglob","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":4001959775,"package_name":"is-finite","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":4001959776,"package_name":"is-fullwidth-code-point","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959777,"package_name":"is-glob","ecosystem":"npm","requirements":"4.0.3","direct":false,"kind":"development","optional":false},{"id":4001959778,"package_name":"is-map","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4001959779,"package_name":"is-my-ip-valid","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959780,"package_name":"is-my-json-valid","ecosystem":"npm","requirements":"2.20.0","direct":false,"kind":"development","optional":false},{"id":4001959781,"package_name":"is-number","ecosystem":"npm","requirements":"7.0.0","direct":false,"kind":"development","optional":false},{"id":4001959782,"package_name":"is-number-object","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":4001959783,"package_name":"is-obj","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959784,"package_name":"is-path-cwd","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":4001959785,"package_name":"is-path-inside","ecosystem":"npm","requirements":"3.0.3","direct":false,"kind":"development","optional":false},{"id":4001959786,"package_name":"is-plain-obj","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":4001959787,"package_name":"is-plain-object","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4001959788,"package_name":"is-property","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001959789,"package_name":"is-regex","ecosystem":"npm","requirements":"1.0.5","direct":false,"kind":"development","optional":false},{"id":4001959790,"package_name":"is-set","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4001959791,"package_name":"is-stream","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4001959792,"package_name":"is-string","ecosystem":"npm","requirements":"1.0.5","direct":false,"kind":"development","optional":false},{"id":4001959793,"package_name":"is-symbol","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":4001959794,"package_name":"is-text-path","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959795,"package_name":"is-typed-array","ecosystem":"npm","requirements":"1.1.3","direct":false,"kind":"development","optional":false},{"id":4001959796,"package_name":"is-typedarray","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959797,"package_name":"is-weakmap","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4001959798,"package_name":"is-weakset","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4001959799,"package_name":"isarray","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959800,"package_name":"isexe","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959801,"package_name":"isstream","ecosystem":"npm","requirements":"0.1.2","direct":false,"kind":"development","optional":false},{"id":4001959802,"package_name":"issue-parser","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":4001959803,"package_name":"istanbul","ecosystem":"npm","requirements":"0.4.5","direct":false,"kind":"development","optional":false},{"id":4001959804,"package_name":"glob","ecosystem":"npm","requirements":"5.0.15","direct":false,"kind":"development","optional":false},{"id":4001959805,"package_name":"mkdirp","ecosystem":"npm","requirements":"0.5.5","direct":false,"kind":"development","optional":false},{"id":4001959806,"package_name":"istanbul-coveralls","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":4001959807,"package_name":"rimraf","ecosystem":"npm","requirements":"2.7.1","direct":false,"kind":"development","optional":false},{"id":4001959808,"package_name":"java-properties","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001959809,"package_name":"js-tokens","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001959810,"package_name":"js-yaml","ecosystem":"npm","requirements":"3.13.1","direct":false,"kind":"development","optional":false},{"id":4001959811,"package_name":"esprima","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":4001959812,"package_name":"jsbn","ecosystem":"npm","requirements":"0.1.1","direct":false,"kind":"development","optional":false},{"id":4001959813,"package_name":"json-parse-better-errors","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001959814,"package_name":"json-parse-even-better-errors","ecosystem":"npm","requirements":"2.3.1","direct":false,"kind":"development","optional":false},{"id":4001959815,"package_name":"json-schema","ecosystem":"npm","requirements":"0.2.3","direct":false,"kind":"development","optional":false},{"id":4001959816,"package_name":"json-stable-stringify","ecosystem":"npm","requirements":"0.0.1","direct":false,"kind":"development","optional":false},{"id":4001959817,"package_name":"json-stringify-safe","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":4001959818,"package_name":"jsonfile","ecosystem":"npm","requirements":"6.1.0","direct":false,"kind":"development","optional":false},{"id":4001959819,"package_name":"jsonify","ecosystem":"npm","requirements":"0.0.0","direct":false,"kind":"development","optional":false},{"id":4001959820,"package_name":"jsonparse","ecosystem":"npm","requirements":"1.3.1","direct":false,"kind":"development","optional":false},{"id":4001959821,"package_name":"jsonpointer","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":4001959822,"package_name":"jsprim","ecosystem":"npm","requirements":"1.4.1","direct":false,"kind":"development","optional":false},{"id":4001959823,"package_name":"kind-of","ecosystem":"npm","requirements":"6.0.3","direct":false,"kind":"development","optional":false},{"id":4001959824,"package_name":"labeled-stream-splicer","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":4001959825,"package_name":"lcid","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959826,"package_name":"lcov-parse","ecosystem":"npm","requirements":"0.0.10","direct":false,"kind":"development","optional":false},{"id":4001959827,"package_name":"levn","ecosystem":"npm","requirements":"0.3.0","direct":false,"kind":"development","optional":false},{"id":4001959828,"package_name":"lines-and-columns","ecosystem":"npm","requirements":"1.2.4","direct":false,"kind":"development","optional":false},{"id":4001959829,"package_name":"load-json-file","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001959830,"package_name":"parse-json","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001959831,"package_name":"locate-path","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4001959832,"package_name":"lodash","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001959833,"package_name":"lodash.capitalize","ecosystem":"npm","requirements":"4.2.1","direct":false,"kind":"development","optional":false},{"id":4001959834,"package_name":"lodash.escaperegexp","ecosystem":"npm","requirements":"4.1.2","direct":false,"kind":"development","optional":false},{"id":4001959835,"package_name":"lodash.ismatch","ecosystem":"npm","requirements":"4.4.0","direct":false,"kind":"development","optional":false},{"id":4001959836,"package_name":"lodash.isplainobject","ecosystem":"npm","requirements":"4.0.6","direct":false,"kind":"development","optional":false},{"id":4001959837,"package_name":"lodash.isstring","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":4001959838,"package_name":"lodash.memoize","ecosystem":"npm","requirements":"3.0.4","direct":false,"kind":"development","optional":false},{"id":4001959839,"package_name":"lodash.uniqby","ecosystem":"npm","requirements":"4.7.0","direct":false,"kind":"development","optional":false},{"id":4001959840,"package_name":"log-driver","ecosystem":"npm","requirements":"1.2.5","direct":false,"kind":"development","optional":false},{"id":4001959841,"package_name":"lru-cache","ecosystem":"npm","requirements":"2.7.3","direct":false,"kind":"development","optional":false},{"id":4001959842,"package_name":"map-obj","ecosystem":"npm","requirements":"4.3.0","direct":false,"kind":"development","optional":false},{"id":4001959843,"package_name":"marked","ecosystem":"npm","requirements":"4.0.16","direct":false,"kind":"development","optional":false},{"id":4001959844,"package_name":"marked-terminal","ecosystem":"npm","requirements":"5.1.1","direct":false,"kind":"development","optional":false},{"id":4001959845,"package_name":"chalk","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":4001959846,"package_name":"md5.js","ecosystem":"npm","requirements":"1.3.5","direct":false,"kind":"development","optional":false},{"id":4001959847,"package_name":"meow","ecosystem":"npm","requirements":"8.1.2","direct":false,"kind":"development","optional":false},{"id":4001959848,"package_name":"merge","ecosystem":"npm","requirements":"1.2.1","direct":false,"kind":"development","optional":false},{"id":4001959849,"package_name":"merge-stream","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959850,"package_name":"merge2","ecosystem":"npm","requirements":"1.4.1","direct":false,"kind":"development","optional":false},{"id":4001959851,"package_name":"micromatch","ecosystem":"npm","requirements":"4.0.5","direct":false,"kind":"development","optional":false},{"id":4001959852,"package_name":"miller-rabin","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":4001959853,"package_name":"mime","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001959854,"package_name":"mime-db","ecosystem":"npm","requirements":"1.43.0","direct":false,"kind":"development","optional":false},{"id":4001959855,"package_name":"mime-types","ecosystem":"npm","requirements":"2.1.26","direct":false,"kind":"development","optional":false},{"id":4001959856,"package_name":"mimic-fn","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001959857,"package_name":"min-indent","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959858,"package_name":"minimalistic-assert","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959859,"package_name":"minimalistic-crypto-utils","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959860,"package_name":"minimatch","ecosystem":"npm","requirements":"3.0.4","direct":false,"kind":"development","optional":false},{"id":4001959861,"package_name":"minimist","ecosystem":"npm","requirements":"1.2.5","direct":false,"kind":"development","optional":false},{"id":4001959862,"package_name":"minimist-options","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":4001959863,"package_name":"minipass","ecosystem":"npm","requirements":"2.9.0","direct":false,"kind":"development","optional":false},{"id":4001959864,"package_name":"mkdirp","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":4001959865,"package_name":"mkdirp-classic","ecosystem":"npm","requirements":"0.5.2","direct":false,"kind":"development","optional":false},{"id":4001959866,"package_name":"modify-values","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959867,"package_name":"module-deps","ecosystem":"npm","requirements":"6.2.2","direct":false,"kind":"development","optional":false},{"id":4001959868,"package_name":"ms","ecosystem":"npm","requirements":"2.1.2","direct":false,"kind":"development","optional":false},{"id":4001959869,"package_name":"neo-async","ecosystem":"npm","requirements":"2.6.1","direct":false,"kind":"development","optional":false},{"id":4001959870,"package_name":"nerf-dart","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959871,"package_name":"node-emoji","ecosystem":"npm","requirements":"1.11.0","direct":false,"kind":"development","optional":false},{"id":4001959872,"package_name":"node-fetch","ecosystem":"npm","requirements":"2.6.7","direct":false,"kind":"development","optional":false},{"id":4001959873,"package_name":"nopt","ecosystem":"npm","requirements":"3.0.6","direct":false,"kind":"development","optional":false},{"id":4001959874,"package_name":"normalize-package-data","ecosystem":"npm","requirements":"3.0.3","direct":false,"kind":"development","optional":false},{"id":4001959875,"package_name":"normalize-url","ecosystem":"npm","requirements":"6.1.0","direct":false,"kind":"development","optional":false},{"id":4001959876,"package_name":"npm","ecosystem":"npm","requirements":"8.11.0","direct":false,"kind":"development","optional":false},{"id":4001959877,"package_name":"@gar/promisify","ecosystem":"npm","requirements":"1.1.3","direct":false,"kind":"development","optional":false},{"id":4001959878,"package_name":"@isaacs/string-locale-compare","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":4001959879,"package_name":"@npmcli/arborist","ecosystem":"npm","requirements":"5.2.0","direct":false,"kind":"development","optional":false},{"id":4001959880,"package_name":"@npmcli/ci-detect","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959881,"package_name":"@npmcli/config","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":4001959882,"package_name":"@npmcli/disparity-colors","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959883,"package_name":"@npmcli/fs","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001959884,"package_name":"@npmcli/git","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":4001959885,"package_name":"@npmcli/installed-package-contents","ecosystem":"npm","requirements":"1.0.7","direct":false,"kind":"development","optional":false},{"id":4001959886,"package_name":"@npmcli/map-workspaces","ecosystem":"npm","requirements":"2.0.3","direct":false,"kind":"development","optional":false},{"id":4001959887,"package_name":"@npmcli/metavuln-calculator","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":4001959888,"package_name":"@npmcli/move-file","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959889,"package_name":"@npmcli/name-from-folder","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959890,"package_name":"@npmcli/node-gyp","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959891,"package_name":"@npmcli/package-json","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959892,"package_name":"@npmcli/promise-spawn","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001959893,"package_name":"@npmcli/run-script","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":4001959894,"package_name":"abbrev","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":4001959895,"package_name":"agentkeepalive","ecosystem":"npm","requirements":"4.2.1","direct":false,"kind":"development","optional":false},{"id":4001959896,"package_name":"ansi-styles","ecosystem":"npm","requirements":"4.3.0","direct":false,"kind":"development","optional":false},{"id":4001959897,"package_name":"aproba","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959898,"package_name":"archy","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959899,"package_name":"are-we-there-yet","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001959900,"package_name":"asap","ecosystem":"npm","requirements":"2.0.6","direct":false,"kind":"development","optional":false},{"id":4001959901,"package_name":"balanced-match","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001959902,"package_name":"bin-links","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":4001959903,"package_name":"binary-extensions","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":4001959904,"package_name":"brace-expansion","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4001959905,"package_name":"builtins","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":4001959906,"package_name":"cacache","ecosystem":"npm","requirements":"16.1.0","direct":false,"kind":"development","optional":false},{"id":4001959907,"package_name":"chalk","ecosystem":"npm","requirements":"4.1.2","direct":false,"kind":"development","optional":false},{"id":4001959908,"package_name":"chownr","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959909,"package_name":"cidr-regex","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":4001959910,"package_name":"cli-columns","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001959911,"package_name":"clone","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":4001959912,"package_name":"cmd-shim","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4001959913,"package_name":"color-convert","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4001959914,"package_name":"color-name","ecosystem":"npm","requirements":"1.1.4","direct":false,"kind":"development","optional":false},{"id":4001959915,"package_name":"color-support","ecosystem":"npm","requirements":"1.1.3","direct":false,"kind":"development","optional":false},{"id":4001959916,"package_name":"columnify","ecosystem":"npm","requirements":"1.6.0","direct":false,"kind":"development","optional":false},{"id":4001959917,"package_name":"common-ancestor-path","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959918,"package_name":"console-control-strings","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":4001959919,"package_name":"debuglog","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959920,"package_name":"defaults","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":4001959921,"package_name":"delegates","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001959922,"package_name":"depd","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"development","optional":false},{"id":4001959923,"package_name":"dezalgo","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":4001959924,"package_name":"diff","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4001959925,"package_name":"encoding","ecosystem":"npm","requirements":"0.1.13","direct":false,"kind":"development","optional":false},{"id":4001959926,"package_name":"env-paths","ecosystem":"npm","requirements":"2.2.1","direct":false,"kind":"development","optional":false},{"id":4001959927,"package_name":"err-code","ecosystem":"npm","requirements":"2.0.3","direct":false,"kind":"development","optional":false},{"id":4001959928,"package_name":"fastest-levenshtein","ecosystem":"npm","requirements":"1.0.12","direct":false,"kind":"development","optional":false},{"id":4001959929,"package_name":"fs-minipass","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001959930,"package_name":"gauge","ecosystem":"npm","requirements":"4.0.4","direct":false,"kind":"development","optional":false},{"id":4001959931,"package_name":"glob","ecosystem":"npm","requirements":"8.0.1","direct":false,"kind":"development","optional":false},{"id":4001959932,"package_name":"has-flag","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001959933,"package_name":"has-unicode","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4001959934,"package_name":"hosted-git-info","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4001959935,"package_name":"http-cache-semantics","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":4001959936,"package_name":"humanize-ms","ecosystem":"npm","requirements":"1.2.1","direct":false,"kind":"development","optional":false},{"id":4001959937,"package_name":"iconv-lite","ecosystem":"npm","requirements":"0.6.3","direct":false,"kind":"development","optional":false},{"id":4001959938,"package_name":"ignore-walk","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":4001959939,"package_name":"imurmurhash","ecosystem":"npm","requirements":"0.1.4","direct":false,"kind":"development","optional":false},{"id":4001959940,"package_name":"infer-owner","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":4001959941,"package_name":"ini","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001959942,"package_name":"init-package-json","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":4001959943,"package_name":"ip","ecosystem":"npm","requirements":"1.1.8","direct":false,"kind":"development","optional":false},{"id":4001959944,"package_name":"ip-regex","ecosystem":"npm","requirements":"4.3.0","direct":false,"kind":"development","optional":false},{"id":4001959945,"package_name":"is-cidr","ecosystem":"npm","requirements":"4.0.2","direct":false,"kind":"development","optional":false},{"id":4001959946,"package_name":"is-lambda","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959947,"package_name":"json-stringify-nice","ecosystem":"npm","requirements":"1.1.4","direct":false,"kind":"development","optional":false},{"id":4001959948,"package_name":"just-diff","ecosystem":"npm","requirements":"5.0.2","direct":false,"kind":"development","optional":false},{"id":4001959949,"package_name":"just-diff-apply","ecosystem":"npm","requirements":"5.2.0","direct":false,"kind":"development","optional":false},{"id":4001959950,"package_name":"libnpmaccess","ecosystem":"npm","requirements":"6.0.3","direct":false,"kind":"development","optional":false},{"id":4001959951,"package_name":"libnpmdiff","ecosystem":"npm","requirements":"4.0.3","direct":false,"kind":"development","optional":false},{"id":4001959952,"package_name":"libnpmexec","ecosystem":"npm","requirements":"4.0.5","direct":false,"kind":"development","optional":false},{"id":4001959953,"package_name":"libnpmfund","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":4001959954,"package_name":"libnpmhook","ecosystem":"npm","requirements":"8.0.3","direct":false,"kind":"development","optional":false},{"id":4001959955,"package_name":"libnpmorg","ecosystem":"npm","requirements":"4.0.3","direct":false,"kind":"development","optional":false},{"id":4001959956,"package_name":"libnpmpack","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":4001959957,"package_name":"libnpmpublish","ecosystem":"npm","requirements":"6.0.4","direct":false,"kind":"development","optional":false},{"id":4001959958,"package_name":"libnpmsearch","ecosystem":"npm","requirements":"5.0.3","direct":false,"kind":"development","optional":false},{"id":4001959959,"package_name":"libnpmteam","ecosystem":"npm","requirements":"4.0.3","direct":false,"kind":"development","optional":false},{"id":4001959960,"package_name":"libnpmversion","ecosystem":"npm","requirements":"3.0.4","direct":false,"kind":"development","optional":false},{"id":4001959961,"package_name":"lru-cache","ecosystem":"npm","requirements":"7.9.0","direct":false,"kind":"development","optional":false},{"id":4001959962,"package_name":"make-fetch-happen","ecosystem":"npm","requirements":"10.1.5","direct":false,"kind":"development","optional":false},{"id":4001959963,"package_name":"minimatch","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":4001959964,"package_name":"minipass","ecosystem":"npm","requirements":"3.1.6","direct":false,"kind":"development","optional":false},{"id":4001959965,"package_name":"minipass-collect","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001959966,"package_name":"minipass-fetch","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001959967,"package_name":"minipass-flush","ecosystem":"npm","requirements":"1.0.5","direct":false,"kind":"development","optional":false},{"id":4001959968,"package_name":"minipass-json-stream","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959969,"package_name":"minipass-pipeline","ecosystem":"npm","requirements":"1.2.4","direct":false,"kind":"development","optional":false},{"id":4001959970,"package_name":"minipass-sized","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":4001959971,"package_name":"minizlib","ecosystem":"npm","requirements":"2.1.2","direct":false,"kind":"development","optional":false},{"id":4001959972,"package_name":"mkdirp-infer-owner","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001959973,"package_name":"ms","ecosystem":"npm","requirements":"2.1.3","direct":false,"kind":"development","optional":false},{"id":4001959974,"package_name":"mute-stream","ecosystem":"npm","requirements":"0.0.8","direct":false,"kind":"development","optional":false},{"id":4001959975,"package_name":"negotiator","ecosystem":"npm","requirements":"0.6.3","direct":false,"kind":"development","optional":false},{"id":4001959976,"package_name":"node-gyp","ecosystem":"npm","requirements":"9.0.0","direct":false,"kind":"development","optional":false},{"id":4001959977,"package_name":"glob","ecosystem":"npm","requirements":"7.2.0","direct":false,"kind":"development","optional":false},{"id":4001959978,"package_name":"minimatch","ecosystem":"npm","requirements":"3.1.2","direct":false,"kind":"development","optional":false},{"id":4001959979,"package_name":"nopt","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4001959980,"package_name":"normalize-package-data","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001959981,"package_name":"npm-audit-report","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001959982,"package_name":"npm-bundled","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"development","optional":false},{"id":4001959983,"package_name":"npm-install-checks","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4001959984,"package_name":"npm-normalize-package-bin","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959985,"package_name":"npm-package-arg","ecosystem":"npm","requirements":"9.0.2","direct":false,"kind":"development","optional":false},{"id":4001959986,"package_name":"npm-packlist","ecosystem":"npm","requirements":"5.1.0","direct":false,"kind":"development","optional":false},{"id":4001959987,"package_name":"npm-pick-manifest","ecosystem":"npm","requirements":"7.0.1","direct":false,"kind":"development","optional":false},{"id":4001959988,"package_name":"npm-profile","ecosystem":"npm","requirements":"6.0.3","direct":false,"kind":"development","optional":false},{"id":4001959989,"package_name":"npm-registry-fetch","ecosystem":"npm","requirements":"13.1.1","direct":false,"kind":"development","optional":false},{"id":4001959990,"package_name":"npm-user-validate","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959991,"package_name":"npmlog","ecosystem":"npm","requirements":"6.0.2","direct":false,"kind":"development","optional":false},{"id":4001959992,"package_name":"once","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":4001959993,"package_name":"opener","ecosystem":"npm","requirements":"1.5.2","direct":false,"kind":"development","optional":false},{"id":4001959994,"package_name":"pacote","ecosystem":"npm","requirements":"13.5.0","direct":false,"kind":"development","optional":false},{"id":4001959995,"package_name":"parse-conflict-json","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":4001959996,"package_name":"path-is-absolute","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959997,"package_name":"proc-log","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4001959998,"package_name":"promise-all-reject-late","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001959999,"package_name":"promise-call-limit","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001960000,"package_name":"promise-inflight","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001960001,"package_name":"promise-retry","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4001960002,"package_name":"promzard","ecosystem":"npm","requirements":"0.3.0","direct":false,"kind":"development","optional":false},{"id":4001960003,"package_name":"qrcode-terminal","ecosystem":"npm","requirements":"0.12.0","direct":false,"kind":"development","optional":false},{"id":4001960004,"package_name":"read","ecosystem":"npm","requirements":"1.0.7","direct":false,"kind":"development","optional":false},{"id":4001960005,"package_name":"read-cmd-shim","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001960006,"package_name":"read-package-json","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":4001960007,"package_name":"read-package-json-fast","ecosystem":"npm","requirements":"2.0.3","direct":false,"kind":"development","optional":false},{"id":4001960008,"package_name":"readdir-scoped-modules","ecosystem":"npm","requirements":"1.1.0","direct":false,"kind":"development","optional":false},{"id":4001960009,"package_name":"retry","ecosystem":"npm","requirements":"0.12.0","direct":false,"kind":"development","optional":false},{"id":4001960010,"package_name":"rimraf","ecosystem":"npm","requirements":"3.0.2","direct":false,"kind":"development","optional":false},{"id":4001960011,"package_name":"safe-buffer","ecosystem":"npm","requirements":"5.2.1","direct":false,"kind":"development","optional":false},{"id":4001960012,"package_name":"safer-buffer","ecosystem":"npm","requirements":"2.1.2","direct":false,"kind":"development","optional":false},{"id":4001960013,"package_name":"semver","ecosystem":"npm","requirements":"7.3.7","direct":false,"kind":"development","optional":false},{"id":4001960014,"package_name":"set-blocking","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001960015,"package_name":"signal-exit","ecosystem":"npm","requirements":"3.0.7","direct":false,"kind":"development","optional":false},{"id":4001960016,"package_name":"smart-buffer","ecosystem":"npm","requirements":"4.2.0","direct":false,"kind":"development","optional":false},{"id":4001960017,"package_name":"socks","ecosystem":"npm","requirements":"2.6.2","direct":false,"kind":"development","optional":false},{"id":4001960018,"package_name":"socks-proxy-agent","ecosystem":"npm","requirements":"6.2.0","direct":false,"kind":"development","optional":false},{"id":4001960019,"package_name":"spdx-correct","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":4001960020,"package_name":"spdx-exceptions","ecosystem":"npm","requirements":"2.3.0","direct":false,"kind":"development","optional":false},{"id":4001960021,"package_name":"spdx-expression-parse","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":4001960022,"package_name":"spdx-license-ids","ecosystem":"npm","requirements":"3.0.11","direct":false,"kind":"development","optional":false},{"id":4001960023,"package_name":"ssri","ecosystem":"npm","requirements":"9.0.1","direct":false,"kind":"development","optional":false},{"id":4001960024,"package_name":"string_decoder","ecosystem":"npm","requirements":"1.3.0","direct":false,"kind":"development","optional":false},{"id":4001960025,"package_name":"supports-color","ecosystem":"npm","requirements":"7.2.0","direct":false,"kind":"development","optional":false},{"id":4001960026,"package_name":"tar","ecosystem":"npm","requirements":"6.1.11","direct":false,"kind":"development","optional":false},{"id":4001960027,"package_name":"text-table","ecosystem":"npm","requirements":"0.2.0","direct":false,"kind":"development","optional":false},{"id":4001960028,"package_name":"tiny-relative-date","ecosystem":"npm","requirements":"1.3.0","direct":false,"kind":"development","optional":false},{"id":4001960029,"package_name":"treeverse","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001960030,"package_name":"unique-filename","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":4001960031,"package_name":"unique-slug","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":4001960032,"package_name":"util-deprecate","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001960033,"package_name":"validate-npm-package-license","ecosystem":"npm","requirements":"3.0.4","direct":false,"kind":"development","optional":false},{"id":4001960034,"package_name":"validate-npm-package-name","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001960035,"package_name":"walk-up-path","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001960036,"package_name":"wcwidth","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001960037,"package_name":"wide-align","ecosystem":"npm","requirements":"1.1.5","direct":false,"kind":"development","optional":false},{"id":4001960038,"package_name":"wrappy","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001960039,"package_name":"write-file-atomic","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":4001960040,"package_name":"npm-run-path","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":4001960041,"package_name":"number-is-nan","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001960042,"package_name":"oauth-sign","ecosystem":"npm","requirements":"0.8.2","direct":false,"kind":"development","optional":false},{"id":4001960043,"package_name":"object-assign","ecosystem":"npm","requirements":"4.1.1","direct":false,"kind":"development","optional":false},{"id":4001960044,"package_name":"object-inspect","ecosystem":"npm","requirements":"1.7.0","direct":false,"kind":"development","optional":false},{"id":4001960045,"package_name":"object-is","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"development","optional":false},{"id":4001960046,"package_name":"object-keys","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":4001960047,"package_name":"object.assign","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":4001960048,"package_name":"onetime","ecosystem":"npm","requirements":"5.1.2","direct":false,"kind":"development","optional":false},{"id":4001960049,"package_name":"optionator","ecosystem":"npm","requirements":"0.8.3","direct":false,"kind":"development","optional":false},{"id":4001960050,"package_name":"os-browserify","ecosystem":"npm","requirements":"0.3.0","direct":false,"kind":"development","optional":false},{"id":4001960051,"package_name":"os-locale","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":4001960052,"package_name":"p-each-series","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":4001960053,"package_name":"p-filter","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001960054,"package_name":"p-is-promise","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001960055,"package_name":"p-limit","ecosystem":"npm","requirements":"2.3.0","direct":false,"kind":"development","optional":false},{"id":4001960056,"package_name":"p-locate","ecosystem":"npm","requirements":"4.1.0","direct":false,"kind":"development","optional":false},{"id":4001960057,"package_name":"p-map","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001960058,"package_name":"p-reduce","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001960059,"package_name":"p-retry","ecosystem":"npm","requirements":"4.6.2","direct":false,"kind":"development","optional":false},{"id":4001960060,"package_name":"p-try","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":4001960061,"package_name":"pako","ecosystem":"npm","requirements":"1.0.11","direct":false,"kind":"development","optional":false},{"id":4001960062,"package_name":"parent-module","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001960063,"package_name":"parents","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001960064,"package_name":"parse-asn1","ecosystem":"npm","requirements":"5.1.5","direct":false,"kind":"development","optional":false},{"id":4001960065,"package_name":"parse-json","ecosystem":"npm","requirements":"5.2.0","direct":false,"kind":"development","optional":false},{"id":4001960066,"package_name":"parse-ms","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001960067,"package_name":"path-browserify","ecosystem":"npm","requirements":"0.0.1","direct":false,"kind":"development","optional":false},{"id":4001960068,"package_name":"path-exists","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001960069,"package_name":"path-key","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":4001960070,"package_name":"path-parse","ecosystem":"npm","requirements":"1.0.7","direct":false,"kind":"development","optional":false},{"id":4001960071,"package_name":"path-platform","ecosystem":"npm","requirements":"0.11.15","direct":false,"kind":"development","optional":false},{"id":4001960072,"package_name":"path-type","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001960073,"package_name":"pbkdf2","ecosystem":"npm","requirements":"3.0.17","direct":false,"kind":"development","optional":false},{"id":4001960074,"package_name":"picomatch","ecosystem":"npm","requirements":"2.3.1","direct":false,"kind":"development","optional":false},{"id":4001960075,"package_name":"pify","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001960076,"package_name":"pinkie","ecosystem":"npm","requirements":"2.0.4","direct":false,"kind":"development","optional":false},{"id":4001960077,"package_name":"pinkie-promise","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4001960078,"package_name":"pkg-conf","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001960079,"package_name":"find-up","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001960080,"package_name":"locate-path","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001960081,"package_name":"p-limit","ecosystem":"npm","requirements":"1.3.0","direct":false,"kind":"development","optional":false},{"id":4001960082,"package_name":"p-locate","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001960083,"package_name":"p-try","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001960084,"package_name":"path-exists","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001960085,"package_name":"plur","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001960086,"package_name":"prelude-ls","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"development","optional":false},{"id":4001960087,"package_name":"prettier","ecosystem":"npm","requirements":"2.0.4","direct":false,"kind":"development","optional":false},{"id":4001960088,"package_name":"pretty-hrtime","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":4001960089,"package_name":"pretty-ms","ecosystem":"npm","requirements":"4.0.0","direct":false,"kind":"development","optional":false},{"id":4001960090,"package_name":"process","ecosystem":"npm","requirements":"0.11.10","direct":false,"kind":"development","optional":false},{"id":4001960091,"package_name":"process-nextick-args","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4001960092,"package_name":"public-encrypt","ecosystem":"npm","requirements":"4.0.3","direct":false,"kind":"development","optional":false},{"id":4001960093,"package_name":"punycode","ecosystem":"npm","requirements":"1.4.1","direct":false,"kind":"development","optional":false},{"id":4001960094,"package_name":"q","ecosystem":"npm","requirements":"1.5.1","direct":false,"kind":"development","optional":false},{"id":4001960095,"package_name":"qs","ecosystem":"npm","requirements":"6.3.2","direct":false,"kind":"development","optional":false},{"id":4001960096,"package_name":"querystring","ecosystem":"npm","requirements":"0.2.0","direct":false,"kind":"development","optional":false},{"id":4001960097,"package_name":"querystring-es3","ecosystem":"npm","requirements":"0.2.1","direct":false,"kind":"development","optional":false},{"id":4001960098,"package_name":"queue-microtask","ecosystem":"npm","requirements":"1.2.3","direct":false,"kind":"development","optional":false},{"id":4001960099,"package_name":"quick-lru","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":4001960100,"package_name":"randombytes","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001960101,"package_name":"randomfill","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":4001960102,"package_name":"rc","ecosystem":"npm","requirements":"1.2.8","direct":false,"kind":"development","optional":false},{"id":4001960103,"package_name":"re-emitter","ecosystem":"npm","requirements":"1.1.3","direct":false,"kind":"development","optional":false},{"id":4001960104,"package_name":"read-only-stream","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001960105,"package_name":"read-pkg","ecosystem":"npm","requirements":"5.2.0","direct":false,"kind":"development","optional":false},{"id":4001960106,"package_name":"hosted-git-info","ecosystem":"npm","requirements":"2.8.9","direct":false,"kind":"development","optional":false},{"id":4001960107,"package_name":"normalize-package-data","ecosystem":"npm","requirements":"2.5.0","direct":false,"kind":"development","optional":false},{"id":4001960108,"package_name":"semver","ecosystem":"npm","requirements":"5.7.1","direct":false,"kind":"development","optional":false},{"id":4001960109,"package_name":"type-fest","ecosystem":"npm","requirements":"0.6.0","direct":false,"kind":"development","optional":false},{"id":4001960110,"package_name":"read-pkg-up","ecosystem":"npm","requirements":"7.0.1","direct":false,"kind":"development","optional":false},{"id":4001960111,"package_name":"type-fest","ecosystem":"npm","requirements":"0.8.1","direct":false,"kind":"development","optional":false},{"id":4001960112,"package_name":"readable-stream","ecosystem":"npm","requirements":"2.3.7","direct":false,"kind":"development","optional":false},{"id":4001960113,"package_name":"safe-buffer","ecosystem":"npm","requirements":"5.1.2","direct":false,"kind":"development","optional":false},{"id":4001960114,"package_name":"string_decoder","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":4001960115,"package_name":"redent","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001960116,"package_name":"redeyed","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":4001960117,"package_name":"regenerator-runtime","ecosystem":"npm","requirements":"0.13.5","direct":false,"kind":"development","optional":false},{"id":4001960118,"package_name":"regexp.prototype.flags","ecosystem":"npm","requirements":"1.3.0","direct":false,"kind":"development","optional":false},{"id":4001960119,"package_name":"registry-auth-token","ecosystem":"npm","requirements":"4.2.1","direct":false,"kind":"development","optional":false},{"id":4001960120,"package_name":"repeat-string","ecosystem":"npm","requirements":"1.6.1","direct":false,"kind":"development","optional":false},{"id":4001960121,"package_name":"request","ecosystem":"npm","requirements":"2.79.0","direct":false,"kind":"development","optional":false},{"id":4001960122,"package_name":"require-directory","ecosystem":"npm","requirements":"2.1.1","direct":false,"kind":"development","optional":false},{"id":4001960123,"package_name":"resolve","ecosystem":"npm","requirements":"1.15.1","direct":false,"kind":"development","optional":false},{"id":4001960124,"package_name":"resolve-from","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4001960125,"package_name":"resumer","ecosystem":"npm","requirements":"0.0.0","direct":false,"kind":"development","optional":false},{"id":4001960126,"package_name":"retry","ecosystem":"npm","requirements":"0.13.1","direct":false,"kind":"development","optional":false},{"id":4001960127,"package_name":"reusify","ecosystem":"npm","requirements":"1.0.4","direct":false,"kind":"development","optional":false},{"id":4001960128,"package_name":"ripemd160","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":4001960129,"package_name":"run-parallel","ecosystem":"npm","requirements":"1.2.0","direct":false,"kind":"development","optional":false},{"id":4001960130,"package_name":"safe-buffer","ecosystem":"npm","requirements":"5.2.0","direct":false,"kind":"development","optional":false},{"id":4001960131,"package_name":"semantic-release","ecosystem":"npm","requirements":"19.0.3","direct":false,"kind":"development","optional":false},{"id":4001960132,"package_name":"cliui","ecosystem":"npm","requirements":"7.0.4","direct":false,"kind":"development","optional":false},{"id":4001960133,"package_name":"wrap-ansi","ecosystem":"npm","requirements":"7.0.0","direct":false,"kind":"development","optional":false},{"id":4001960134,"package_name":"y18n","ecosystem":"npm","requirements":"5.0.8","direct":false,"kind":"development","optional":false},{"id":4001960135,"package_name":"yargs","ecosystem":"npm","requirements":"16.2.0","direct":false,"kind":"development","optional":false},{"id":4001960136,"package_name":"semver-diff","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":4001960137,"package_name":"semver-regex","ecosystem":"npm","requirements":"3.1.4","direct":false,"kind":"development","optional":false},{"id":4001960138,"package_name":"sha.js","ecosystem":"npm","requirements":"2.4.11","direct":false,"kind":"development","optional":false},{"id":4001960139,"package_name":"shasum","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001960140,"package_name":"shasum-object","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001960141,"package_name":"shebang-command","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001960142,"package_name":"shebang-regex","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001960143,"package_name":"shell-quote","ecosystem":"npm","requirements":"1.7.3","direct":false,"kind":"development","optional":false},{"id":4001960144,"package_name":"side-channel","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001960145,"package_name":"sigmund","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001960146,"package_name":"signale","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":4001960147,"package_name":"figures","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001960148,"package_name":"simple-concat","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001960149,"package_name":"simple-mock","ecosystem":"npm","requirements":"0.8.0","direct":false,"kind":"development","optional":false},{"id":4001960150,"package_name":"slash","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001960151,"package_name":"sntp","ecosystem":"npm","requirements":"1.0.9","direct":false,"kind":"development","optional":false},{"id":4001960152,"package_name":"source-map","ecosystem":"npm","requirements":"0.5.7","direct":false,"kind":"development","optional":false},{"id":4001960153,"package_name":"spawn-error-forwarder","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001960154,"package_name":"split","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001960155,"package_name":"split2","ecosystem":"npm","requirements":"3.2.2","direct":false,"kind":"development","optional":false},{"id":4001960156,"package_name":"sprintf-js","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":4001960157,"package_name":"sshpk","ecosystem":"npm","requirements":"1.16.1","direct":false,"kind":"development","optional":false},{"id":4001960158,"package_name":"stream-browserify","ecosystem":"npm","requirements":"2.0.2","direct":false,"kind":"development","optional":false},{"id":4001960159,"package_name":"stream-combiner2","ecosystem":"npm","requirements":"1.1.1","direct":false,"kind":"development","optional":false},{"id":4001960160,"package_name":"stream-http","ecosystem":"npm","requirements":"3.1.0","direct":false,"kind":"development","optional":false},{"id":4001960161,"package_name":"stream-splicer","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4001960162,"package_name":"string-width","ecosystem":"npm","requirements":"1.0.2","direct":false,"kind":"development","optional":false},{"id":4001960163,"package_name":"string.prototype.trim","ecosystem":"npm","requirements":"1.2.1","direct":false,"kind":"development","optional":false},{"id":4001960164,"package_name":"string.prototype.trimend","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001960165,"package_name":"string.prototype.trimleft","ecosystem":"npm","requirements":"2.1.2","direct":false,"kind":"development","optional":false},{"id":4001960166,"package_name":"string.prototype.trimright","ecosystem":"npm","requirements":"2.1.2","direct":false,"kind":"development","optional":false},{"id":4001960167,"package_name":"string.prototype.trimstart","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001960168,"package_name":"stringstream","ecosystem":"npm","requirements":"0.0.6","direct":false,"kind":"development","optional":false},{"id":4001960169,"package_name":"strip-ansi","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":4001960170,"package_name":"strip-bom","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001960171,"package_name":"strip-final-newline","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001960172,"package_name":"strip-indent","ecosystem":"npm","requirements":"3.0.0","direct":false,"kind":"development","optional":false},{"id":4001960173,"package_name":"strip-json-comments","ecosystem":"npm","requirements":"2.0.1","direct":false,"kind":"development","optional":false},{"id":4001960174,"package_name":"subarg","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001960175,"package_name":"sum-up","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":4001960176,"package_name":"supports-color","ecosystem":"npm","requirements":"3.2.3","direct":false,"kind":"development","optional":false},{"id":4001960177,"package_name":"supports-hyperlinks","ecosystem":"npm","requirements":"2.2.0","direct":false,"kind":"development","optional":false},{"id":4001960178,"package_name":"syntax-error","ecosystem":"npm","requirements":"1.4.0","direct":false,"kind":"development","optional":false},{"id":4001960179,"package_name":"tap-min","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001960180,"package_name":"tap-out","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001960181,"package_name":"process-nextick-args","ecosystem":"npm","requirements":"1.0.7","direct":false,"kind":"development","optional":false},{"id":4001960182,"package_name":"readable-stream","ecosystem":"npm","requirements":"2.2.9","direct":false,"kind":"development","optional":false},{"id":4001960183,"package_name":"split","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001960184,"package_name":"string_decoder","ecosystem":"npm","requirements":"1.0.3","direct":false,"kind":"development","optional":false},{"id":4001960185,"package_name":"tap-parser","ecosystem":"npm","requirements":"9.3.3","direct":false,"kind":"development","optional":false},{"id":4001960186,"package_name":"tap-spec","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4001960187,"package_name":"figures","ecosystem":"npm","requirements":"1.7.0","direct":false,"kind":"development","optional":false},{"id":4001960188,"package_name":"lodash","ecosystem":"npm","requirements":"4.17.15","direct":false,"kind":"development","optional":false},{"id":4001960189,"package_name":"parse-ms","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001960190,"package_name":"pretty-ms","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001960191,"package_name":"tap-yaml","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001960192,"package_name":"tape","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4001960193,"package_name":"resolve","ecosystem":"npm","requirements":"1.17.0","direct":false,"kind":"development","optional":false},{"id":4001960194,"package_name":"temp-dir","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001960195,"package_name":"tempy","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001960196,"package_name":"type-fest","ecosystem":"npm","requirements":"0.16.0","direct":false,"kind":"development","optional":false},{"id":4001960197,"package_name":"text-extensions","ecosystem":"npm","requirements":"1.9.0","direct":false,"kind":"development","optional":false},{"id":4001960198,"package_name":"through","ecosystem":"npm","requirements":"2.3.8","direct":false,"kind":"development","optional":false},{"id":4001960199,"package_name":"through2","ecosystem":"npm","requirements":"2.0.5","direct":false,"kind":"development","optional":false},{"id":4001960200,"package_name":"timers-browserify","ecosystem":"npm","requirements":"1.4.2","direct":false,"kind":"development","optional":false},{"id":4001960201,"package_name":"to-regex-range","ecosystem":"npm","requirements":"5.0.1","direct":false,"kind":"development","optional":false},{"id":4001960202,"package_name":"tough-cookie","ecosystem":"npm","requirements":"2.3.4","direct":false,"kind":"development","optional":false},{"id":4001960203,"package_name":"tr46","ecosystem":"npm","requirements":"0.0.3","direct":false,"kind":"development","optional":false},{"id":4001960204,"package_name":"traverse","ecosystem":"npm","requirements":"0.6.6","direct":false,"kind":"development","optional":false},{"id":4001960205,"package_name":"trim","ecosystem":"npm","requirements":"0.0.1","direct":false,"kind":"development","optional":false},{"id":4001960206,"package_name":"trim-newlines","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":4001960207,"package_name":"tty-browserify","ecosystem":"npm","requirements":"0.0.1","direct":false,"kind":"development","optional":false},{"id":4001960208,"package_name":"tunnel-agent","ecosystem":"npm","requirements":"0.4.3","direct":false,"kind":"development","optional":false},{"id":4001960209,"package_name":"tweetnacl","ecosystem":"npm","requirements":"0.14.5","direct":false,"kind":"development","optional":false},{"id":4001960210,"package_name":"type-check","ecosystem":"npm","requirements":"0.3.2","direct":false,"kind":"development","optional":false},{"id":4001960211,"package_name":"type-fest","ecosystem":"npm","requirements":"0.18.1","direct":false,"kind":"development","optional":false},{"id":4001960212,"package_name":"typedarray","ecosystem":"npm","requirements":"0.0.6","direct":false,"kind":"development","optional":false},{"id":4001960213,"package_name":"typescript","ecosystem":"npm","requirements":"3.8.3","direct":false,"kind":"development","optional":false},{"id":4001960214,"package_name":"uglify-js","ecosystem":"npm","requirements":"3.9.0","direct":false,"kind":"development","optional":false},{"id":4001960215,"package_name":"umd","ecosystem":"npm","requirements":"3.0.3","direct":false,"kind":"development","optional":false},{"id":4001960216,"package_name":"undeclared-identifiers","ecosystem":"npm","requirements":"1.1.3","direct":false,"kind":"development","optional":false},{"id":4001960217,"package_name":"unique-string","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001960218,"package_name":"universal-user-agent","ecosystem":"npm","requirements":"6.0.0","direct":false,"kind":"development","optional":false},{"id":4001960219,"package_name":"universalify","ecosystem":"npm","requirements":"2.0.0","direct":false,"kind":"development","optional":false},{"id":4001960220,"package_name":"url","ecosystem":"npm","requirements":"0.11.0","direct":false,"kind":"development","optional":false},{"id":4001960221,"package_name":"punycode","ecosystem":"npm","requirements":"1.3.2","direct":false,"kind":"development","optional":false},{"id":4001960222,"package_name":"url-join","ecosystem":"npm","requirements":"4.0.1","direct":false,"kind":"development","optional":false},{"id":4001960223,"package_name":"util","ecosystem":"npm","requirements":"0.10.4","direct":false,"kind":"development","optional":false},{"id":4001960224,"package_name":"inherits","ecosystem":"npm","requirements":"2.0.3","direct":false,"kind":"development","optional":false},{"id":4001960225,"package_name":"uuid","ecosystem":"npm","requirements":"3.4.0","direct":false,"kind":"development","optional":false},{"id":4001960226,"package_name":"verror","ecosystem":"npm","requirements":"1.10.0","direct":false,"kind":"development","optional":false},{"id":4001960227,"package_name":"vm-browserify","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"development","optional":false},{"id":4001960228,"package_name":"webidl-conversions","ecosystem":"npm","requirements":"3.0.1","direct":false,"kind":"development","optional":false},{"id":4001960229,"package_name":"whatwg-url","ecosystem":"npm","requirements":"5.0.0","direct":false,"kind":"development","optional":false},{"id":4001960230,"package_name":"which","ecosystem":"npm","requirements":"1.3.1","direct":false,"kind":"development","optional":false},{"id":4001960231,"package_name":"which-boxed-primitive","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001960232,"package_name":"which-collection","ecosystem":"npm","requirements":"1.0.1","direct":false,"kind":"development","optional":false},{"id":4001960233,"package_name":"which-typed-array","ecosystem":"npm","requirements":"1.1.2","direct":false,"kind":"development","optional":false},{"id":4001960234,"package_name":"window-size","ecosystem":"npm","requirements":"0.1.4","direct":false,"kind":"development","optional":false},{"id":4001960235,"package_name":"word-wrap","ecosystem":"npm","requirements":"1.2.3","direct":false,"kind":"development","optional":false},{"id":4001960236,"package_name":"wordwrap","ecosystem":"npm","requirements":"1.0.0","direct":false,"kind":"development","optional":false},{"id":4001960237,"package_name":"wrap-ansi","ecosystem":"npm","requirements":"2.1.0","direct":false,"kind":"development","optional":false},{"id":4001960238,"package_name":"xtend","ecosystem":"npm","requirements":"4.0.2","direct":false,"kind":"development","optional":false},{"id":4001960239,"package_name":"y18n","ecosystem":"npm","requirements":"3.2.2","direct":false,"kind":"development","optional":false},{"id":4001960240,"package_name":"yallist","ecosystem":"npm","requirements":"3.1.1","direct":false,"kind":"development","optional":false},{"id":4001960241,"package_name":"yaml","ecosystem":"npm","requirements":"1.8.3","direct":false,"kind":"development","optional":false},{"id":4001960242,"package_name":"yargs","ecosystem":"npm","requirements":"3.32.0","direct":false,"kind":"development","optional":false},{"id":4001960243,"package_name":"yargs-parser","ecosystem":"npm","requirements":"20.2.9","direct":false,"kind":"development","optional":false}]},{"ecosystem":"npm","filepath":"package.json","sha":null,"kind":"manifest","created_at":"2022-09-06T10:50:53.564Z","updated_at":"2022-09-06T10:50:53.564Z","repository_link":"https://github.com/gr2m/before-after-hook/blob/main/package.json","dependencies":[{"id":4001960252,"package_name":"browserify","ecosystem":"npm","requirements":"^16.0.0","direct":true,"kind":"development","optional":false},{"id":4001960253,"package_name":"gaze-cli","ecosystem":"npm","requirements":"^0.2.0","direct":true,"kind":"development","optional":false},{"id":4001960254,"package_name":"istanbul","ecosystem":"npm","requirements":"^0.4.0","direct":true,"kind":"development","optional":false},{"id":4001960255,"package_name":"istanbul-coveralls","ecosystem":"npm","requirements":"^1.0.3","direct":true,"kind":"development","optional":false},{"id":4001960256,"package_name":"mkdirp","ecosystem":"npm","requirements":"^1.0.3","direct":true,"kind":"development","optional":false},{"id":4001960257,"package_name":"prettier","ecosystem":"npm","requirements":"^2.0.0","direct":true,"kind":"development","optional":false},{"id":4001960258,"package_name":"rimraf","ecosystem":"npm","requirements":"^3.0.0","direct":true,"kind":"development","optional":false},{"id":4001960259,"package_name":"semantic-release","ecosystem":"npm","requirements":"^19.0.3","direct":true,"kind":"development","optional":false},{"id":4001960260,"package_name":"simple-mock","ecosystem":"npm","requirements":"^0.8.0","direct":true,"kind":"development","optional":false},{"id":4001960261,"package_name":"tap-min","ecosystem":"npm","requirements":"^2.0.0","direct":true,"kind":"development","optional":false},{"id":4001960262,"package_name":"tap-spec","ecosystem":"npm","requirements":"^5.0.0","direct":true,"kind":"development","optional":false},{"id":4001960263,"package_name":"tape","ecosystem":"npm","requirements":"^5.0.0","direct":true,"kind":"development","optional":false},{"id":4001960264,"package_name":"typescript","ecosystem":"npm","requirements":"^3.5.3","direct":true,"kind":"development","optional":false},{"id":4001960265,"package_name":"uglify-js","ecosystem":"npm","requirements":"^3.9.0","direct":true,"kind":"development","optional":false}]}],"score":26.45022708412486,"created_at":"2025-11-11T15:16:36.097Z","updated_at":"2026-08-24T12:32:56.389Z","avatar_url":"https://github.com/gr2m.png","language":"JavaScript","codemeta":null,"publiccode":null,"project_url":"https://summary.ecosyste.ms/api/v1/projects/369235","html_url":"https://summary.ecosyste.ms/projects/369235"}