{"id":936007,"name":"@fastify/csrf","ecosystem":"npm","description":"primary logic behind csrf tokens","homepage":"https://github.com/fastify/csrf#readme","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/fastify/csrf","keywords_array":["csrf","tokens"],"namespace":"fastify","versions_count":14,"first_release_published_at":"2021-05-12T16:29:43.082Z","latest_release_published_at":"2025-05-11T07:47:38.234Z","latest_release_number":"8.0.1","last_synced_at":"2026-04-08T22:16:31.416Z","created_at":"2022-04-07T17:17:51.629Z","updated_at":"2026-04-08T22:16:31.417Z","registry_url":"https://www.npmjs.com/package/@fastify/csrf","install_command":"npm install @fastify/csrf","documentation_url":null,"metadata":{"funding":[{"type":"github","url":"https://github.com/sponsors/fastify"},{"type":"opencollective","url":"https://opencollective.com/fastify"}],"dist-tags":{"next":"7.0.0","latest":"8.0.1"}},"repo_metadata":{"id":38071322,"uuid":"363932275","full_name":"fastify/csrf","owner":"fastify","description":"CSRF utilities for fastify","archived":false,"fork":false,"pushed_at":"2025-09-17T19:48:47.000Z","size":213,"stargazers_count":17,"open_issues_count":0,"forks_count":4,"subscribers_count":12,"default_branch":"main","last_synced_at":"2025-10-05T14:23:03.622Z","etag":null,"topics":["csrf","csrf-protection","fastify","fastify-fork","fastify-plugin"],"latest_commit_sha":null,"homepage":"https://npmjs.com/package/@fastify/csrf","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fastify.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"fastify","open_collective":"fastify"}},"created_at":"2021-05-03T13:05:38.000Z","updated_at":"2025-09-17T19:48:45.000Z","dependencies_parsed_at":"2023-02-06T06:50:11.687Z","dependency_job_id":"46733eb5-13ea-41b2-8eaa-8c18127f78df","html_url":"https://github.com/fastify/csrf","commit_stats":{"total_commits":348,"total_committers":18,"mean_commits":"19.333333333333332","dds":"0.31034482758620685","last_synced_commit":"911e8405c81ec95ad2ce73c7ec2adb9752db3d7d"},"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/fastify/csrf","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fastify","download_url":"https://codeload.github.com/fastify/csrf/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/sbom","scorecard":{"id":393335,"data":{"date":"2025-08-11","repo":{"name":"github.com/fastify/csrf","commit":"ac4a6cbf0a52a8e100dcefccafe54dad673ef902"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":6.1,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":10,"reason":"GitHub workflow tokens follow principle of least privilege","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/ci.yml:23","Info: topLevel 'contents' permission set to 'read': .github/workflows/ci.yml:18"],"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":"Code-Review","score":1,"reason":"Found 5/27 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":1,"reason":"2 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/fastify/csrf/ci.yml/main?enable=pin","Info:   0 out of   1 third-party GitHubAction 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":"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":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"License","score":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"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":"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: github.com/fastify/.github/SECURITY.md:1","Info: Found linked content: github.com/fastify/.github/SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: github.com/fastify/.github/SECURITY.md:1","Info: Found text in security policy: github.com/fastify/.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":"SAST","score":-1,"reason":"internal error: internal error: Client.Checks.ListCheckRunsForRef: error during graphqlHandler.setupCheckRuns: non-200 OK status code: 502 Bad Gateway body: \"\u003chtml\u003e\\r\\n\u003chead\u003e\u003ctitle\u003e502 Bad Gateway\u003c/title\u003e\u003c/head\u003e\\r\\n\u003cbody\u003e\\r\\n\u003ccenter\u003e\u003ch1\u003e502 Bad Gateway\u003c/h1\u003e\u003c/center\u003e\\r\\n\u003chr\u003e\u003ccenter\u003enginx\u003c/center\u003e\\r\\n\u003c/body\u003e\\r\\n\u003c/html\u003e\\r\\n\"","details":null,"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T18:22:30.797Z","repository_id":38071322,"created_at":"2025-08-18T18:22:30.797Z","updated_at":"2025-08-18T18:22:30.797Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281633084,"owners_count":26534792,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-29T02:00:06.901Z","response_time":59,"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":"fastify","name":"Fastify","uuid":"24939410","kind":"organization","description":"Fast and low overhead web framework, for Node.js","email":"hello@fastify.dev","website":"https://fastify.dev","location":"United States of America","twitter":"fastifyjs","company":null,"icon_url":"https://avatars.githubusercontent.com/u/24939410?v=4","repositories_count":138,"last_synced_at":"2025-10-06T11:56:19.670Z","metadata":{"has_sponsors_listing":true,"funding":{"github":"fastify","open_collective":"fastify"}},"html_url":"https://github.com/fastify","funding_links":["https://github.com/sponsors/fastify","https://opencollective.com/fastify"],"total_stars":60348,"followers":1081,"following":0,"created_at":"2022-11-02T16:30:46.974Z","updated_at":"2025-10-06T11:56:19.672Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fastify","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fastify/repositories"},"tags":[{"name":"v8.0.1","sha":"0b9b1f76b8efac5d46c193f8f7d1d295c8856480","kind":"commit","published_at":"2025-05-11T07:47:39.000Z","download_url":"https://codeload.github.com/fastify/csrf/tar.gz/v8.0.1","html_url":"https://github.com/fastify/csrf/releases/tag/v8.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/fastify/csrf@v8.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v8.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v8.0.1/manifests"},{"name":"v8.0.0","sha":"7bcb59d835a4d67e1b3b89406bdd6bb23c75ca09","kind":"tag","published_at":"2025-01-10T18:21:56.000Z","download_url":"https://codeload.github.com/fastify/csrf/tar.gz/v8.0.0","html_url":"https://github.com/fastify/csrf/releases/tag/v8.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/fastify/csrf@v8.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v8.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v8.0.0/manifests"},{"name":"v7.1.1","sha":"ff6827bc794a48a33ad72f00d54ef59e30b9c497","kind":"tag","published_at":"2025-01-02T10:57:54.000Z","download_url":"https://codeload.github.com/fastify/csrf/tar.gz/v7.1.1","html_url":"https://github.com/fastify/csrf/releases/tag/v7.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/fastify/csrf@v7.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v7.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v7.1.1/manifests"},{"name":"v7.1.0","sha":"2ada4122c6d73eb0cc2ca6a2d58d7776b5c498df","kind":"commit","published_at":"2024-12-14T08:19:31.000Z","download_url":"https://codeload.github.com/fastify/csrf/tar.gz/v7.1.0","html_url":"https://github.com/fastify/csrf/releases/tag/v7.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/fastify/csrf@v7.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v7.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v7.1.0/manifests"},{"name":"v7.0.0","sha":"04cedc19f8bac1fec850aa0bad82e1881d60ba2e","kind":"commit","published_at":"2024-09-04T07:24:06.000Z","download_url":"https://codeload.github.com/fastify/csrf/tar.gz/v7.0.0","html_url":"https://github.com/fastify/csrf/releases/tag/v7.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/fastify/csrf@v7.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v7.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v7.0.0/manifests"},{"name":"v6.3.0","sha":"afc6908c9499f5e16078c4cdffd8e5818a134531","kind":"commit","published_at":"2023-10-29T14:47:09.000Z","download_url":"https://codeload.github.com/fastify/csrf/tar.gz/v6.3.0","html_url":"https://github.com/fastify/csrf/releases/tag/v6.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/fastify/csrf@v6.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v6.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v6.3.0/manifests"},{"name":"v6.2.0","sha":"c09d4b6529cafddb6934743643f1e463debb6098","kind":"commit","published_at":"2023-03-09T12:51:55.000Z","download_url":"https://codeload.github.com/fastify/csrf/tar.gz/v6.2.0","html_url":"https://github.com/fastify/csrf/releases/tag/v6.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/fastify/csrf@v6.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v6.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v6.2.0/manifests"},{"name":"v6.1.0","sha":"07e00464b4bccc99475185d0ee897f7351c53bcf","kind":"commit","published_at":"2022-12-05T09:21:57.000Z","download_url":"https://codeload.github.com/fastify/csrf/tar.gz/v6.1.0","html_url":"https://github.com/fastify/csrf/releases/tag/v6.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/fastify/csrf@v6.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v6.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v6.1.0/manifests"},{"name":"v6.0.0","sha":"61e8dffe8f159ba4f3d69c64b187e9936bbedec1","kind":"commit","published_at":"2022-09-23T15:49:24.000Z","download_url":"https://codeload.github.com/fastify/csrf/tar.gz/v6.0.0","html_url":"https://github.com/fastify/csrf/releases/tag/v6.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/fastify/csrf@v6.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v6.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v6.0.0/manifests"},{"name":"v5.1.0","sha":"90a75c42041381be58c3686ed2e9bb57c932b820","kind":"commit","published_at":"2022-07-11T08:06:23.000Z","download_url":"https://codeload.github.com/fastify/csrf/tar.gz/v5.1.0","html_url":"https://github.com/fastify/csrf/releases/tag/v5.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/fastify/csrf@v5.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v5.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v5.1.0/manifests"},{"name":"v5.0.0","sha":"092d4c465d32db57ce58247d7edd7d0f5fb9d690","kind":"commit","published_at":"2022-05-25T08:00:25.000Z","download_url":"https://codeload.github.com/fastify/csrf/tar.gz/v5.0.0","html_url":"https://github.com/fastify/csrf/releases/tag/v5.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/fastify/csrf@v5.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v5.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v5.0.0/manifests"},{"name":"v4.0.1","sha":"80e043102738699c41bd5dd5f0bd94c5a66c9814","kind":"commit","published_at":"2021-05-18T10:19:18.000Z","download_url":"https://codeload.github.com/fastify/csrf/tar.gz/v4.0.1","html_url":"https://github.com/fastify/csrf/releases/tag/v4.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/fastify/csrf@v4.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v4.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v4.0.1/manifests"},{"name":"v4.0.0","sha":"541666ad5809e8667af94f445e514425a278f702","kind":"commit","published_at":"2021-05-12T16:28:55.000Z","download_url":"https://codeload.github.com/fastify/csrf/tar.gz/v4.0.0","html_url":"https://github.com/fastify/csrf/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/fastify/csrf@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/tags/v4.0.0/manifests"}]},"repo_metadata_updated_at":"2025-10-29T13:51:00.171Z","dependent_packages_count":4,"downloads":228821,"downloads_period":"last-month","dependent_repos_count":61,"rankings":{"downloads":0.8497104911561804,"dependent_repos_count":1.732254024251332,"dependent_packages_count":4.509960517247913,"stargazers_count":8.59151019321964,"forks_count":11.585275305524638,"docker_downloads_count":1.7864376262687935,"average":4.84252469294475},"purl":"pkg:npm/%40fastify/csrf","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/npm/@fastify/csrf","docker_dependents_count":3,"docker_downloads_count":2362,"usage_url":"https://repos.ecosyste.ms/usage/npm/@fastify/csrf","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/npm/@fastify/csrf/dependencies","status":null,"funding_links":["https://github.com/sponsors/fastify","https://opencollective.com/fastify"],"critical":null,"issue_metadata":{"last_synced_at":"2025-09-27T09:40:42.601Z","issues_count":0,"pull_requests_count":112,"avg_time_to_close_issue":null,"avg_time_to_close_pull_request":272457.48148148146,"issues_closed_count":0,"pull_requests_closed_count":108,"pull_request_authors_count":9,"issue_authors_count":0,"avg_comments_per_issue":null,"avg_comments_per_pull_request":0.23214285714285715,"merged_pull_requests_count":100,"bot_issues_count":0,"bot_pull_requests_count":46,"past_year_issues_count":0,"past_year_pull_requests_count":39,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":61131.78378378379,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":37,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":0.15384615384615385,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":5,"past_year_merged_pull_requests_count":37,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastify%2Fcsrf/issues","maintainers":[{"login":"Fdawgs","count":49,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/Fdawgs"},{"login":"mcollina","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mcollina"},{"login":"gurgunday","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gurgunday"},{"login":"jsumners","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jsumners"}],"active_maintainers":[{"login":"Fdawgs","count":30,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/Fdawgs"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@fastify%2Fcsrf/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@fastify%2Fcsrf/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@fastify%2Fcsrf/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@fastify%2Fcsrf/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@fastify%2Fcsrf/codemeta","maintainers":[{"uuid":"simenb","login":"simenb","name":null,"email":"sbekkhus91@gmail.com","url":null,"packages_count":263,"html_url":"https://www.npmjs.com/~simenb","role":null,"created_at":"2022-11-13T04:38:50.279Z","updated_at":"2022-11-13T04:38:50.279Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/simenb/packages"},{"uuid":"matteo.collina","login":"matteo.collina","name":null,"email":"hello@matteocollina.com","url":null,"packages_count":669,"html_url":"https://www.npmjs.com/~matteo.collina","role":null,"created_at":"2022-11-13T04:38:50.623Z","updated_at":"2022-11-13T04:38:50.623Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/matteo.collina/packages"},{"uuid":"airhorns","login":"airhorns","name":null,"email":"harry@harry.me","url":null,"packages_count":212,"html_url":"https://www.npmjs.com/~airhorns","role":null,"created_at":"2022-11-13T04:38:50.991Z","updated_at":"2022-11-13T04:38:50.991Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/airhorns/packages"},{"uuid":"galvez","login":"galvez","name":null,"email":"jonasgalvez@gmail.com","url":null,"packages_count":200,"html_url":"https://www.npmjs.com/~galvez","role":null,"created_at":"2022-11-13T04:38:50.240Z","updated_at":"2022-11-13T04:38:50.240Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/galvez/packages"},{"uuid":"delvedor","login":"delvedor","name":null,"email":"tommydelved@gmail.com","url":null,"packages_count":194,"html_url":"https://www.npmjs.com/~delvedor","role":null,"created_at":"2022-11-13T04:38:50.594Z","updated_at":"2022-11-13T04:38:50.594Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/delvedor/packages"},{"uuid":"kibertoad","login":"kibertoad","name":null,"email":"iselwin@gmail.com","url":null,"packages_count":325,"html_url":"https://www.npmjs.com/~kibertoad","role":null,"created_at":"2022-11-13T04:38:51.047Z","updated_at":"2022-11-13T04:38:51.047Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/kibertoad/packages"},{"uuid":"jsumners","login":"jsumners","name":null,"email":"james.sumners@gmail.com","url":null,"packages_count":269,"html_url":"https://www.npmjs.com/~jsumners","role":null,"created_at":"2022-11-13T04:38:50.716Z","updated_at":"2022-11-13T04:38:50.716Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/jsumners/packages"},{"uuid":"simoneb","login":"simoneb","name":null,"email":"simone.busoli@gmail.com","url":null,"packages_count":311,"html_url":"https://www.npmjs.com/~simoneb","role":null,"created_at":"2022-11-13T04:38:50.319Z","updated_at":"2022-11-13T04:38:50.319Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/simoneb/packages"},{"uuid":"zekth","login":"zekth","name":null,"email":"vince.legoff@gmail.com","url":null,"packages_count":155,"html_url":"https://www.npmjs.com/~zekth","role":null,"created_at":"2022-11-13T04:38:50.769Z","updated_at":"2022-11-13T04:38:50.769Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/zekth/packages"},{"uuid":"eomm","login":"eomm","name":null,"email":"behemoth89@gmail.com","url":null,"packages_count":197,"html_url":"https://www.npmjs.com/~eomm","role":null,"created_at":"2022-11-13T04:38:50.894Z","updated_at":"2022-11-13T04:38:50.894Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/eomm/packages"},{"uuid":"fox1t","login":"fox1t","name":null,"email":"maksim@sinik.it","url":null,"packages_count":168,"html_url":"https://www.npmjs.com/~fox1t","role":null,"created_at":"2022-11-13T04:38:50.909Z","updated_at":"2022-11-13T04:38:50.909Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/fox1t/packages"},{"uuid":"climba03003","login":"climba03003","name":null,"email":"kaka@kakawebsitedemo.com","url":null,"packages_count":194,"html_url":"https://www.npmjs.com/~climba03003","role":null,"created_at":"2022-11-13T04:38:51.125Z","updated_at":"2022-11-13T04:38:51.125Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/climba03003/packages"},{"uuid":"fdawgs","login":"fdawgs","name":null,"email":"frazer.dev@icloud.com","url":null,"packages_count":93,"html_url":"https://www.npmjs.com/~fdawgs","role":null,"created_at":"2022-11-13T04:38:51.246Z","updated_at":"2022-11-13T04:38:51.246Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/fdawgs/packages"},{"uuid":"metcoder95","login":"metcoder95","name":null,"email":"me@metcoder.dev","url":null,"packages_count":175,"html_url":"https://www.npmjs.com/~metcoder95","role":null,"created_at":"2023-04-13T02:16:02.982Z","updated_at":"2023-04-13T02:16:02.982Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/metcoder95/packages"},{"uuid":"ilteoood","login":"ilteoood","name":null,"email":"matteopietro.dazzi@gmail.com","url":null,"packages_count":73,"html_url":"https://www.npmjs.com/~ilteoood","role":null,"created_at":"2025-10-05T14:15:01.739Z","updated_at":"2025-10-05T14:15:01.739Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/ilteoood/packages"},{"uuid":"tony133","login":"tony133","name":null,"email":"a.tripodi133@gmail.com","url":null,"packages_count":140,"html_url":"https://www.npmjs.com/~tony133","role":null,"created_at":"2026-04-08T22:16:28.825Z","updated_at":"2026-04-08T22:16:28.825Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/tony133/packages"},{"uuid":"jean-michelet","login":"jean-michelet","name":null,"email":"jean.antoine.michelet@gmail.com","url":null,"packages_count":142,"html_url":"https://www.npmjs.com/~jean-michelet","role":null,"created_at":"2025-07-23T00:45:48.075Z","updated_at":"2025-07-23T00:45:48.075Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/jean-michelet/packages"},{"uuid":"gurgunday","login":"gurgunday","name":null,"email":"hey@gurgun.day","url":null,"packages_count":163,"html_url":"https://www.npmjs.com/~gurgunday","role":null,"created_at":"2023-09-06T08:46:17.938Z","updated_at":"2023-09-06T08:46:17.938Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/gurgunday/packages"}]}