{"spdxVersion":"SPDX-2.3","dataLicense":"CC0-1.0","SPDXID":"SPDXRef-DOCUMENT","name":"com.github.messangi/PocketFlow-Tutorial-Codebase-Knowledge","documentNamespace":"https://spdx.org/spdxdocs/protobom/518e9a98-9990-45f6-bb61-47612c262980","comment":"Exact versions could not be resolved for some packages. For more information: https://docs.github.com/en/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph#dependencies-included.","creationInfo":{"creators":["Tool: protobom-v0.0.0-20260403143834-a075a09f5b04+dirty","Tool: GitHub.com-Dependency-Graph"],"created":"2026-04-05T07:03:30Z"},"packages":[{"name":"requests","SPDXID":"SPDXRef-pypi-requests-75c946","versionInfo":"\u003e= 2.28.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/requests"}]},{"name":"gitpython","SPDXID":"SPDXRef-pypi-gitpython-75c946","versionInfo":"\u003e= 3.1.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/gitpython"}]},{"name":"pocketflow","SPDXID":"SPDXRef-pypi-pocketflow-75c946","versionInfo":"\u003e= 0.0.1","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pocketflow"}]},{"name":"google-genai","SPDXID":"SPDXRef-pypi-google-genai-75c946","versionInfo":"\u003e= 1.9.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-genai"}]},{"name":"openai","SPDXID":"SPDXRef-pypi-openai-75c946","versionInfo":"\u003e= 1.84.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/openai"}]},{"name":"python-dotenv","SPDXID":"SPDXRef-pypi-python-dotenv-75c946","versionInfo":"\u003e= 1.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/python-dotenv"}]},{"name":"pyyaml","SPDXID":"SPDXRef-pypi-pyyaml-75c946","versionInfo":"\u003e= 6.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pyyaml"}]},{"name":"google-cloud-aiplatform","SPDXID":"SPDXRef-pypi-google-cloud-aiplatform-75c946","versionInfo":"\u003e= 1.25.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/google-cloud-aiplatform"}]},{"name":"pathspec","SPDXID":"SPDXRef-pypi-pathspec-75c946","versionInfo":"\u003e= 0.11.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/pathspec"}]},{"name":"com.github.messangi/PocketFlow-Tutorial-Codebase-Knowledge","SPDXID":"SPDXRef-github-messangi-PocketFlow-Tutorial-Codebase-Knowledge-main-39a096","versionInfo":"main","downloadLocation":"git+https://github.com/messangi/PocketFlow-Tutorial-Codebase-Knowledge","filesAnalyzed":false,"licenseDeclared":"MIT","externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:github/messangi/PocketFlow-Tutorial-Codebase-Knowledge@main"}]}],"relationships":[{"spdxElementId":"SPDXRef-github-messangi-PocketFlow-Tutorial-Codebase-Knowledge-main-39a096","relatedSpdxElement":"SPDXRef-pypi-requests-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-messangi-PocketFlow-Tutorial-Codebase-Knowledge-main-39a096","relatedSpdxElement":"SPDXRef-pypi-google-genai-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-messangi-PocketFlow-Tutorial-Codebase-Knowledge-main-39a096","relatedSpdxElement":"SPDXRef-pypi-pyyaml-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-messangi-PocketFlow-Tutorial-Codebase-Knowledge-main-39a096","relatedSpdxElement":"SPDXRef-pypi-google-cloud-aiplatform-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-messangi-PocketFlow-Tutorial-Codebase-Knowledge-main-39a096","relatedSpdxElement":"SPDXRef-pypi-gitpython-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-messangi-PocketFlow-Tutorial-Codebase-Knowledge-main-39a096","relatedSpdxElement":"SPDXRef-pypi-pocketflow-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-messangi-PocketFlow-Tutorial-Codebase-Knowledge-main-39a096","relatedSpdxElement":"SPDXRef-pypi-openai-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-messangi-PocketFlow-Tutorial-Codebase-Knowledge-main-39a096","relatedSpdxElement":"SPDXRef-pypi-python-dotenv-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-messangi-PocketFlow-Tutorial-Codebase-Knowledge-main-39a096","relatedSpdxElement":"SPDXRef-pypi-pathspec-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-DOCUMENT","relatedSpdxElement":"SPDXRef-github-messangi-PocketFlow-Tutorial-Codebase-Knowledge-main-39a096","relationshipType":"DESCRIBES"}]}