{"bomFormat":"CycloneDX","specVersion":"1.5","version":1,"serialNumber":"urn:uuid:8242e269-786f-4cb9-96ae-6909c544ba94","metadata":{"timestamp":"2026-10-06T15:38:15Z","tools":[{"vendor":"Ecosystems","name":"Ecosystems SBOM Generator"}],"component":{"type":"application","name":"circuitpython/CircuitPython_Library_Screenshot_Maker"}},"components":[{"type":"library","name":"findimports","version":"*","purl":"pkg:pypi/findimports","properties":[{"name":"filePath","value":"requirements.txt"}]},{"type":"library","name":"pillow","version":"*","purl":"pkg:pypi/pillow","properties":[{"name":"filePath","value":"requirements.txt"}]},{"type":"library","name":"requests","version":"*","purl":"pkg:pypi/requests","properties":[{"name":"filePath","value":"requirements.txt"}]},{"type":"library","name":"click","version":"*","purl":"pkg:pypi/click","properties":[{"name":"filePath","value":"requirements.txt"}]},{"type":"library","name":"actions/checkout","version":"v2","purl":"pkg:githubactions/actions/checkout","properties":[{"name":"filePath","value":".github/workflows/build-images.yml"}]},{"type":"library","name":"actions/upload-artifact","version":"v4","purl":"pkg:githubactions/actions/upload-artifact","properties":[{"name":"filePath","value":".github/workflows/build-images.yml"}]},{"type":"library","name":"actions/checkout","version":"v2","purl":"pkg:githubactions/actions/checkout","properties":[{"name":"filePath","value":".github/workflows/pre-commit.yml"}]},{"type":"library","name":"actions/setup-python","version":"v4","purl":"pkg:githubactions/actions/setup-python","properties":[{"name":"filePath","value":".github/workflows/pre-commit.yml"}]},{"type":"library","name":"pre-commit/action","version":"v2.0.2","purl":"pkg:githubactions/pre-commit/action","properties":[{"name":"filePath","value":".github/workflows/pre-commit.yml"}]}]}