> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scanoss.com/llms.txt
> Use this file to discover all available pages before exploring further.

# License Dataset

> Component identification and license compliance tools.

## What Do You Need?

```mermaid theme={null}
graph TD
    LicenseStart[License Dataset<br/>What do you need?]

    LicenseStart --> Snippet[Detect Undeclared Code<br/>& Snippets]
    LicenseStart --> SBOM[Generate Software<br/>Bill of Materials]
    LicenseStart --> Config[Configure Scanning<br/>Behavior]

    %% Snippet Detection Branch
    subgraph SnippetTools["Snippet Detection Tools"]
        direction LR
        PreCommit[Pre-Commit Hooks]
        PY_Snippet[SCANOSS-PY]
        CC_Snippet[SCANOSS-CC]
        GHA_Snippet[GitHub Actions]
    end

    Snippet --> SnippetTools

    %% SBOM Creation Branch
    subgraph SBOMTools["SBOM Creation Tools"]
        direction LR
        PY_SBOM[SCANOSS-PY]
        Workbench[SBOM Workbench]
        GHA_SBOM[GitHub Actions]
    end

    SBOM --> SBOMTools

    %% Configuration Branch
    subgraph ConfigTools["Configuration Options"]
        direction LR
        Settings[SCANOSS Settings]
        Context[Product Context<br/>Dependency]
    end

    Config --> ConfigTools

    style LicenseStart fill:#66BB6A,stroke:#43A047,stroke-width:3px,color:#fff
    style Snippet fill:#81C784,stroke:#66BB6A,stroke-width:2px,color:#fff
    style SBOM fill:#81C784,stroke:#66BB6A,stroke-width:2px,color:#fff
    style Config fill:#81C784,stroke:#66BB6A,stroke-width:2px,color:#fff

    style SnippetTools fill:#C8E6C9,stroke:#81C784,stroke-width:2px,color:#000
    style SBOMTools fill:#C8E6C9,stroke:#81C784,stroke-width:2px,color:#000
    style ConfigTools fill:#C8E6C9,stroke:#81C784,stroke-width:2px,color:#000

    style PreCommit fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000
    style PY_Snippet fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000
    style CC_Snippet fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000
    style GHA_Snippet fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000

    style PY_SBOM fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000
    style Workbench fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000
    style GHA_SBOM fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000

    style Settings fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000
    style Context fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000
```

## Detect Undeclared Code & Snippets

Identify open source components and code snippets in your codebase to ensure license compliance and transparency.

All tools below are found in **License Dataset > Snippet Detection**.

```mermaid theme={null}
graph TD
    Start{Where do you want to<br/>detect undeclared code?}

    Start -->|On Desktop| PreCommit[Pre-Commit Hooks]
    Start -->|On Desktop| SCANOSSPY[SCANOSS-PY]
    Start -->|On Desktop| SCANOSSCC[SCANOSS-CC]
    Start -->|In CI/CD| GHA[GitHub Actions]

    style Start fill:#66BB6A,stroke:#43A047,stroke-width:3px,color:#fff
    style PreCommit fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000
    style SCANOSSPY fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000
    style SCANOSSCC fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000
    style GHA fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000
```

### [Pre-Commit Hooks](snippet-detection/pre-commit-hooks)

Automatically scan before every commit to catch compliance issues early in development.

### [SCANOSS-PY](snippet-detection/scanoss-py)

Terminal based scanning with dependency analysis.

### [SCANOSS-CC](snippet-detection/scanoss-cc)

Desktop application with side-by-side code comparison, keyboard shortcuts and component identification.

### [GitHub Actions](snippet-detection/github-actions)

Scan on push or pull requests, comment on PRs with detected snippets and enforce compliance policies.

## Generate Software Bill of Materials (SBOM)

Create comprehensive inventories of all software components, dependencies and licenses in your projects.

All tools below are found in **License Dataset > SBOM Creation**.

```mermaid theme={null}
graph TD
    Start{How do you want to<br/>create your SBOM?}

    Start -->|Command Line| SCANOSSPY[SCANOSS-PY]
    Start -->|Visual Interface| Workbench[SBOM Workbench]
    Start -->|In CI/CD| GHA[GitHub Actions]

    style Start fill:#66BB6A,stroke:#43A047,stroke-width:3px,color:#fff
    style SCANOSSPY fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000
    style Workbench fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000
    style GHA fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000
```

### [SCANOSS-PY](sbom-creation/scanoss-py)

Generate SBOMs from the command line with dependency detection.

### [SBOM Workbench](sbom-creation/sbom-workbench)

Visual component identification, license analysis and export to multiple SBOM formats.

### [GitHub Actions](sbom-creation/github-actions)

Automatically generate SBOMs on push or pull requests, store as workflow artifacts.

## Configure Scanning Behavior

Customise how SCANOSS scans your code and manages component detection.

```mermaid theme={null}
graph TD
    Start{What do you want to<br/>configure?}

    Start -->|Scanning Rules| Settings[SCANOSS Settings]
    Start -->|Component Usage & Path Rules| Context[Product Context Dependency]

    style Start fill:#66BB6A,stroke:#43A047,stroke-width:3px,color:#fff
    style Settings fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000
    style Context fill:#A5D6A7,stroke:#81C784,stroke-width:2px,color:#000
```

### [SCANOSS Settings](scanoss-settings)

Control scanning scope, skip files/directories, manage component BOM (include/remove/replace) and set project configurations.

### [Product Context Dependency](product-context-dependency)

Enforce path-specific restrictions, mandate version upgrades and define license compliance rules.

Need help? [Contact our AI assistant](?assistant=open)
