Files
Sharang Parnerkar 3ec1456b0d
All checks were successful
CI / Clippy (push) Successful in 4m56s
CI / Security Audit (push) Successful in 1m48s
CI / Tests (push) Successful in 5m36s
CI / Deploy MCP (push) Has been skipped
CI / Format (push) Successful in 6s
CI / Detect Changes (push) Successful in 4s
CI / Deploy Agent (push) Successful in 2s
CI / Deploy Dashboard (push) Successful in 2s
CI / Deploy Docs (push) Successful in 3s
docs: rewrite user-facing documentation with screenshots (#11)
2026-03-11 15:26:00 +00:00

4.3 KiB

SBOM & Licenses

The SBOM (Software Bill of Materials) feature provides a complete inventory of all dependencies across your repositories, with vulnerability tracking and license compliance analysis.

What is an SBOM?

A Software Bill of Materials is a list of every component (library, package, framework) that your software depends on, along with version numbers, licenses, and known vulnerabilities. SBOMs are increasingly required for compliance audits, customer security questionnaires, and supply chain transparency.

Certifai generates SBOMs automatically during each scan using Syft for dependency extraction and Grype for vulnerability matching.

Packages Tab

Navigate to SBOM in the sidebar to see the packages tab, which lists all dependencies discovered during scans.

SBOM packages tab with filters and export options

Filtering

Use the filter bar to narrow results:

  • Repository -- select a specific repository or view all
  • Package Manager -- npm, cargo, pip, go, maven, nuget, composer, gem
  • Search -- filter by package name
  • Vulnerabilities -- show all packages, only those with vulnerabilities, or only clean packages
  • License -- filter by specific license (MIT, Apache-2.0, BSD-3-Clause, GPL-3.0, etc.)

Package Details

Each package row shows:

Column Description
Package Package name
Version Installed version
Manager Package manager (npm, cargo, pip, etc.)
License License identifier with color-coded badge
Vulnerabilities Count of known vulnerabilities (click to expand)

Vulnerability Details

Click the vulnerability count on any package to expand inline details showing:

  • Vulnerability ID (e.g. CVE-2024-1234)
  • Source database
  • Severity level
  • Link to the advisory

License Compliance Tab

The license compliance tab helps you understand your licensing obligations across all dependencies.

License compliance tab with copyleft warnings and distribution chart

Copyleft Warnings

If any dependencies use copyleft licenses (GPL, AGPL, LGPL, MPL), a warning banner appears listing the affected packages. Copyleft licenses may impose distribution requirements on your software.

::: warning Copyleft-licensed dependencies can require you to release your source code under the same license. Review flagged packages carefully with your legal team if you distribute proprietary software. :::

License Distribution

A horizontal bar chart visualizes the percentage breakdown of licenses across your dependencies, giving you a quick overview of your licensing profile.

License Table

A detailed table lists every license found:

Column Description
License License identifier
Type Copyleft or Permissive badge
Packages List of packages using this license
Count Number of packages

Copyleft licenses (flagged as potentially restrictive): GPL-2.0, GPL-3.0, AGPL-3.0, LGPL-2.1, LGPL-3.0, MPL-2.0

Permissive licenses (generally safe for commercial use): MIT, Apache-2.0, BSD-2-Clause, BSD-3-Clause, ISC, and others

Export

You can export your SBOM in industry-standard formats:

  1. Select a repository (or export across all repositories)
  2. Choose a format:
    • CycloneDX 1.5 -- JSON format widely supported by security tools
    • SPDX 2.3 -- Linux Foundation standard for license compliance
  3. Click Export
  4. The SBOM downloads as a JSON file

::: tip SBOM exports are useful for compliance audits, customer security questionnaires, government procurement requirements, and supply chain transparency. :::

Compare Tab

Compare the dependency profiles of two repositories side by side:

  1. Select Repository A from the first dropdown
  2. Select Repository B from the second dropdown
  3. View the comparison results:
Section Description
Only in A Packages present in repo A but not in repo B
Only in B Packages present in repo B but not in repo A
Version Diffs Same package with different versions between repos
Common Count of packages that match exactly

This is useful for auditing consistency across microservices, identifying dependency drift, and planning coordinated upgrades.