{"spdxVersion":"SPDX-2.3","dataLicense":"CC0-1.0","SPDXID":"SPDXRef-DOCUMENT","name":"com.github.danielviki/SortingAlgorithmVisualizer","documentNamespace":"https://spdx.org/spdxdocs/protobom/12e28aa1-df32-4c4a-a66d-d6971e386afa","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-20251216165153-1f3f3060931e+dirty","Tool: GitHub.com-Dependency-Graph"],"created":"2025-12-25T03:13:28Z"},"packages":[{"name":"axios","SPDXID":"SPDXRef-npm-axios-1.6.2-4bd7c0","versionInfo":"^1.6.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:npm/axios@%5E1.6.2"}]},{"name":"@vitejs/plugin-vue","SPDXID":"SPDXRef-npm-vitejs-plugin-vue-4.5.0-97b672","versionInfo":"^4.5.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:npm/%40vitejs/plugin-vue@%5E4.5.0"}]},{"name":"vite","SPDXID":"SPDXRef-npm-vite-5.0.0-23e4ca","versionInfo":"^5.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:npm/vite@%5E5.0.0"}]},{"name":"vue","SPDXID":"SPDXRef-npm-vue-3.3.4-c0db08","versionInfo":"^3.3.4","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:npm/vue@%5E3.3.4"}]},{"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":"click","SPDXID":"SPDXRef-pypi-click-75c946","versionInfo":"\u003e= 8.1.7","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/click"}]},{"name":"flask","SPDXID":"SPDXRef-pypi-flask-75c946","versionInfo":"\u003e= 3.0.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flask"}]},{"name":"markupsafe","SPDXID":"SPDXRef-pypi-markupsafe-75c946","versionInfo":"\u003e= 2.1.3","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/markupsafe"}]},{"name":"blinker","SPDXID":"SPDXRef-pypi-blinker-75c946","versionInfo":"\u003e= 1.7.0","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/blinker"}]},{"name":"flask-cors","SPDXID":"SPDXRef-pypi-flask-cors-75c946","versionInfo":"\u003e= 4.0.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/flask-cors"}]},{"name":"itsdangerous","SPDXID":"SPDXRef-pypi-itsdangerous-75c946","versionInfo":"\u003e= 2.1.2","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/itsdangerous"}]},{"name":"jinja2","SPDXID":"SPDXRef-pypi-jinja2-75c946","versionInfo":"\u003e= 3.1.5","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/jinja2"}]},{"name":"werkzeug","SPDXID":"SPDXRef-pypi-werkzeug-75c946","versionInfo":"\u003e= 3.0.6","downloadLocation":"NOASSERTION","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:pypi/werkzeug"}]},{"name":"com.github.danielviki/SortingAlgorithmVisualizer","SPDXID":"SPDXRef-github-danielviki-SortingAlgorithmVisualizer-main-aef18c","versionInfo":"main","downloadLocation":"git+https://github.com/danielviki/SortingAlgorithmVisualizer","filesAnalyzed":false,"externalRefs":[{"referenceCategory":"PACKAGE-MANAGER","referenceType":"purl","referenceLocator":"pkg:github/danielviki/SortingAlgorithmVisualizer@main"}]}],"relationships":[{"spdxElementId":"SPDXRef-github-danielviki-SortingAlgorithmVisualizer-main-aef18c","relatedSpdxElement":"SPDXRef-npm-axios-1.6.2-4bd7c0","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-danielviki-SortingAlgorithmVisualizer-main-aef18c","relatedSpdxElement":"SPDXRef-npm-vitejs-plugin-vue-4.5.0-97b672","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-danielviki-SortingAlgorithmVisualizer-main-aef18c","relatedSpdxElement":"SPDXRef-npm-vite-5.0.0-23e4ca","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-danielviki-SortingAlgorithmVisualizer-main-aef18c","relatedSpdxElement":"SPDXRef-npm-vue-3.3.4-c0db08","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-danielviki-SortingAlgorithmVisualizer-main-aef18c","relatedSpdxElement":"SPDXRef-pypi-markupsafe-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-danielviki-SortingAlgorithmVisualizer-main-aef18c","relatedSpdxElement":"SPDXRef-pypi-blinker-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-danielviki-SortingAlgorithmVisualizer-main-aef18c","relatedSpdxElement":"SPDXRef-pypi-flask-cors-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-danielviki-SortingAlgorithmVisualizer-main-aef18c","relatedSpdxElement":"SPDXRef-pypi-jinja2-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-danielviki-SortingAlgorithmVisualizer-main-aef18c","relatedSpdxElement":"SPDXRef-pypi-python-dotenv-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-danielviki-SortingAlgorithmVisualizer-main-aef18c","relatedSpdxElement":"SPDXRef-pypi-itsdangerous-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-danielviki-SortingAlgorithmVisualizer-main-aef18c","relatedSpdxElement":"SPDXRef-pypi-werkzeug-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-danielviki-SortingAlgorithmVisualizer-main-aef18c","relatedSpdxElement":"SPDXRef-pypi-click-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-github-danielviki-SortingAlgorithmVisualizer-main-aef18c","relatedSpdxElement":"SPDXRef-pypi-flask-75c946","relationshipType":"DEPENDS_ON"},{"spdxElementId":"SPDXRef-DOCUMENT","relatedSpdxElement":"SPDXRef-github-danielviki-SortingAlgorithmVisualizer-main-aef18c","relationshipType":"DESCRIBES"}]}