{"id":63346,"name":"bftools","description":"A brainfuck toolbox for python.","url":"https://github.com/bobdotcom/bftools","last_synced_at":"2025-09-08T12:56:34.516Z","repository":{"id":57414803,"uuid":"406479613","full_name":"BobDotCom/bftools","owner":"BobDotCom","description":"A brainfuck toolbox for python.","archived":false,"fork":false,"pushed_at":"2025-08-11T21:59:26.000Z","size":118,"stargazers_count":5,"open_issues_count":16,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-11T23:32:04.260Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BobDotCom.png","metadata":{"files":{"readme":"README.rst","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}},"created_at":"2021-09-14T18:28:54.000Z","updated_at":"2024-12-07T14:10:08.000Z","dependencies_parsed_at":"2023-09-26T12:25:02.698Z","dependency_job_id":"a3aca583-db60-4321-ac21-49c6b003148d","html_url":"https://github.com/BobDotCom/bftools","commit_stats":{"total_commits":96,"total_committers":3,"mean_commits":32.0,"dds":"0.35416666666666663","last_synced_commit":"58e1e78d8e1c1cc8f87fd1e6d3c7ffac5f811fb0"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/BobDotCom/bftools","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BobDotCom","download_url":"https://codeload.github.com/BobDotCom/bftools/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/sbom","scorecard":{"id":23311,"data":{"date":"2025-08-11","repo":{"name":"github.com/BobDotCom/bftools","commit":"58e1e78d8e1c1cc8f87fd1e6d3c7ffac5f811fb0"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.4,"checks":[{"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":"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":"Code-Review","score":0,"reason":"Found 0/10 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"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":"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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/check.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/BobDotCom/bftools/check.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/check.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/BobDotCom/bftools/check.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/check.yml:38: update your workflow using https://app.stepsecurity.io/secureworkflow/BobDotCom/bftools/check.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/check.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/BobDotCom/bftools/check.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/BobDotCom/bftools/lint.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/BobDotCom/bftools/lint.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/BobDotCom/bftools/lint.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint.yml:57: update your workflow using https://app.stepsecurity.io/secureworkflow/BobDotCom/bftools/lint.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint.yml:58: update your workflow using https://app.stepsecurity.io/secureworkflow/BobDotCom/bftools/lint.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint.yml:69: update your workflow using https://app.stepsecurity.io/secureworkflow/BobDotCom/bftools/lint.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/BobDotCom/bftools/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/BobDotCom/bftools/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/BobDotCom/bftools/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:64: update your workflow using https://app.stepsecurity.io/secureworkflow/BobDotCom/bftools/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/todo.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/BobDotCom/bftools/todo.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/todo.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/BobDotCom/bftools/todo.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/check.yml:45","Warn: pipCommand not pinned by hash: .github/workflows/check.yml:24","Warn: pipCommand not pinned by hash: .github/workflows/lint.yml:29","Warn: pipCommand not pinned by hash: .github/workflows/lint.yml:30","Warn: pipCommand not pinned by hash: .github/workflows/lint.yml:65","Warn: pipCommand not pinned by hash: .github/workflows/lint.yml:66","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:33","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:34","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:35","Info:   0 out of  14 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   2 third-party GitHubAction dependencies pinned","Info:   0 out of   9 pipCommand 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/check.yml:1","Warn: no topLevel permission defined: .github/workflows/lint.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1","Warn: no topLevel permission defined: .github/workflows/todo.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"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: MIT License: 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":"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":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 20 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"}}]},"last_synced_at":"2025-08-14T17:18:17.856Z","repository_id":57414803,"created_at":"2025-08-14T17:18:17.857Z","updated_at":"2025-08-14T17:18:17.857Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274188915,"owners_count":25237853,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-08T02:00:09.813Z","response_time":121,"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":"BobDotCom","name":"BobDotCom","uuid":"71356958","kind":"user","description":"I like python.\r\n\r\nPycord contact email: pycorddev@gmail.com","email":"","website":"bobdotcom.xyz","location":"127.0.0.1","twitter":"PycordDev","company":null,"icon_url":"https://avatars.githubusercontent.com/u/71356958?u=707d4038ace9e362581624af98e53ce96e461ad5\u0026v=4","repositories_count":10,"last_synced_at":"2023-03-03T21:57:50.558Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/BobDotCom","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-14T05:51:47.846Z","updated_at":"2023-03-03T21:57:50.563Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BobDotCom","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BobDotCom/repositories"},"packages":[{"id":2654814,"name":"bftools","ecosystem":"pypi","description":"A brainfuck toolbox for python.","homepage":"https://github.com/BobDotCom/bftools","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/BobDotCom/bftools","keywords_array":[],"namespace":null,"versions_count":6,"first_release_published_at":"2021-09-14T19:07:00.000Z","latest_release_published_at":"2022-08-18T15:37:55.000Z","latest_release_number":"0.4.0","last_synced_at":"2025-08-11T23:46:11.164Z","created_at":"2022-04-10T10:11:20.701Z","updated_at":"2025-08-12T08:24:16.364Z","registry_url":"https://pypi.org/project/bftools/","install_command":"pip install bftools --index-url https://pypi.org/simple","documentation_url":"https://bftools.readthedocs.io/en/latest/index.html","metadata":{"funding":null,"documentation":"https://bftools.readthedocs.io/en/latest/index.html","classifiers":["License :: OSI Approved :: MIT License","Operating System :: OS Independent","Programming Language :: Python :: 3"],"normalized_name":"bftools"},"repo_metadata":{"id":57414803,"uuid":"406479613","full_name":"BobDotCom/bftools","owner":"BobDotCom","description":"A brainfuck toolbox for python.","archived":false,"fork":false,"pushed_at":"2025-08-11T21:59:26.000Z","size":118,"stargazers_count":5,"open_issues_count":16,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-11T23:32:04.260Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BobDotCom.png","metadata":{"files":{"readme":"README.rst","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}},"created_at":"2021-09-14T18:28:54.000Z","updated_at":"2024-12-07T14:10:08.000Z","dependencies_parsed_at":"2023-09-26T12:25:02.698Z","dependency_job_id":"a3aca583-db60-4321-ac21-49c6b003148d","html_url":"https://github.com/BobDotCom/bftools","commit_stats":{"total_commits":96,"total_committers":3,"mean_commits":32.0,"dds":"0.35416666666666663","last_synced_commit":"58e1e78d8e1c1cc8f87fd1e6d3c7ffac5f811fb0"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/BobDotCom/bftools","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BobDotCom","download_url":"https://codeload.github.com/BobDotCom/bftools/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270026320,"owners_count":24514409,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-12T02:00:09.011Z","response_time":80,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"BobDotCom","name":"BobDotCom","uuid":"71356958","kind":"user","description":"I like python.\r\n\r\nPycord contact email: pycorddev@gmail.com","email":"","website":"bobdotcom.xyz","location":"127.0.0.1","twitter":"PycordDev","company":null,"icon_url":"https://avatars.githubusercontent.com/u/71356958?u=707d4038ace9e362581624af98e53ce96e461ad5\u0026v=4","repositories_count":10,"last_synced_at":"2023-03-03T21:57:50.558Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/BobDotCom","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-14T05:51:47.846Z","updated_at":"2023-03-03T21:57:50.563Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BobDotCom","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BobDotCom/repositories"},"tags":[{"name":"v0.4.0","sha":"0d363ecfd4b115c32dc13bfe0805ab2cb4c99c92","kind":"tag","published_at":"2022-08-18T15:37:11.000Z","download_url":"https://codeload.github.com/BobDotCom/bftools/tar.gz/v0.4.0","html_url":"https://github.com/BobDotCom/bftools/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/BobDotCom/bftools@v0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/tags/v0.4.0/manifests"},{"name":"v0.3.0","sha":"943759052158da7a19d1964004b45d87b06f60f9","kind":"tag","published_at":"2022-03-20T00:21:59.000Z","download_url":"https://codeload.github.com/BobDotCom/bftools/tar.gz/v0.3.0","html_url":"https://github.com/BobDotCom/bftools/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/BobDotCom/bftools@v0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/tags/v0.3.0/manifests"},{"name":"v0.2.0","sha":"0b37288bf9e47343002e63304397ba32995b65b6","kind":"tag","published_at":"2021-09-15T02:25:05.000Z","download_url":"https://codeload.github.com/BobDotCom/bftools/tar.gz/v0.2.0","html_url":"https://github.com/BobDotCom/bftools/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/BobDotCom/bftools@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/tags/v0.2.0/manifests"},{"name":"v0.1.0","sha":"80615c3138716f1b09e7cb1598173fb7f5e4ec78","kind":"tag","published_at":"2021-09-14T23:13:05.000Z","download_url":"https://codeload.github.com/BobDotCom/bftools/tar.gz/v0.1.0","html_url":"https://github.com/BobDotCom/bftools/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/BobDotCom/bftools@v0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/tags/v0.1.0/manifests"},{"name":"v0.0.2","sha":"68aa822aefb6e4b1ac2c9e455fece3a28ee64671","kind":"tag","published_at":"2021-09-14T19:21:26.000Z","download_url":"https://codeload.github.com/BobDotCom/bftools/tar.gz/v0.0.2","html_url":"https://github.com/BobDotCom/bftools/releases/tag/v0.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/BobDotCom/bftools@v0.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/tags/v0.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/tags/v0.0.2/manifests"},{"name":"v0.0.1","sha":"a38a7ebcb47d66fd3546dc9441c5342e4cf05a90","kind":"tag","published_at":"2021-09-14T19:06:33.000Z","download_url":"https://codeload.github.com/BobDotCom/bftools/tar.gz/v0.0.1","html_url":"https://github.com/BobDotCom/bftools/releases/tag/v0.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/BobDotCom/bftools@v0.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/tags/v0.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/tags/v0.0.1/manifests"}]},"repo_metadata_updated_at":"2025-08-12T08:24:16.363Z","dependent_packages_count":0,"downloads":40,"downloads_period":"last-month","dependent_repos_count":1,"rankings":{"downloads":24.187282880888954,"dependent_repos_count":21.534861440080295,"dependent_packages_count":10.125576461732065,"stargazers_count":23.101428229292196,"forks_count":29.785838786996365,"docker_downloads_count":null,"average":21.746997559797975},"purl":"pkg:pypi/bftools","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/bftools","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pypi/bftools","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/bftools/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-06-29T16:37:20.059Z","issues_count":10,"pull_requests_count":100,"avg_time_to_close_issue":3244571.6,"avg_time_to_close_pull_request":3897782.842696629,"issues_closed_count":5,"pull_requests_closed_count":89,"pull_request_authors_count":3,"issue_authors_count":3,"avg_comments_per_issue":0.8,"avg_comments_per_pull_request":0.81,"merged_pull_requests_count":34,"bot_issues_count":8,"bot_pull_requests_count":99,"past_year_issues_count":0,"past_year_pull_requests_count":21,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":2609149.909090909,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":11,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":0.5238095238095238,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":21,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/issues","maintainers":[{"login":"BobDotCom","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/BobDotCom"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/bftools/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/bftools/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/bftools/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/bftools/related_packages","maintainers":[{"uuid":"BobDotCom","login":"BobDotCom","name":null,"email":null,"url":null,"packages_count":9,"html_url":"https://pypi.org/user/BobDotCom/","role":null,"created_at":"2022-11-25T14:58:00.478Z","updated_at":"2022-11-25T14:58:00.478Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/BobDotCom/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":726136,"maintainers_count":308800,"namespaces_count":0,"keywords_count":238245,"github":"pypi","metadata":{"funded_packages_count":50579},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-09-08T05:32:36.857Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/namespaces"}}],"commits":{"id":542292,"full_name":"BobDotCom/bftools","default_branch":"main","committers":[{"name":"BobDotCom","email":"71356958+BobDotCom","login":"BobDotCom","count":62},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":25},{"name":"pre-commit-ci[bot]","email":"66853113+pre-commit-ci[bot]","login":"pre-commit-ci[bot]","count":9}],"total_commits":96,"total_committers":3,"total_bot_commits":34,"total_bot_committers":2,"mean_commits":32.0,"dds":0.35416666666666663,"past_year_committers":[{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":9},{"name":"pre-commit-ci[bot]","email":"66853113+pre-commit-ci[bot]","login":"pre-commit-ci[bot]","count":3}],"past_year_total_commits":12,"past_year_total_committers":2,"past_year_total_bot_commits":12,"past_year_total_bot_committers":2,"past_year_mean_commits":6.0,"past_year_dds":0.25,"last_synced_at":"2023-10-25T13:53:27.978Z","last_synced_commit":"58e1e78d8e1c1cc8f87fd1e6d3c7ffac5f811fb0","created_at":"2023-03-09T04:16:14.398Z","updated_at":"2023-10-25T13:53:27.979Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-08T00:00:16.827Z","repositories_count":5483322,"commits_count":854270774,"contributors_count":31138750,"owners_count":908526,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"BobDotCom/bftools","html_url":"https://github.com/BobDotCom/bftools","last_synced_at":"2025-08-13T03:33:21.180Z","status":"error","issues_count":10,"pull_requests_count":100,"avg_time_to_close_issue":3244571.6,"avg_time_to_close_pull_request":3897782.842696629,"issues_closed_count":5,"pull_requests_closed_count":89,"pull_request_authors_count":3,"issue_authors_count":3,"avg_comments_per_issue":0.8,"avg_comments_per_pull_request":0.81,"merged_pull_requests_count":34,"bot_issues_count":8,"bot_pull_requests_count":99,"past_year_issues_count":0,"past_year_pull_requests_count":21,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":2609149.909090909,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":11,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":0.5238095238095238,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":21,"past_year_merged_pull_requests_count":0,"created_at":"2023-05-14T09:44:59.081Z","updated_at":"2025-09-03T06:47:26.823Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/BobDotCom%2Fbftools/issues","issue_labels_count":{"todo comment":6,"type: todo":6,"branch: main":5,"branch: pre-commit-ci-update-config":1},"pull_request_labels_count":{"dependencies":101,"python":78,"github_actions":12},"issue_author_associations_count":{"NONE":8},"pull_request_author_associations_count":{"CONTRIBUTOR":110,"OWNER":1},"issue_authors":{"github-actions[bot]":6,"DuangduangChen":1,"ultrabear":1},"pull_request_authors":{"dependabot[bot]":101,"pre-commit-ci[bot]":9,"BobDotCom":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-03T00:00:08.273Z","repositories_count":10067265,"issues_count":31172653,"pull_requests_count":94989804,"authors_count":10688041,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{"dependencies":34,"python":23,"github_actions":11},"past_year_issue_author_associations_count":{},"past_year_pull_request_author_associations_count":{"CONTRIBUTOR":34},"past_year_issue_authors":{},"past_year_pull_request_authors":{"dependabot[bot]":34},"maintainers":[{"login":"BobDotCom","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/BobDotCom"}],"active_maintainers":[]},"events":{"total":{"WatchEvent":1,"DeleteEvent":15,"IssueCommentEvent":14,"PushEvent":12,"PullRequestEvent":34,"CreateEvent":20},"last_year":{"WatchEvent":1,"DeleteEvent":15,"IssueCommentEvent":14,"PushEvent":12,"PullRequestEvent":34,"CreateEvent":20}},"keywords":[],"dependencies":[{"ecosystem":"pypi","filepath":"docs/requirements.txt","sha":null,"kind":"manifest","created_at":"2022-08-30T06:51:30.103Z","updated_at":"2022-08-30T06:51:30.103Z","repository_link":"https://github.com/BobDotCom/bftools/blob/main/docs/requirements.txt","dependencies":[{"id":3276315921,"package_name":"sphinx_rtd_theme","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"requirements-dev.txt","sha":null,"kind":"manifest","created_at":"2022-08-30T06:51:30.154Z","updated_at":"2022-08-30T06:51:30.154Z","repository_link":"https://github.com/BobDotCom/bftools/blob/main/requirements-dev.txt","dependencies":[{"id":3276315938,"package_name":"pylint","ecosystem":"pypi","requirements":"==2.14.5","direct":true,"kind":"development","optional":false},{"id":3276315939,"package_name":"pytest","ecosystem":"pypi","requirements":"==7.1.2","direct":true,"kind":"development","optional":false},{"id":3276315940,"package_name":"pytest-asyncio","ecosystem":"pypi","requirements":"==0.19.0","direct":true,"kind":"development","optional":false},{"id":3276315941,"package_name":"pytest-order","ecosystem":"pypi","requirements":"==1.0.1","direct":true,"kind":"development","optional":false},{"id":3276315942,"package_name":"mypy","ecosystem":"pypi","requirements":"==0.971","direct":true,"kind":"development","optional":false},{"id":3276315943,"package_name":"coverage","ecosystem":"pypi","requirements":"==6.4.4","direct":true,"kind":"development","optional":false},{"id":3276315944,"package_name":"pre-commit","ecosystem":"pypi","requirements":"==2.20.0","direct":true,"kind":"development","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/check.yml","sha":null,"kind":"manifest","created_at":"2023-02-18T11:06:31.054Z","updated_at":"2023-02-18T11:06:31.054Z","repository_link":"https://github.com/BobDotCom/bftools/blob/main/.github/workflows/check.yml","dependencies":[{"id":7760275904,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":7760275905,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/lint.yml","sha":null,"kind":"manifest","created_at":"2023-02-18T11:06:31.954Z","updated_at":"2023-02-18T11:06:31.954Z","repository_link":"https://github.com/BobDotCom/bftools/blob/main/.github/workflows/lint.yml","dependencies":[{"id":7760276120,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":7760276121,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":7760276122,"package_name":"actions/cache","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/test.yml","sha":null,"kind":"manifest","created_at":"2023-02-18T11:06:32.562Z","updated_at":"2023-02-18T11:06:32.562Z","repository_link":"https://github.com/BobDotCom/bftools/blob/main/.github/workflows/test.yml","dependencies":[{"id":7760276244,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":7760276245,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":7760276246,"package_name":"actions/cache","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":7760276247,"package_name":"codecov/codecov-action","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/todo.yml","sha":null,"kind":"manifest","created_at":"2023-02-18T11:06:33.463Z","updated_at":"2023-02-18T11:06:33.463Z","repository_link":"https://github.com/BobDotCom/bftools/blob/main/.github/workflows/todo.yml","dependencies":[{"id":7760276271,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":7760276272,"package_name":"ribtoks/tdg-github-action","ecosystem":"actions","requirements":"v0.4.6-beta","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"pypi","filepath":"requirements.txt","sha":null,"kind":"manifest","created_at":"2023-02-18T11:06:35.013Z","updated_at":"2023-02-18T11:06:35.013Z","repository_link":"https://github.com/BobDotCom/bftools/blob/main/requirements.txt","dependencies":[{"id":7760276273,"package_name":"typing_extensions","ecosystem":"pypi","requirements":"\u003e=3.10.0,\u003c5","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"setup.py","sha":null,"kind":"manifest","created_at":"2023-09-26T12:25:02.692Z","updated_at":"2023-09-26T12:25:02.692Z","repository_link":"https://github.com/BobDotCom/bftools/blob/main/setup.py","dependencies":[]}],"score":7.880804344674901,"created_at":"2025-09-08T11:18:29.487Z","updated_at":"2025-10-07T08:24:32.740Z","avatar_url":"https://github.com/BobDotCom.png","language":"Python","category":null,"sub_category":null,"monthly_downloads":40,"funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["mesh","energy-system-model","medical-imaging","regionalization","energy-system","exoplanet","standardization","interactive","optim","observability"],"project_url":"https://science.ecosyste.ms/api/v1/projects/63346","html_url":"https://science.ecosyste.ms/projects/63346"}