Metadata-Version: 2.3
Name: ossbom
Version: 1.0.6
Summary: Main public API
Author: dreadnought
Requires-Python: >=3.12,<4.0
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Dist: cyclonedx-python-lib[json-validation] (>=8.4.0,<9.0.0)
Requires-Dist: packageurl-python (>=0.16.0,<0.17.0)
Requires-Dist: poetry-plugin-export (>=1.9.0,<2.0.0)
Description-Content-Type: text/markdown

# OSSBOM

This library manages the creations of SBOMs in our custom format, as well as conversion methods to create json dicts and CycloneDX SBOMs.

## Requirements


## Schema OSSBOM

```mermaid
classDiagram
    class OSSBOM {
        +string name
        +datetime created
        +string creator // optional
        +string version
        +string bomFormat // == OSSBOM
        +Environment env
        +List~Component~ components
        +List~Vulnerability~ vulnerabilities
    }

    class Environment {
        +string github_repo // optional
        +string github_org // optional
        +string branch // optional
        +string machine_name // optional
        +string product_env // optional
    }

    class Component {
        +string name
        +string version
        +string source // optional
        +string env // optional
        +string type // == library
    }

    class Vulnerability {
        +string purl
        +string description
        +string reference // optional
        +string type
    }

    OSSBOM --> Environment : has
    OSSBOM --> "many" Component : contains
    OSSBOM --> "many" Vulnerability : contains
