{"date":"2025-10-24T10:56:31Z","repo":{"name":"github.com/firebase/flutterfire","commit":"f9ca81939f541004e8c34935ec8f314821ef6d05"},"scorecard":{"version":"v5.0.0","commit":"ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4"},"score":7.4,"checks":[{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#binary-artifacts"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":10,"reason":"30 out of 30 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#ci-tests"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":10,"reason":"all changesets reviewed","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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"project has 34 contributing companies or organizations","details":["Info: react-native-firebase contributor org/company found, FlutterFlow contributor org/company found, Thmanyah-LLC contributor org/company found, purduewebdevclub contributor org/company found, ankidroid contributor org/company found, firebase contributor org/company found, googlemaps contributor org/company found, firebase devrel contributor org/company found, rolling-scopes contributor org/company found, SharezoneApp contributor org/company found, thmanyah- contributor org/company found, dart-lang contributor org/company found, GDGSeattle contributor org/company found, redibox contributor org/company found, react-native-market contributor org/company found, kullki fintech kss s.a. contributor org/company found, tuenti-ninjas contributor org/company found, dart-lang @flutter @google contributor org/company found, flutter contributor org/company found, angulardart contributor org/company found, full stack developer contributor org/company found, NodeRedis contributor org/company found, google contributor org/company found, flutterflow contributor org/company found, googlers contributor org/company found, notifee contributor org/company found, fluttercommunity contributor org/company found, FlutterVikings contributor org/company found, senior solutions engineer contributor org/company found, invertase contributor org/company found, nexus-xyz contributor org/company found, FirebaseExtended contributor org/company found, 21-23 contributor org/company found, CDTM contributor org/company found, "],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#contributors"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#dependency-update-tool"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/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: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#license"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":7,"reason":"dependency not pinned by hash detected -- score normalized to 7","details":["Warn: third-party GitHubAction not pinned by hash: .github/workflows/all_plugins.yaml:87: update your workflow using https://app.stepsecurity.io/secureworkflow/firebase/flutterfire/all_plugins.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/android.yaml:75: update your workflow using https://app.stepsecurity.io/secureworkflow/firebase/flutterfire/android.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/android.yaml:85: update your workflow using https://app.stepsecurity.io/secureworkflow/firebase/flutterfire/android.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/e2e_tests_fdc.yaml:110: update your workflow using https://app.stepsecurity.io/secureworkflow/firebase/flutterfire/e2e_tests_fdc.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/e2e_tests_fdc.yaml:190: update your workflow using https://app.stepsecurity.io/secureworkflow/firebase/flutterfire/e2e_tests_fdc.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/e2e_tests_fdc.yaml:51: update your workflow using https://app.stepsecurity.io/secureworkflow/firebase/flutterfire/e2e_tests_fdc.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/e2e_tests_fdc.yaml:73: update your workflow using https://app.stepsecurity.io/secureworkflow/firebase/flutterfire/e2e_tests_fdc.yaml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/e2e_tests_fdc.yaml:83: update your workflow using https://app.stepsecurity.io/secureworkflow/firebase/flutterfire/e2e_tests_fdc.yaml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/scripts/start-firebase-emulator.sh:20","Warn: npmCommand not pinned by hash: .github/workflows/scripts/start-firebase-emulator.sh:31","Warn: goCommand not pinned by hash: .github/workflows/all_plugins.yaml:180","Warn: npmCommand not pinned by hash: .github/workflows/android.yaml:66","Warn: npmCommand not pinned by hash: .github/workflows/e2e_tests_fdc.yaml:203","Warn: npmCommand not pinned by hash: .github/workflows/e2e_tests_fdc.yaml:60","Warn: npmCommand not pinned by hash: .github/workflows/e2e_tests_fdc.yaml:141","Warn: npmCommand not pinned by hash: .github/workflows/ios.yaml:80","Warn: npmCommand not pinned by hash: .github/workflows/macos.yaml:78","Warn: npmCommand not pinned by hash: .github/workflows/web.yaml:60","Warn: npmCommand not pinned by hash: .github/workflows/web.yaml:112","Warn: npmCommand not pinned by hash: .github/workflows/web.yaml:169","Info: 59 out of 59 GitHub-owned GitHubAction dependencies pinned","Info: 44 out of 52 third-party GitHubAction dependencies pinned","Info: 0 out of 11 npmCommand dependencies pinned","Info: 0 out of 1 goCommand 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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":7,"reason":"SAST tool is not run on all commits -- score normalized to 7","details":["Warn: 22 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#sast"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: github.com/firebase/.github/SECURITY.md:1","Info: Found linked content: github.com/firebase/.github/SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: github.com/firebase/.github/SECURITY.md:1","Info: Found text in security policy: github.com/firebase/.github/SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#security-policy"}},{"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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/all_plugins.yaml:1","Warn: no topLevel permission defined: .github/workflows/android.yaml:1","Warn: no topLevel permission defined: .github/workflows/e2e_tests_fdc.yaml:1","Warn: no topLevel permission defined: .github/workflows/ios.yaml:1","Warn: no topLevel permission defined: .github/workflows/macos.yaml:1","Info: topLevel permissions set to 'read-all': .github/workflows/ossf-scorecard.yml:18","Warn: no topLevel permission defined: .github/workflows/pr_title.yaml:1","Warn: no topLevel permission defined: .github/workflows/web.yaml:1","Warn: no topLevel permission defined: .github/workflows/windows.yaml: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/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#token-permissions"}},{"name":"Vulnerabilities","score":5,"reason":"5 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-fjxv-7rqg-78g4","Warn: Project is vulnerable to: GHSA-9qxr-qj54-h672","Warn: Project is vulnerable to: GHSA-c76h-2ccp-4975","Warn: Project is vulnerable to: GHSA-cxrh-j4jr-qwg3","Warn: Project is vulnerable to: GHSA-m4v8-wqvr-p9f7"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/ea7e27ed41b76ab879c862fa0ca4cc9c61764ee4/docs/checks.md#vulnerabilities"}}]}