diff --git a/_d2/generation.d2 b/_d2/generation.d2
index 5b3f4b6..33c8724 100644
--- a/_d2/generation.d2
+++ b/_d2/generation.d2
@@ -2,18 +2,22 @@ direction: right
Generation: {
class: accent
+ icon: node_modules/@tabler/icons/icons/outline/settings-cog.svg
}
Augmentation: {
class: accent
+ icon: node_modules/@tabler/icons/icons/outline/puzzle.svg
}
Enrichment: {
class: accent
+ icon: node_modules/@tabler/icons/icons/outline/wand.svg
}
Signing: {
class: accent
+ icon: node_modules/@tabler/icons/icons/outline/signature.svg
style: {
stroke-dash: 3
}
diff --git a/_d2/lifecycle.d2 b/_d2/lifecycle.d2
index a078fb8..e979bea 100644
--- a/_d2/lifecycle.d2
+++ b/_d2/lifecycle.d2
@@ -5,18 +5,22 @@ Authoring: {
Generation: {
class: accent
+ icon: node_modules/@tabler/icons/icons/outline/settings-cog.svg
}
Augmentation: {
class: accent
+ icon: node_modules/@tabler/icons/icons/outline/puzzle.svg
}
Enrichment: {
class: accent
+ icon: node_modules/@tabler/icons/icons/outline/wand.svg
}
Signing: {
class: accent
+ icon: node_modules/@tabler/icons/icons/outline/signature.svg
style: {
stroke-dash: 3
}
@@ -37,10 +41,12 @@ Authoring: {
Distribution: {
class: accent
+ icon: node_modules/@tabler/icons/icons/outline/send.svg
}
Analysis: {
class: accent
+ icon: node_modules/@tabler/icons/icons/outline/chart-line.svg
}
Authoring.Signing -> Distribution: {
diff --git a/_d2/quality-gap.d2 b/_d2/quality-gap.d2
new file mode 100644
index 0000000..73f13e7
--- /dev/null
+++ b/_d2/quality-gap.d2
@@ -0,0 +1,37 @@
+direction: right
+
+SBOM: {
+ class: secondary
+ label: "Your SBOM"
+ icon: node_modules/@tabler/icons/icons/outline/file-code.svg
+}
+
+Lockfile: {
+ class: secondary
+ label: "Your Lockfile"
+ icon: node_modules/@tabler/icons/icons/outline/file-text.svg
+}
+
+Action: {
+ class: highlight
+ label: "sbomify action"
+ icon: node_modules/@tabler/icons/icons/filled/bolt.svg
+}
+
+Quality: {
+ class: primary
+ label: "Quality SBOM"
+ icon: node_modules/@tabler/icons/icons/filled/shield-check.svg
+}
+
+SBOM -> Action: "or" {
+ class: flow
+}
+
+Lockfile -> Action: {
+ class: flow
+}
+
+Action -> Quality: {
+ class: flow-pink
+}
diff --git a/_d2/sbomify-action-flow.d2 b/_d2/sbomify-action-flow.d2
new file mode 100644
index 0000000..37fe7cd
--- /dev/null
+++ b/_d2/sbomify-action-flow.d2
@@ -0,0 +1,77 @@
+direction: right
+
+Input: {
+ class: secondary
+ label: "Your Code"
+ icon: node_modules/@tabler/icons/icons/outline/code.svg
+}
+
+Action: {
+ class: group
+ label: "sbomify action"
+
+ Generate: {
+ class: primary
+ label: "Generate"
+ icon: node_modules/@tabler/icons/icons/outline/settings-cog.svg
+ }
+
+ Augment: {
+ class: accent
+ label: "Augment"
+ icon: node_modules/@tabler/icons/icons/outline/puzzle.svg
+ }
+
+ Enrich: {
+ class: accent
+ label: "Enrich"
+ icon: node_modules/@tabler/icons/icons/outline/wand.svg
+ }
+
+ Generate -> Augment: {
+ class: flow
+ }
+
+ Augment -> Enrich: {
+ class: flow
+ }
+}
+
+Outputs: {
+ class: group
+ label: ""
+
+ Quality: {
+ class: highlight
+ label: "Compliance-Ready"
+ icon: node_modules/@tabler/icons/icons/filled/rosette-discount-check.svg
+ }
+
+ Compliance: {
+ class: primary
+ label: "Regulation Checks"
+ icon: node_modules/@tabler/icons/icons/outline/checklist.svg
+ }
+
+ Attestation: {
+ class: primary
+ label: "Verify Attestation"
+ icon: node_modules/@tabler/icons/icons/outline/certificate.svg
+ }
+}
+
+Input -> Action.Generate: {
+ class: flow
+}
+
+Action.Enrich -> Outputs.Quality: {
+ class: flow-pink
+}
+
+Outputs.Quality -> Outputs.Compliance: {
+ class: flow
+}
+
+Outputs.Quality -> Outputs.Attestation: {
+ class: flow
+}
diff --git a/_d2/store-analyze-enrich.d2 b/_d2/store-analyze-enrich.d2
index 54e9216..514f02d 100644
--- a/_d2/store-analyze-enrich.d2
+++ b/_d2/store-analyze-enrich.d2
@@ -7,16 +7,19 @@ CI: {
Generate: {
class: primary
label: "Generate"
+ icon: node_modules/@tabler/icons/icons/outline/settings-cog.svg
}
Enrich: {
class: secondary
label: "Enrich & Augment"
+ icon: node_modules/@tabler/icons/icons/outline/wand.svg
}
Sign: {
class: accent
label: "Sign"
+ icon: node_modules/@tabler/icons/icons/outline/signature.svg
}
Generate -> Enrich: {
@@ -38,6 +41,7 @@ sbomify: {
Analysis: {
class: accent
label: "Analysis"
+ icon: node_modules/@tabler/icons/icons/outline/chart-line.svg
}
CI.Sign -> sbomify: Upload {
diff --git a/_d2/theme.d2 b/_d2/theme.d2
index 8e24236..2d57554 100644
--- a/_d2/theme.d2
+++ b/_d2/theme.d2
@@ -1,92 +1,114 @@
-# Sbomify D2 Theme
+# Sbomify D2 Theme - Clean & Modern
+#
+# Brand colors:
+# - Dark Blue: #201B4C
+# - Purple: #8A7DFF
+# - Pink: #d874a9
+# - Light Pink: #FCDDEC
+# - Background: #F8F9FC
# Global Defaults
style: {
fill: "transparent"
stroke: "transparent"
stroke-width: 0
- font-size: 16
- border-radius: 16
+ font-size: 14
+ border-radius: 8
}
-# Reusable Classes
classes: {
- # Primary: Dark Blue Background (matches site), Purple Stroke
+ # Primary - Purple border, light fill
primary: {
style: {
- fill: "#201B4C"
+ fill: "#FFFFFF"
stroke: "#8A7DFF"
- font-color: "#d874a9"
+ font-color: "#201B4C"
stroke-width: 2
shadow: false
- bold: true
- border-radius: 16
+ border-radius: 8
+ font-size: 14
}
}
- # Accent: Dark Blue Background, Pink Stroke
+ # Accent - Pink border, light fill
accent: {
style: {
- fill: "#201B4C"
+ fill: "#FFFFFF"
stroke: "#d874a9"
- font-color: "#d874a9"
+ font-color: "#201B4C"
stroke-width: 2
shadow: false
- bold: true
- border-radius: 16
+ border-radius: 8
+ font-size: 14
}
}
- # Secondary: Dark Background, Light Pink Stroke
+ # Secondary - Light pink border, light fill (for less emphasis)
secondary: {
style: {
- fill: "#201B4C"
- stroke: "#FCDDEC"
- font-color: "#d874a9"
+ fill: "#FFFFFF"
+ stroke: "#CCCCCC"
+ font-color: "#666666"
stroke-width: 2
shadow: false
- bold: true
- border-radius: 16
+ border-radius: 8
+ font-size: 14
+ stroke-dash: 3
}
}
- # Group Container Style
- # Use this class for grouping boxes like "Authoring"
- group: {
+ # Highlight - Filled purple (for key items)
+ highlight: {
style: {
+ fill: "#8A7DFF"
stroke: "#8A7DFF"
- stroke-dash: 3
- fill: "#F5F5FA"
- font-color: "#141035"
- border-radius: 16
+ font-color: "#FFFFFF"
stroke-width: 2
+ shadow: false
+ border-radius: 8
+ font-size: 14
+ bold: true
+ }
+ }
+
+ # Group Container
+ group: {
+ style: {
+ fill: "#F8F9FC"
+ stroke: "#E2E4E9"
+ font-color: "#201B4C"
+ stroke-width: 1
+ border-radius: 12
+ font-size: 13
}
}
- # Visual style for stacks
+ # Stack style
stack: {
style: {
multiple: true
}
}
- # Animated Purple Connection
+ # Flow - Purple animated connection
flow: {
style: {
animated: true
stroke: "#8A7DFF"
- font-color: "#8A7DFF"
+ font-color: "#666666"
stroke-width: 2
+ font-size: 12
}
}
- # Animated Pink Connection
+ # Flow Pink - Pink animated connection
flow-pink: {
style: {
animated: true
stroke: "#d874a9"
- font-color: "#d874a9"
+ font-color: "#666666"
stroke-width: 2
+ font-size: 12
}
}
}
diff --git a/_d2/trust-chain.d2 b/_d2/trust-chain.d2
new file mode 100644
index 0000000..cdb795c
--- /dev/null
+++ b/_d2/trust-chain.d2
@@ -0,0 +1,47 @@
+direction: right
+
+CICD: {
+ class: group
+ label: "CI/CD Pipeline"
+
+ Generate: {
+ class: primary
+ label: "Generate"
+ icon: node_modules/@tabler/icons/icons/outline/settings-cog.svg
+ }
+
+ Sign: {
+ class: accent
+ label: "Sign"
+ icon: node_modules/@tabler/icons/icons/outline/signature.svg
+ }
+
+ Generate -> Sign: {
+ class: flow
+ }
+}
+
+Distribute: {
+ class: secondary
+ label: "Distribute"
+ icon: node_modules/@tabler/icons/icons/outline/send.svg
+}
+
+Verify: {
+ class: primary
+ label: "Verify"
+ icon: node_modules/@tabler/icons/icons/filled/shield-check.svg
+}
+
+CICD.Sign -> Distribute: "Signed SBOM" {
+ class: flow-pink
+}
+
+Distribute -> Verify: {
+ class: flow-pink
+}
+
+Verify -> CICD: "Trust" {
+ class: flow
+ style.stroke-dash: 3
+}
diff --git a/_d2/what-is-sbom.d2 b/_d2/what-is-sbom.d2
index 05e9acc..c8d80a8 100644
--- a/_d2/what-is-sbom.d2
+++ b/_d2/what-is-sbom.d2
@@ -7,17 +7,20 @@ Software Product: {
Transitive: {
class: secondary
- label: "Dependencies of your libraries"
+ label: "Transitive Dependencies"
+ icon: node_modules/@tabler/icons/icons/filled/stack.svg
}
Open Source: {
class: accent
label: "Open Source Libraries"
+ icon: node_modules/@tabler/icons/icons/outline/git-branch.svg
}
Source Code: {
class: primary
label: "Your Source Code"
+ icon: node_modules/@tabler/icons/icons/outline/code.svg
}
Transitive -> Open Source: "included in" {
@@ -30,8 +33,9 @@ Software Product: {
}
SBOM: {
- class: primary
+ class: highlight
label: "SBOM\n(Ingredients List)"
+ icon: node_modules/@tabler/icons/icons/outline/checklist.svg
}
Software Product -> SBOM: "Cataloged by" {
diff --git a/_d2/zero-to-hero.d2 b/_d2/zero-to-hero.d2
index 0d43963..7b9cd97 100644
--- a/_d2/zero-to-hero.d2
+++ b/_d2/zero-to-hero.d2
@@ -1,24 +1,47 @@
direction: right
-Generate: {
+Zero: {
+ class: secondary
+ label: "Zero"
+ icon: node_modules/@tabler/icons/icons/outline/help-circle.svg
+}
+
+Learn: {
class: primary
+ label: "Learn"
+ icon: node_modules/@tabler/icons/icons/outline/book.svg
+}
+
+Generate: {
+ class: accent
label: "Generate"
+ icon: node_modules/@tabler/icons/icons/outline/settings-cog.svg
}
Manage: {
class: accent
label: "Manage"
+ icon: node_modules/@tabler/icons/icons/outline/folders.svg
}
-Share: {
- class: secondary
- label: "Share"
+Hero: {
+ class: highlight
+ label: "Hero"
+ icon: node_modules/@tabler/icons/icons/filled/rosette-discount-check.svg
}
-Generate -> Manage: CI/CD {
+Zero -> Learn: {
class: flow
}
-Manage -> Share: Trust Center {
+Learn -> Generate: {
class: flow
}
+
+Generate -> Manage: {
+ class: flow
+}
+
+Manage -> Hero: {
+ class: flow-pink
+}
diff --git a/_data/main.yml b/_data/main.yml
index 76e038b..fd1ca30 100644
--- a/_data/main.yml
+++ b/_data/main.yml
@@ -1,4 +1,6 @@
nav:
+ - name: Zero to Hero
+ link: /zero-to-hero
- name: What is an SBOM?
link: /what-is-sbom
- name: About
diff --git a/_includes/components/impact-card.html b/_includes/components/impact-card.html
index 028b74f..e5707c5 100644
--- a/_includes/components/impact-card.html
+++ b/_includes/components/impact-card.html
@@ -1,10 +1,16 @@
{% capture artifact_1_svg %}
-
+
{% endcapture %}
{% include components/artifact-card.html
icon_bg_class="bg-red-50"
@@ -19,7 +19,7 @@
%}
{% capture artifact_2_svg %}
-
+
{% endcapture %}
{% include components/artifact-card.html
icon_bg_class="bg-blue-50"
@@ -34,7 +34,7 @@
%}
{% capture artifact_3_svg %}
-
+
{% endcapture %}
{% include components/artifact-card.html
icon_bg_class="bg-gray-50"
@@ -45,7 +45,7 @@
badge_text_class="text-gray-600"
badge_bg_class="bg-gray-100"
badge_border_class="border-gray-200"
- subtext="Q3 2024"
+ subtext="Q4 2025"
%}
diff --git a/_includes/components/trust-center-pillars.html b/_includes/components/trust-center-pillars.html
index 8a8511d..b71bcfa 100644
--- a/_includes/components/trust-center-pillars.html
+++ b/_includes/components/trust-center-pillars.html
@@ -1,25 +1,27 @@
-
Core Principles
-
-
-
-
-
-
-
-
Self-hostable
+
+
Built on Open Principles
+
diff --git a/_includes/d2/generation.svg b/_includes/d2/generation.svg
index 9374e35..1ccbbdc 100644
--- a/_includes/d2/generation.svg
+++ b/_includes/d2/generation.svg
@@ -1,15 +1,15 @@
-
Generation Augmentation Enrichment Signing
-
+ .d2-2689689697 .fill-N1{fill:#0A0F25;}
+ .d2-2689689697 .fill-N2{fill:#676C7E;}
+ .d2-2689689697 .fill-N3{fill:#9499AB;}
+ .d2-2689689697 .fill-N4{fill:#CFD2DD;}
+ .d2-2689689697 .fill-N5{fill:#DEE1EB;}
+ .d2-2689689697 .fill-N6{fill:#EEF1F8;}
+ .d2-2689689697 .fill-N7{fill:#FFFFFF;}
+ .d2-2689689697 .fill-B1{fill:#0A0F25;}
+ .d2-2689689697 .fill-B2{fill:#676C7E;}
+ .d2-2689689697 .fill-B3{fill:#9499AB;}
+ .d2-2689689697 .fill-B4{fill:#CFD2DD;}
+ .d2-2689689697 .fill-B5{fill:#DEE1EB;}
+ .d2-2689689697 .fill-B6{fill:#EEF1F8;}
+ .d2-2689689697 .fill-AA2{fill:#676C7E;}
+ .d2-2689689697 .fill-AA4{fill:#CFD2DD;}
+ .d2-2689689697 .fill-AA5{fill:#DEE1EB;}
+ .d2-2689689697 .fill-AB4{fill:#CFD2DD;}
+ .d2-2689689697 .fill-AB5{fill:#DEE1EB;}
+ .d2-2689689697 .stroke-N1{stroke:#0A0F25;}
+ .d2-2689689697 .stroke-N2{stroke:#676C7E;}
+ .d2-2689689697 .stroke-N3{stroke:#9499AB;}
+ .d2-2689689697 .stroke-N4{stroke:#CFD2DD;}
+ .d2-2689689697 .stroke-N5{stroke:#DEE1EB;}
+ .d2-2689689697 .stroke-N6{stroke:#EEF1F8;}
+ .d2-2689689697 .stroke-N7{stroke:#FFFFFF;}
+ .d2-2689689697 .stroke-B1{stroke:#0A0F25;}
+ .d2-2689689697 .stroke-B2{stroke:#676C7E;}
+ .d2-2689689697 .stroke-B3{stroke:#9499AB;}
+ .d2-2689689697 .stroke-B4{stroke:#CFD2DD;}
+ .d2-2689689697 .stroke-B5{stroke:#DEE1EB;}
+ .d2-2689689697 .stroke-B6{stroke:#EEF1F8;}
+ .d2-2689689697 .stroke-AA2{stroke:#676C7E;}
+ .d2-2689689697 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-2689689697 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-2689689697 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-2689689697 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-2689689697 .background-color-N1{background-color:#0A0F25;}
+ .d2-2689689697 .background-color-N2{background-color:#676C7E;}
+ .d2-2689689697 .background-color-N3{background-color:#9499AB;}
+ .d2-2689689697 .background-color-N4{background-color:#CFD2DD;}
+ .d2-2689689697 .background-color-N5{background-color:#DEE1EB;}
+ .d2-2689689697 .background-color-N6{background-color:#EEF1F8;}
+ .d2-2689689697 .background-color-N7{background-color:#FFFFFF;}
+ .d2-2689689697 .background-color-B1{background-color:#0A0F25;}
+ .d2-2689689697 .background-color-B2{background-color:#676C7E;}
+ .d2-2689689697 .background-color-B3{background-color:#9499AB;}
+ .d2-2689689697 .background-color-B4{background-color:#CFD2DD;}
+ .d2-2689689697 .background-color-B5{background-color:#DEE1EB;}
+ .d2-2689689697 .background-color-B6{background-color:#EEF1F8;}
+ .d2-2689689697 .background-color-AA2{background-color:#676C7E;}
+ .d2-2689689697 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-2689689697 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-2689689697 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-2689689697 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-2689689697 .color-N1{color:#0A0F25;}
+ .d2-2689689697 .color-N2{color:#676C7E;}
+ .d2-2689689697 .color-N3{color:#9499AB;}
+ .d2-2689689697 .color-N4{color:#CFD2DD;}
+ .d2-2689689697 .color-N5{color:#DEE1EB;}
+ .d2-2689689697 .color-N6{color:#EEF1F8;}
+ .d2-2689689697 .color-N7{color:#FFFFFF;}
+ .d2-2689689697 .color-B1{color:#0A0F25;}
+ .d2-2689689697 .color-B2{color:#676C7E;}
+ .d2-2689689697 .color-B3{color:#9499AB;}
+ .d2-2689689697 .color-B4{color:#CFD2DD;}
+ .d2-2689689697 .color-B5{color:#DEE1EB;}
+ .d2-2689689697 .color-B6{color:#EEF1F8;}
+ .d2-2689689697 .color-AA2{color:#676C7E;}
+ .d2-2689689697 .color-AA4{color:#CFD2DD;}
+ .d2-2689689697 .color-AA5{color:#DEE1EB;}
+ .d2-2689689697 .color-AB4{color:#CFD2DD;}
+ .d2-2689689697 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-2689689697);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-2689689697);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-2689689697);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-2689689697);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2689689697);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2689689697);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2689689697);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-2689689697);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2689689697);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-2689689697);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2689689697);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2689689697);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2689689697);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2689689697);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2689689697);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2689689697);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2689689697);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2689689697);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Generation Augmentation Enrichment Signing
+
diff --git a/_includes/d2/lifecycle.svg b/_includes/d2/lifecycle.svg
index 7664ef8..18c2b88 100644
--- a/_includes/d2/lifecycle.svg
+++ b/_includes/d2/lifecycle.svg
@@ -1,9 +1,9 @@
-
Authoring Distribution Analysis Generation Augmentation Enrichment Signing
-
+ .d2-3897458564 .fill-N1{fill:#0A0F25;}
+ .d2-3897458564 .fill-N2{fill:#676C7E;}
+ .d2-3897458564 .fill-N3{fill:#9499AB;}
+ .d2-3897458564 .fill-N4{fill:#CFD2DD;}
+ .d2-3897458564 .fill-N5{fill:#DEE1EB;}
+ .d2-3897458564 .fill-N6{fill:#EEF1F8;}
+ .d2-3897458564 .fill-N7{fill:#FFFFFF;}
+ .d2-3897458564 .fill-B1{fill:#0A0F25;}
+ .d2-3897458564 .fill-B2{fill:#676C7E;}
+ .d2-3897458564 .fill-B3{fill:#9499AB;}
+ .d2-3897458564 .fill-B4{fill:#CFD2DD;}
+ .d2-3897458564 .fill-B5{fill:#DEE1EB;}
+ .d2-3897458564 .fill-B6{fill:#EEF1F8;}
+ .d2-3897458564 .fill-AA2{fill:#676C7E;}
+ .d2-3897458564 .fill-AA4{fill:#CFD2DD;}
+ .d2-3897458564 .fill-AA5{fill:#DEE1EB;}
+ .d2-3897458564 .fill-AB4{fill:#CFD2DD;}
+ .d2-3897458564 .fill-AB5{fill:#DEE1EB;}
+ .d2-3897458564 .stroke-N1{stroke:#0A0F25;}
+ .d2-3897458564 .stroke-N2{stroke:#676C7E;}
+ .d2-3897458564 .stroke-N3{stroke:#9499AB;}
+ .d2-3897458564 .stroke-N4{stroke:#CFD2DD;}
+ .d2-3897458564 .stroke-N5{stroke:#DEE1EB;}
+ .d2-3897458564 .stroke-N6{stroke:#EEF1F8;}
+ .d2-3897458564 .stroke-N7{stroke:#FFFFFF;}
+ .d2-3897458564 .stroke-B1{stroke:#0A0F25;}
+ .d2-3897458564 .stroke-B2{stroke:#676C7E;}
+ .d2-3897458564 .stroke-B3{stroke:#9499AB;}
+ .d2-3897458564 .stroke-B4{stroke:#CFD2DD;}
+ .d2-3897458564 .stroke-B5{stroke:#DEE1EB;}
+ .d2-3897458564 .stroke-B6{stroke:#EEF1F8;}
+ .d2-3897458564 .stroke-AA2{stroke:#676C7E;}
+ .d2-3897458564 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-3897458564 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-3897458564 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-3897458564 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-3897458564 .background-color-N1{background-color:#0A0F25;}
+ .d2-3897458564 .background-color-N2{background-color:#676C7E;}
+ .d2-3897458564 .background-color-N3{background-color:#9499AB;}
+ .d2-3897458564 .background-color-N4{background-color:#CFD2DD;}
+ .d2-3897458564 .background-color-N5{background-color:#DEE1EB;}
+ .d2-3897458564 .background-color-N6{background-color:#EEF1F8;}
+ .d2-3897458564 .background-color-N7{background-color:#FFFFFF;}
+ .d2-3897458564 .background-color-B1{background-color:#0A0F25;}
+ .d2-3897458564 .background-color-B2{background-color:#676C7E;}
+ .d2-3897458564 .background-color-B3{background-color:#9499AB;}
+ .d2-3897458564 .background-color-B4{background-color:#CFD2DD;}
+ .d2-3897458564 .background-color-B5{background-color:#DEE1EB;}
+ .d2-3897458564 .background-color-B6{background-color:#EEF1F8;}
+ .d2-3897458564 .background-color-AA2{background-color:#676C7E;}
+ .d2-3897458564 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-3897458564 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-3897458564 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-3897458564 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-3897458564 .color-N1{color:#0A0F25;}
+ .d2-3897458564 .color-N2{color:#676C7E;}
+ .d2-3897458564 .color-N3{color:#9499AB;}
+ .d2-3897458564 .color-N4{color:#CFD2DD;}
+ .d2-3897458564 .color-N5{color:#DEE1EB;}
+ .d2-3897458564 .color-N6{color:#EEF1F8;}
+ .d2-3897458564 .color-N7{color:#FFFFFF;}
+ .d2-3897458564 .color-B1{color:#0A0F25;}
+ .d2-3897458564 .color-B2{color:#676C7E;}
+ .d2-3897458564 .color-B3{color:#9499AB;}
+ .d2-3897458564 .color-B4{color:#CFD2DD;}
+ .d2-3897458564 .color-B5{color:#DEE1EB;}
+ .d2-3897458564 .color-B6{color:#EEF1F8;}
+ .d2-3897458564 .color-AA2{color:#676C7E;}
+ .d2-3897458564 .color-AA4{color:#CFD2DD;}
+ .d2-3897458564 .color-AA5{color:#DEE1EB;}
+ .d2-3897458564 .color-AB4{color:#CFD2DD;}
+ .d2-3897458564 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-3897458564);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-3897458564);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-3897458564);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-3897458564);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3897458564);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3897458564);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3897458564);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-3897458564);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3897458564);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-3897458564);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3897458564);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3897458564);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3897458564);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3897458564);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3897458564);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3897458564);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3897458564);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3897458564);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Authoring Distribution Analysis Generation Augmentation Enrichment Signing
+
diff --git a/_includes/d2/quality-gap.svg b/_includes/d2/quality-gap.svg
new file mode 100644
index 0000000..f672922
--- /dev/null
+++ b/_includes/d2/quality-gap.svg
@@ -0,0 +1,108 @@
+
Your SBOM Your Lockfile sbomify action Quality SBOM or
+
+
+
diff --git a/_includes/d2/sbom-hierarchy.svg b/_includes/d2/sbom-hierarchy.svg
index 8b48e69..33f40be 100644
--- a/_includes/d2/sbom-hierarchy.svg
+++ b/_includes/d2/sbom-hierarchy.svg
@@ -1,9 +1,9 @@
-
Product SBOM Project SBOM(s) Component SBOM(s) Smart Thermostat Backend IoT Device Python SBOM Node SBOM Docker SBOM Rust SBOM Project SBOM Project SBOM
-
-
-
+ .d2-984039587 .fill-N1{fill:#0A0F25;}
+ .d2-984039587 .fill-N2{fill:#676C7E;}
+ .d2-984039587 .fill-N3{fill:#9499AB;}
+ .d2-984039587 .fill-N4{fill:#CFD2DD;}
+ .d2-984039587 .fill-N5{fill:#DEE1EB;}
+ .d2-984039587 .fill-N6{fill:#EEF1F8;}
+ .d2-984039587 .fill-N7{fill:#FFFFFF;}
+ .d2-984039587 .fill-B1{fill:#0A0F25;}
+ .d2-984039587 .fill-B2{fill:#676C7E;}
+ .d2-984039587 .fill-B3{fill:#9499AB;}
+ .d2-984039587 .fill-B4{fill:#CFD2DD;}
+ .d2-984039587 .fill-B5{fill:#DEE1EB;}
+ .d2-984039587 .fill-B6{fill:#EEF1F8;}
+ .d2-984039587 .fill-AA2{fill:#676C7E;}
+ .d2-984039587 .fill-AA4{fill:#CFD2DD;}
+ .d2-984039587 .fill-AA5{fill:#DEE1EB;}
+ .d2-984039587 .fill-AB4{fill:#CFD2DD;}
+ .d2-984039587 .fill-AB5{fill:#DEE1EB;}
+ .d2-984039587 .stroke-N1{stroke:#0A0F25;}
+ .d2-984039587 .stroke-N2{stroke:#676C7E;}
+ .d2-984039587 .stroke-N3{stroke:#9499AB;}
+ .d2-984039587 .stroke-N4{stroke:#CFD2DD;}
+ .d2-984039587 .stroke-N5{stroke:#DEE1EB;}
+ .d2-984039587 .stroke-N6{stroke:#EEF1F8;}
+ .d2-984039587 .stroke-N7{stroke:#FFFFFF;}
+ .d2-984039587 .stroke-B1{stroke:#0A0F25;}
+ .d2-984039587 .stroke-B2{stroke:#676C7E;}
+ .d2-984039587 .stroke-B3{stroke:#9499AB;}
+ .d2-984039587 .stroke-B4{stroke:#CFD2DD;}
+ .d2-984039587 .stroke-B5{stroke:#DEE1EB;}
+ .d2-984039587 .stroke-B6{stroke:#EEF1F8;}
+ .d2-984039587 .stroke-AA2{stroke:#676C7E;}
+ .d2-984039587 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-984039587 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-984039587 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-984039587 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-984039587 .background-color-N1{background-color:#0A0F25;}
+ .d2-984039587 .background-color-N2{background-color:#676C7E;}
+ .d2-984039587 .background-color-N3{background-color:#9499AB;}
+ .d2-984039587 .background-color-N4{background-color:#CFD2DD;}
+ .d2-984039587 .background-color-N5{background-color:#DEE1EB;}
+ .d2-984039587 .background-color-N6{background-color:#EEF1F8;}
+ .d2-984039587 .background-color-N7{background-color:#FFFFFF;}
+ .d2-984039587 .background-color-B1{background-color:#0A0F25;}
+ .d2-984039587 .background-color-B2{background-color:#676C7E;}
+ .d2-984039587 .background-color-B3{background-color:#9499AB;}
+ .d2-984039587 .background-color-B4{background-color:#CFD2DD;}
+ .d2-984039587 .background-color-B5{background-color:#DEE1EB;}
+ .d2-984039587 .background-color-B6{background-color:#EEF1F8;}
+ .d2-984039587 .background-color-AA2{background-color:#676C7E;}
+ .d2-984039587 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-984039587 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-984039587 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-984039587 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-984039587 .color-N1{color:#0A0F25;}
+ .d2-984039587 .color-N2{color:#676C7E;}
+ .d2-984039587 .color-N3{color:#9499AB;}
+ .d2-984039587 .color-N4{color:#CFD2DD;}
+ .d2-984039587 .color-N5{color:#DEE1EB;}
+ .d2-984039587 .color-N6{color:#EEF1F8;}
+ .d2-984039587 .color-N7{color:#FFFFFF;}
+ .d2-984039587 .color-B1{color:#0A0F25;}
+ .d2-984039587 .color-B2{color:#676C7E;}
+ .d2-984039587 .color-B3{color:#9499AB;}
+ .d2-984039587 .color-B4{color:#CFD2DD;}
+ .d2-984039587 .color-B5{color:#DEE1EB;}
+ .d2-984039587 .color-B6{color:#EEF1F8;}
+ .d2-984039587 .color-AA2{color:#676C7E;}
+ .d2-984039587 .color-AA4{color:#CFD2DD;}
+ .d2-984039587 .color-AA5{color:#DEE1EB;}
+ .d2-984039587 .color-AB4{color:#CFD2DD;}
+ .d2-984039587 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-984039587);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-984039587);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-984039587);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-984039587);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-984039587);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-984039587);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-984039587);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-984039587);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-984039587);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-984039587);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-984039587);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-984039587);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-984039587);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-984039587);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-984039587);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-984039587);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-984039587);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-984039587);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Product SBOM Project SBOM(s) Component SBOM(s) Smart Thermostat Backend IoT Device Python SBOM Node SBOM Docker SBOM Rust SBOM Project SBOM Project SBOM
+
+
+
diff --git a/_includes/d2/sbom-hub.svg b/_includes/d2/sbom-hub.svg
index c9da9c8..db9448d 100644
--- a/_includes/d2/sbom-hub.svg
+++ b/_includes/d2/sbom-hub.svg
@@ -1,22 +1,22 @@
-
Vendor Buyer Regulator Analysis Tool sbomify SBOMs Compliance Documents Pentest Result Audit
-
-
-
-
-
+ .d2-311409712 .fill-N1{fill:#0A0F25;}
+ .d2-311409712 .fill-N2{fill:#676C7E;}
+ .d2-311409712 .fill-N3{fill:#9499AB;}
+ .d2-311409712 .fill-N4{fill:#CFD2DD;}
+ .d2-311409712 .fill-N5{fill:#DEE1EB;}
+ .d2-311409712 .fill-N6{fill:#EEF1F8;}
+ .d2-311409712 .fill-N7{fill:#FFFFFF;}
+ .d2-311409712 .fill-B1{fill:#0A0F25;}
+ .d2-311409712 .fill-B2{fill:#676C7E;}
+ .d2-311409712 .fill-B3{fill:#9499AB;}
+ .d2-311409712 .fill-B4{fill:#CFD2DD;}
+ .d2-311409712 .fill-B5{fill:#DEE1EB;}
+ .d2-311409712 .fill-B6{fill:#EEF1F8;}
+ .d2-311409712 .fill-AA2{fill:#676C7E;}
+ .d2-311409712 .fill-AA4{fill:#CFD2DD;}
+ .d2-311409712 .fill-AA5{fill:#DEE1EB;}
+ .d2-311409712 .fill-AB4{fill:#CFD2DD;}
+ .d2-311409712 .fill-AB5{fill:#DEE1EB;}
+ .d2-311409712 .stroke-N1{stroke:#0A0F25;}
+ .d2-311409712 .stroke-N2{stroke:#676C7E;}
+ .d2-311409712 .stroke-N3{stroke:#9499AB;}
+ .d2-311409712 .stroke-N4{stroke:#CFD2DD;}
+ .d2-311409712 .stroke-N5{stroke:#DEE1EB;}
+ .d2-311409712 .stroke-N6{stroke:#EEF1F8;}
+ .d2-311409712 .stroke-N7{stroke:#FFFFFF;}
+ .d2-311409712 .stroke-B1{stroke:#0A0F25;}
+ .d2-311409712 .stroke-B2{stroke:#676C7E;}
+ .d2-311409712 .stroke-B3{stroke:#9499AB;}
+ .d2-311409712 .stroke-B4{stroke:#CFD2DD;}
+ .d2-311409712 .stroke-B5{stroke:#DEE1EB;}
+ .d2-311409712 .stroke-B6{stroke:#EEF1F8;}
+ .d2-311409712 .stroke-AA2{stroke:#676C7E;}
+ .d2-311409712 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-311409712 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-311409712 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-311409712 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-311409712 .background-color-N1{background-color:#0A0F25;}
+ .d2-311409712 .background-color-N2{background-color:#676C7E;}
+ .d2-311409712 .background-color-N3{background-color:#9499AB;}
+ .d2-311409712 .background-color-N4{background-color:#CFD2DD;}
+ .d2-311409712 .background-color-N5{background-color:#DEE1EB;}
+ .d2-311409712 .background-color-N6{background-color:#EEF1F8;}
+ .d2-311409712 .background-color-N7{background-color:#FFFFFF;}
+ .d2-311409712 .background-color-B1{background-color:#0A0F25;}
+ .d2-311409712 .background-color-B2{background-color:#676C7E;}
+ .d2-311409712 .background-color-B3{background-color:#9499AB;}
+ .d2-311409712 .background-color-B4{background-color:#CFD2DD;}
+ .d2-311409712 .background-color-B5{background-color:#DEE1EB;}
+ .d2-311409712 .background-color-B6{background-color:#EEF1F8;}
+ .d2-311409712 .background-color-AA2{background-color:#676C7E;}
+ .d2-311409712 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-311409712 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-311409712 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-311409712 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-311409712 .color-N1{color:#0A0F25;}
+ .d2-311409712 .color-N2{color:#676C7E;}
+ .d2-311409712 .color-N3{color:#9499AB;}
+ .d2-311409712 .color-N4{color:#CFD2DD;}
+ .d2-311409712 .color-N5{color:#DEE1EB;}
+ .d2-311409712 .color-N6{color:#EEF1F8;}
+ .d2-311409712 .color-N7{color:#FFFFFF;}
+ .d2-311409712 .color-B1{color:#0A0F25;}
+ .d2-311409712 .color-B2{color:#676C7E;}
+ .d2-311409712 .color-B3{color:#9499AB;}
+ .d2-311409712 .color-B4{color:#CFD2DD;}
+ .d2-311409712 .color-B5{color:#DEE1EB;}
+ .d2-311409712 .color-B6{color:#EEF1F8;}
+ .d2-311409712 .color-AA2{color:#676C7E;}
+ .d2-311409712 .color-AA4{color:#CFD2DD;}
+ .d2-311409712 .color-AA5{color:#DEE1EB;}
+ .d2-311409712 .color-AB4{color:#CFD2DD;}
+ .d2-311409712 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-311409712);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-311409712);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-311409712);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-311409712);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-311409712);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-311409712);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-311409712);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-311409712);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-311409712);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-311409712);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-311409712);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-311409712);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-311409712);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-311409712);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-311409712);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-311409712);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-311409712);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-311409712);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Vendor Buyer Regulator Analysis Tool sbomify SBOMs Compliance Documents Pentest Result Audit
+
+
+
+
+
diff --git a/_includes/d2/sbom-releases.svg b/_includes/d2/sbom-releases.svg
index b5979c0..9217820 100644
--- a/_includes/d2/sbom-releases.svg
+++ b/_includes/d2/sbom-releases.svg
@@ -1,9 +1,9 @@
-
Product Releases Component Artifacts Payment Portal User API Stripe Service v2.0 Stable Release v2.1 Latest Release v1.2 v1.3 v4.2 Upgraded Reused Stable Release
-
+ .d2-2152458290 .fill-N1{fill:#0A0F25;}
+ .d2-2152458290 .fill-N2{fill:#676C7E;}
+ .d2-2152458290 .fill-N3{fill:#9499AB;}
+ .d2-2152458290 .fill-N4{fill:#CFD2DD;}
+ .d2-2152458290 .fill-N5{fill:#DEE1EB;}
+ .d2-2152458290 .fill-N6{fill:#EEF1F8;}
+ .d2-2152458290 .fill-N7{fill:#FFFFFF;}
+ .d2-2152458290 .fill-B1{fill:#0A0F25;}
+ .d2-2152458290 .fill-B2{fill:#676C7E;}
+ .d2-2152458290 .fill-B3{fill:#9499AB;}
+ .d2-2152458290 .fill-B4{fill:#CFD2DD;}
+ .d2-2152458290 .fill-B5{fill:#DEE1EB;}
+ .d2-2152458290 .fill-B6{fill:#EEF1F8;}
+ .d2-2152458290 .fill-AA2{fill:#676C7E;}
+ .d2-2152458290 .fill-AA4{fill:#CFD2DD;}
+ .d2-2152458290 .fill-AA5{fill:#DEE1EB;}
+ .d2-2152458290 .fill-AB4{fill:#CFD2DD;}
+ .d2-2152458290 .fill-AB5{fill:#DEE1EB;}
+ .d2-2152458290 .stroke-N1{stroke:#0A0F25;}
+ .d2-2152458290 .stroke-N2{stroke:#676C7E;}
+ .d2-2152458290 .stroke-N3{stroke:#9499AB;}
+ .d2-2152458290 .stroke-N4{stroke:#CFD2DD;}
+ .d2-2152458290 .stroke-N5{stroke:#DEE1EB;}
+ .d2-2152458290 .stroke-N6{stroke:#EEF1F8;}
+ .d2-2152458290 .stroke-N7{stroke:#FFFFFF;}
+ .d2-2152458290 .stroke-B1{stroke:#0A0F25;}
+ .d2-2152458290 .stroke-B2{stroke:#676C7E;}
+ .d2-2152458290 .stroke-B3{stroke:#9499AB;}
+ .d2-2152458290 .stroke-B4{stroke:#CFD2DD;}
+ .d2-2152458290 .stroke-B5{stroke:#DEE1EB;}
+ .d2-2152458290 .stroke-B6{stroke:#EEF1F8;}
+ .d2-2152458290 .stroke-AA2{stroke:#676C7E;}
+ .d2-2152458290 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-2152458290 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-2152458290 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-2152458290 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-2152458290 .background-color-N1{background-color:#0A0F25;}
+ .d2-2152458290 .background-color-N2{background-color:#676C7E;}
+ .d2-2152458290 .background-color-N3{background-color:#9499AB;}
+ .d2-2152458290 .background-color-N4{background-color:#CFD2DD;}
+ .d2-2152458290 .background-color-N5{background-color:#DEE1EB;}
+ .d2-2152458290 .background-color-N6{background-color:#EEF1F8;}
+ .d2-2152458290 .background-color-N7{background-color:#FFFFFF;}
+ .d2-2152458290 .background-color-B1{background-color:#0A0F25;}
+ .d2-2152458290 .background-color-B2{background-color:#676C7E;}
+ .d2-2152458290 .background-color-B3{background-color:#9499AB;}
+ .d2-2152458290 .background-color-B4{background-color:#CFD2DD;}
+ .d2-2152458290 .background-color-B5{background-color:#DEE1EB;}
+ .d2-2152458290 .background-color-B6{background-color:#EEF1F8;}
+ .d2-2152458290 .background-color-AA2{background-color:#676C7E;}
+ .d2-2152458290 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-2152458290 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-2152458290 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-2152458290 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-2152458290 .color-N1{color:#0A0F25;}
+ .d2-2152458290 .color-N2{color:#676C7E;}
+ .d2-2152458290 .color-N3{color:#9499AB;}
+ .d2-2152458290 .color-N4{color:#CFD2DD;}
+ .d2-2152458290 .color-N5{color:#DEE1EB;}
+ .d2-2152458290 .color-N6{color:#EEF1F8;}
+ .d2-2152458290 .color-N7{color:#FFFFFF;}
+ .d2-2152458290 .color-B1{color:#0A0F25;}
+ .d2-2152458290 .color-B2{color:#676C7E;}
+ .d2-2152458290 .color-B3{color:#9499AB;}
+ .d2-2152458290 .color-B4{color:#CFD2DD;}
+ .d2-2152458290 .color-B5{color:#DEE1EB;}
+ .d2-2152458290 .color-B6{color:#EEF1F8;}
+ .d2-2152458290 .color-AA2{color:#676C7E;}
+ .d2-2152458290 .color-AA4{color:#CFD2DD;}
+ .d2-2152458290 .color-AA5{color:#DEE1EB;}
+ .d2-2152458290 .color-AB4{color:#CFD2DD;}
+ .d2-2152458290 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-2152458290);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-2152458290);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-2152458290);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-2152458290);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2152458290);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2152458290);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2152458290);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-2152458290);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2152458290);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-2152458290);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2152458290);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2152458290);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2152458290);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2152458290);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2152458290);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2152458290);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2152458290);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2152458290);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Product Releases Component Artifacts Payment Portal User API Stripe Service v2.0 Stable Release v2.1 Latest Release v1.2 v1.3 v4.2 Upgraded Reused Stable Release
+
-
+
-Latest Release
-
+ Latest Release
+
-
+
-
-
-
-
+
+
+
+
diff --git a/_includes/d2/sbomify-action-flow.svg b/_includes/d2/sbomify-action-flow.svg
new file mode 100644
index 0000000..17ef027
--- /dev/null
+++ b/_includes/d2/sbomify-action-flow.svg
@@ -0,0 +1,108 @@
+Your Code sbomify action Generate Augment Enrich Compliance-Ready Regulation Checks Verify Attestation
+
+
+
diff --git a/_includes/d2/screenly-hierarchy.svg b/_includes/d2/screenly-hierarchy.svg
index e2834e4..9bfaa03 100644
--- a/_includes/d2/screenly-hierarchy.svg
+++ b/_includes/d2/screenly-hierarchy.svg
@@ -1,9 +1,9 @@
-Product SBOM Project SBOM(s) Component SBOM(s) Screenly Backend Screenly Player JS SBOM Python Backend SBOM Docker SBOM Rust SBOM Python Player SBOM QT SBOM OS SBOM
-
+ .d2-629534892 .fill-N1{fill:#0A0F25;}
+ .d2-629534892 .fill-N2{fill:#676C7E;}
+ .d2-629534892 .fill-N3{fill:#9499AB;}
+ .d2-629534892 .fill-N4{fill:#CFD2DD;}
+ .d2-629534892 .fill-N5{fill:#DEE1EB;}
+ .d2-629534892 .fill-N6{fill:#EEF1F8;}
+ .d2-629534892 .fill-N7{fill:#FFFFFF;}
+ .d2-629534892 .fill-B1{fill:#0A0F25;}
+ .d2-629534892 .fill-B2{fill:#676C7E;}
+ .d2-629534892 .fill-B3{fill:#9499AB;}
+ .d2-629534892 .fill-B4{fill:#CFD2DD;}
+ .d2-629534892 .fill-B5{fill:#DEE1EB;}
+ .d2-629534892 .fill-B6{fill:#EEF1F8;}
+ .d2-629534892 .fill-AA2{fill:#676C7E;}
+ .d2-629534892 .fill-AA4{fill:#CFD2DD;}
+ .d2-629534892 .fill-AA5{fill:#DEE1EB;}
+ .d2-629534892 .fill-AB4{fill:#CFD2DD;}
+ .d2-629534892 .fill-AB5{fill:#DEE1EB;}
+ .d2-629534892 .stroke-N1{stroke:#0A0F25;}
+ .d2-629534892 .stroke-N2{stroke:#676C7E;}
+ .d2-629534892 .stroke-N3{stroke:#9499AB;}
+ .d2-629534892 .stroke-N4{stroke:#CFD2DD;}
+ .d2-629534892 .stroke-N5{stroke:#DEE1EB;}
+ .d2-629534892 .stroke-N6{stroke:#EEF1F8;}
+ .d2-629534892 .stroke-N7{stroke:#FFFFFF;}
+ .d2-629534892 .stroke-B1{stroke:#0A0F25;}
+ .d2-629534892 .stroke-B2{stroke:#676C7E;}
+ .d2-629534892 .stroke-B3{stroke:#9499AB;}
+ .d2-629534892 .stroke-B4{stroke:#CFD2DD;}
+ .d2-629534892 .stroke-B5{stroke:#DEE1EB;}
+ .d2-629534892 .stroke-B6{stroke:#EEF1F8;}
+ .d2-629534892 .stroke-AA2{stroke:#676C7E;}
+ .d2-629534892 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-629534892 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-629534892 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-629534892 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-629534892 .background-color-N1{background-color:#0A0F25;}
+ .d2-629534892 .background-color-N2{background-color:#676C7E;}
+ .d2-629534892 .background-color-N3{background-color:#9499AB;}
+ .d2-629534892 .background-color-N4{background-color:#CFD2DD;}
+ .d2-629534892 .background-color-N5{background-color:#DEE1EB;}
+ .d2-629534892 .background-color-N6{background-color:#EEF1F8;}
+ .d2-629534892 .background-color-N7{background-color:#FFFFFF;}
+ .d2-629534892 .background-color-B1{background-color:#0A0F25;}
+ .d2-629534892 .background-color-B2{background-color:#676C7E;}
+ .d2-629534892 .background-color-B3{background-color:#9499AB;}
+ .d2-629534892 .background-color-B4{background-color:#CFD2DD;}
+ .d2-629534892 .background-color-B5{background-color:#DEE1EB;}
+ .d2-629534892 .background-color-B6{background-color:#EEF1F8;}
+ .d2-629534892 .background-color-AA2{background-color:#676C7E;}
+ .d2-629534892 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-629534892 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-629534892 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-629534892 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-629534892 .color-N1{color:#0A0F25;}
+ .d2-629534892 .color-N2{color:#676C7E;}
+ .d2-629534892 .color-N3{color:#9499AB;}
+ .d2-629534892 .color-N4{color:#CFD2DD;}
+ .d2-629534892 .color-N5{color:#DEE1EB;}
+ .d2-629534892 .color-N6{color:#EEF1F8;}
+ .d2-629534892 .color-N7{color:#FFFFFF;}
+ .d2-629534892 .color-B1{color:#0A0F25;}
+ .d2-629534892 .color-B2{color:#676C7E;}
+ .d2-629534892 .color-B3{color:#9499AB;}
+ .d2-629534892 .color-B4{color:#CFD2DD;}
+ .d2-629534892 .color-B5{color:#DEE1EB;}
+ .d2-629534892 .color-B6{color:#EEF1F8;}
+ .d2-629534892 .color-AA2{color:#676C7E;}
+ .d2-629534892 .color-AA4{color:#CFD2DD;}
+ .d2-629534892 .color-AA5{color:#DEE1EB;}
+ .d2-629534892 .color-AB4{color:#CFD2DD;}
+ .d2-629534892 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-629534892);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-629534892);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-629534892);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-629534892);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-629534892);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-629534892);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-629534892);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-629534892);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-629534892);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-629534892);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-629534892);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-629534892);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-629534892);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-629534892);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-629534892);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-629534892);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-629534892);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-629534892);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Product SBOM Project SBOM(s) Component SBOM(s) Screenly Backend Screenly Player JS SBOM Python Backend SBOM Docker SBOM Rust SBOM Python Player SBOM QT SBOM OS SBOM
+
diff --git a/_includes/d2/store-analyze-enrich.svg b/_includes/d2/store-analyze-enrich.svg
index 9a01dbb..c9cc77e 100644
--- a/_includes/d2/store-analyze-enrich.svg
+++ b/_includes/d2/store-analyze-enrich.svg
@@ -1,9 +1,9 @@
-CI/CD Pipeline sbomify Analysis Generate Enrich & Augment Sign Upload Sync
-
-
-
+ .d2-1652541304 .fill-N1{fill:#0A0F25;}
+ .d2-1652541304 .fill-N2{fill:#676C7E;}
+ .d2-1652541304 .fill-N3{fill:#9499AB;}
+ .d2-1652541304 .fill-N4{fill:#CFD2DD;}
+ .d2-1652541304 .fill-N5{fill:#DEE1EB;}
+ .d2-1652541304 .fill-N6{fill:#EEF1F8;}
+ .d2-1652541304 .fill-N7{fill:#FFFFFF;}
+ .d2-1652541304 .fill-B1{fill:#0A0F25;}
+ .d2-1652541304 .fill-B2{fill:#676C7E;}
+ .d2-1652541304 .fill-B3{fill:#9499AB;}
+ .d2-1652541304 .fill-B4{fill:#CFD2DD;}
+ .d2-1652541304 .fill-B5{fill:#DEE1EB;}
+ .d2-1652541304 .fill-B6{fill:#EEF1F8;}
+ .d2-1652541304 .fill-AA2{fill:#676C7E;}
+ .d2-1652541304 .fill-AA4{fill:#CFD2DD;}
+ .d2-1652541304 .fill-AA5{fill:#DEE1EB;}
+ .d2-1652541304 .fill-AB4{fill:#CFD2DD;}
+ .d2-1652541304 .fill-AB5{fill:#DEE1EB;}
+ .d2-1652541304 .stroke-N1{stroke:#0A0F25;}
+ .d2-1652541304 .stroke-N2{stroke:#676C7E;}
+ .d2-1652541304 .stroke-N3{stroke:#9499AB;}
+ .d2-1652541304 .stroke-N4{stroke:#CFD2DD;}
+ .d2-1652541304 .stroke-N5{stroke:#DEE1EB;}
+ .d2-1652541304 .stroke-N6{stroke:#EEF1F8;}
+ .d2-1652541304 .stroke-N7{stroke:#FFFFFF;}
+ .d2-1652541304 .stroke-B1{stroke:#0A0F25;}
+ .d2-1652541304 .stroke-B2{stroke:#676C7E;}
+ .d2-1652541304 .stroke-B3{stroke:#9499AB;}
+ .d2-1652541304 .stroke-B4{stroke:#CFD2DD;}
+ .d2-1652541304 .stroke-B5{stroke:#DEE1EB;}
+ .d2-1652541304 .stroke-B6{stroke:#EEF1F8;}
+ .d2-1652541304 .stroke-AA2{stroke:#676C7E;}
+ .d2-1652541304 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-1652541304 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-1652541304 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-1652541304 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-1652541304 .background-color-N1{background-color:#0A0F25;}
+ .d2-1652541304 .background-color-N2{background-color:#676C7E;}
+ .d2-1652541304 .background-color-N3{background-color:#9499AB;}
+ .d2-1652541304 .background-color-N4{background-color:#CFD2DD;}
+ .d2-1652541304 .background-color-N5{background-color:#DEE1EB;}
+ .d2-1652541304 .background-color-N6{background-color:#EEF1F8;}
+ .d2-1652541304 .background-color-N7{background-color:#FFFFFF;}
+ .d2-1652541304 .background-color-B1{background-color:#0A0F25;}
+ .d2-1652541304 .background-color-B2{background-color:#676C7E;}
+ .d2-1652541304 .background-color-B3{background-color:#9499AB;}
+ .d2-1652541304 .background-color-B4{background-color:#CFD2DD;}
+ .d2-1652541304 .background-color-B5{background-color:#DEE1EB;}
+ .d2-1652541304 .background-color-B6{background-color:#EEF1F8;}
+ .d2-1652541304 .background-color-AA2{background-color:#676C7E;}
+ .d2-1652541304 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-1652541304 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-1652541304 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-1652541304 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-1652541304 .color-N1{color:#0A0F25;}
+ .d2-1652541304 .color-N2{color:#676C7E;}
+ .d2-1652541304 .color-N3{color:#9499AB;}
+ .d2-1652541304 .color-N4{color:#CFD2DD;}
+ .d2-1652541304 .color-N5{color:#DEE1EB;}
+ .d2-1652541304 .color-N6{color:#EEF1F8;}
+ .d2-1652541304 .color-N7{color:#FFFFFF;}
+ .d2-1652541304 .color-B1{color:#0A0F25;}
+ .d2-1652541304 .color-B2{color:#676C7E;}
+ .d2-1652541304 .color-B3{color:#9499AB;}
+ .d2-1652541304 .color-B4{color:#CFD2DD;}
+ .d2-1652541304 .color-B5{color:#DEE1EB;}
+ .d2-1652541304 .color-B6{color:#EEF1F8;}
+ .d2-1652541304 .color-AA2{color:#676C7E;}
+ .d2-1652541304 .color-AA4{color:#CFD2DD;}
+ .d2-1652541304 .color-AA5{color:#DEE1EB;}
+ .d2-1652541304 .color-AB4{color:#CFD2DD;}
+ .d2-1652541304 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-1652541304);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-1652541304);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-1652541304);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-1652541304);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1652541304);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1652541304);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1652541304);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-1652541304);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1652541304);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-1652541304);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1652541304);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1652541304);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1652541304);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1652541304);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1652541304);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1652541304);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1652541304);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1652541304);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>CI/CD Pipeline sbomify Analysis Generate Enrich & Augment Sign Upload Sync
+
+
+
diff --git a/_includes/d2/test-diagram.svg b/_includes/d2/test-diagram.svg
index 8fd7ddb..15a3779 100644
--- a/_includes/d2/test-diagram.svg
+++ b/_includes/d2/test-diagram.svg
@@ -1,22 +1,22 @@
-Vendor stack Regulator Buyer Analysis Tool sbomify SBOMs Compliance Docs Audit Reports
-
-
-
-
-
+ .d2-1236437165 .fill-N1{fill:#0A0F25;}
+ .d2-1236437165 .fill-N2{fill:#676C7E;}
+ .d2-1236437165 .fill-N3{fill:#9499AB;}
+ .d2-1236437165 .fill-N4{fill:#CFD2DD;}
+ .d2-1236437165 .fill-N5{fill:#DEE1EB;}
+ .d2-1236437165 .fill-N6{fill:#EEF1F8;}
+ .d2-1236437165 .fill-N7{fill:#FFFFFF;}
+ .d2-1236437165 .fill-B1{fill:#0A0F25;}
+ .d2-1236437165 .fill-B2{fill:#676C7E;}
+ .d2-1236437165 .fill-B3{fill:#9499AB;}
+ .d2-1236437165 .fill-B4{fill:#CFD2DD;}
+ .d2-1236437165 .fill-B5{fill:#DEE1EB;}
+ .d2-1236437165 .fill-B6{fill:#EEF1F8;}
+ .d2-1236437165 .fill-AA2{fill:#676C7E;}
+ .d2-1236437165 .fill-AA4{fill:#CFD2DD;}
+ .d2-1236437165 .fill-AA5{fill:#DEE1EB;}
+ .d2-1236437165 .fill-AB4{fill:#CFD2DD;}
+ .d2-1236437165 .fill-AB5{fill:#DEE1EB;}
+ .d2-1236437165 .stroke-N1{stroke:#0A0F25;}
+ .d2-1236437165 .stroke-N2{stroke:#676C7E;}
+ .d2-1236437165 .stroke-N3{stroke:#9499AB;}
+ .d2-1236437165 .stroke-N4{stroke:#CFD2DD;}
+ .d2-1236437165 .stroke-N5{stroke:#DEE1EB;}
+ .d2-1236437165 .stroke-N6{stroke:#EEF1F8;}
+ .d2-1236437165 .stroke-N7{stroke:#FFFFFF;}
+ .d2-1236437165 .stroke-B1{stroke:#0A0F25;}
+ .d2-1236437165 .stroke-B2{stroke:#676C7E;}
+ .d2-1236437165 .stroke-B3{stroke:#9499AB;}
+ .d2-1236437165 .stroke-B4{stroke:#CFD2DD;}
+ .d2-1236437165 .stroke-B5{stroke:#DEE1EB;}
+ .d2-1236437165 .stroke-B6{stroke:#EEF1F8;}
+ .d2-1236437165 .stroke-AA2{stroke:#676C7E;}
+ .d2-1236437165 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-1236437165 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-1236437165 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-1236437165 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-1236437165 .background-color-N1{background-color:#0A0F25;}
+ .d2-1236437165 .background-color-N2{background-color:#676C7E;}
+ .d2-1236437165 .background-color-N3{background-color:#9499AB;}
+ .d2-1236437165 .background-color-N4{background-color:#CFD2DD;}
+ .d2-1236437165 .background-color-N5{background-color:#DEE1EB;}
+ .d2-1236437165 .background-color-N6{background-color:#EEF1F8;}
+ .d2-1236437165 .background-color-N7{background-color:#FFFFFF;}
+ .d2-1236437165 .background-color-B1{background-color:#0A0F25;}
+ .d2-1236437165 .background-color-B2{background-color:#676C7E;}
+ .d2-1236437165 .background-color-B3{background-color:#9499AB;}
+ .d2-1236437165 .background-color-B4{background-color:#CFD2DD;}
+ .d2-1236437165 .background-color-B5{background-color:#DEE1EB;}
+ .d2-1236437165 .background-color-B6{background-color:#EEF1F8;}
+ .d2-1236437165 .background-color-AA2{background-color:#676C7E;}
+ .d2-1236437165 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-1236437165 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-1236437165 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-1236437165 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-1236437165 .color-N1{color:#0A0F25;}
+ .d2-1236437165 .color-N2{color:#676C7E;}
+ .d2-1236437165 .color-N3{color:#9499AB;}
+ .d2-1236437165 .color-N4{color:#CFD2DD;}
+ .d2-1236437165 .color-N5{color:#DEE1EB;}
+ .d2-1236437165 .color-N6{color:#EEF1F8;}
+ .d2-1236437165 .color-N7{color:#FFFFFF;}
+ .d2-1236437165 .color-B1{color:#0A0F25;}
+ .d2-1236437165 .color-B2{color:#676C7E;}
+ .d2-1236437165 .color-B3{color:#9499AB;}
+ .d2-1236437165 .color-B4{color:#CFD2DD;}
+ .d2-1236437165 .color-B5{color:#DEE1EB;}
+ .d2-1236437165 .color-B6{color:#EEF1F8;}
+ .d2-1236437165 .color-AA2{color:#676C7E;}
+ .d2-1236437165 .color-AA4{color:#CFD2DD;}
+ .d2-1236437165 .color-AA5{color:#DEE1EB;}
+ .d2-1236437165 .color-AB4{color:#CFD2DD;}
+ .d2-1236437165 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-1236437165);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-1236437165);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-1236437165);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-1236437165);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1236437165);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1236437165);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1236437165);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-1236437165);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1236437165);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-1236437165);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1236437165);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1236437165);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1236437165);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1236437165);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1236437165);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1236437165);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1236437165);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1236437165);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Vendor stack Regulator Buyer Analysis Tool sbomify SBOMs Compliance Docs Audit Reports
+
+
+
+
+
diff --git a/_includes/d2/trust-chain.svg b/_includes/d2/trust-chain.svg
new file mode 100644
index 0000000..7a8dc77
--- /dev/null
+++ b/_includes/d2/trust-chain.svg
@@ -0,0 +1,116 @@
+CI/CD Pipeline Distribute Verify Generate Sign Signed SBOM Trust
+
+
+
+
diff --git a/_includes/d2/what-is-sbom.svg b/_includes/d2/what-is-sbom.svg
index 5115603..3bf4d5a 100644
--- a/_includes/d2/what-is-sbom.svg
+++ b/_includes/d2/what-is-sbom.svg
@@ -1,10 +1,10 @@
-Modern Application SBOM (Ingredients List) Dependencies of your libraries Open Source Libraries Your Source Code included in included in Cataloged by
-
-
-
-
+ .d2-361813584 .fill-N1{fill:#0A0F25;}
+ .d2-361813584 .fill-N2{fill:#676C7E;}
+ .d2-361813584 .fill-N3{fill:#9499AB;}
+ .d2-361813584 .fill-N4{fill:#CFD2DD;}
+ .d2-361813584 .fill-N5{fill:#DEE1EB;}
+ .d2-361813584 .fill-N6{fill:#EEF1F8;}
+ .d2-361813584 .fill-N7{fill:#FFFFFF;}
+ .d2-361813584 .fill-B1{fill:#0A0F25;}
+ .d2-361813584 .fill-B2{fill:#676C7E;}
+ .d2-361813584 .fill-B3{fill:#9499AB;}
+ .d2-361813584 .fill-B4{fill:#CFD2DD;}
+ .d2-361813584 .fill-B5{fill:#DEE1EB;}
+ .d2-361813584 .fill-B6{fill:#EEF1F8;}
+ .d2-361813584 .fill-AA2{fill:#676C7E;}
+ .d2-361813584 .fill-AA4{fill:#CFD2DD;}
+ .d2-361813584 .fill-AA5{fill:#DEE1EB;}
+ .d2-361813584 .fill-AB4{fill:#CFD2DD;}
+ .d2-361813584 .fill-AB5{fill:#DEE1EB;}
+ .d2-361813584 .stroke-N1{stroke:#0A0F25;}
+ .d2-361813584 .stroke-N2{stroke:#676C7E;}
+ .d2-361813584 .stroke-N3{stroke:#9499AB;}
+ .d2-361813584 .stroke-N4{stroke:#CFD2DD;}
+ .d2-361813584 .stroke-N5{stroke:#DEE1EB;}
+ .d2-361813584 .stroke-N6{stroke:#EEF1F8;}
+ .d2-361813584 .stroke-N7{stroke:#FFFFFF;}
+ .d2-361813584 .stroke-B1{stroke:#0A0F25;}
+ .d2-361813584 .stroke-B2{stroke:#676C7E;}
+ .d2-361813584 .stroke-B3{stroke:#9499AB;}
+ .d2-361813584 .stroke-B4{stroke:#CFD2DD;}
+ .d2-361813584 .stroke-B5{stroke:#DEE1EB;}
+ .d2-361813584 .stroke-B6{stroke:#EEF1F8;}
+ .d2-361813584 .stroke-AA2{stroke:#676C7E;}
+ .d2-361813584 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-361813584 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-361813584 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-361813584 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-361813584 .background-color-N1{background-color:#0A0F25;}
+ .d2-361813584 .background-color-N2{background-color:#676C7E;}
+ .d2-361813584 .background-color-N3{background-color:#9499AB;}
+ .d2-361813584 .background-color-N4{background-color:#CFD2DD;}
+ .d2-361813584 .background-color-N5{background-color:#DEE1EB;}
+ .d2-361813584 .background-color-N6{background-color:#EEF1F8;}
+ .d2-361813584 .background-color-N7{background-color:#FFFFFF;}
+ .d2-361813584 .background-color-B1{background-color:#0A0F25;}
+ .d2-361813584 .background-color-B2{background-color:#676C7E;}
+ .d2-361813584 .background-color-B3{background-color:#9499AB;}
+ .d2-361813584 .background-color-B4{background-color:#CFD2DD;}
+ .d2-361813584 .background-color-B5{background-color:#DEE1EB;}
+ .d2-361813584 .background-color-B6{background-color:#EEF1F8;}
+ .d2-361813584 .background-color-AA2{background-color:#676C7E;}
+ .d2-361813584 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-361813584 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-361813584 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-361813584 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-361813584 .color-N1{color:#0A0F25;}
+ .d2-361813584 .color-N2{color:#676C7E;}
+ .d2-361813584 .color-N3{color:#9499AB;}
+ .d2-361813584 .color-N4{color:#CFD2DD;}
+ .d2-361813584 .color-N5{color:#DEE1EB;}
+ .d2-361813584 .color-N6{color:#EEF1F8;}
+ .d2-361813584 .color-N7{color:#FFFFFF;}
+ .d2-361813584 .color-B1{color:#0A0F25;}
+ .d2-361813584 .color-B2{color:#676C7E;}
+ .d2-361813584 .color-B3{color:#9499AB;}
+ .d2-361813584 .color-B4{color:#CFD2DD;}
+ .d2-361813584 .color-B5{color:#DEE1EB;}
+ .d2-361813584 .color-B6{color:#EEF1F8;}
+ .d2-361813584 .color-AA2{color:#676C7E;}
+ .d2-361813584 .color-AA4{color:#CFD2DD;}
+ .d2-361813584 .color-AA5{color:#DEE1EB;}
+ .d2-361813584 .color-AB4{color:#CFD2DD;}
+ .d2-361813584 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-361813584);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-361813584);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-361813584);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-361813584);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-361813584);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-361813584);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-361813584);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-361813584);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-361813584);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-361813584);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-361813584);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-361813584);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-361813584);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-361813584);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-361813584);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-361813584);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-361813584);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-361813584);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Modern Application SBOM (Ingredients List) Transitive Dependencies Open Source Libraries Your Source Code included in included in Cataloged by
+
+
+
+
diff --git a/_includes/d2/zero-to-hero.svg b/_includes/d2/zero-to-hero.svg
index 0f8519f..553de24 100644
--- a/_includes/d2/zero-to-hero.svg
+++ b/_includes/d2/zero-to-hero.svg
@@ -1,23 +1,16 @@
-Generate Manage Share CI/CD Trust Center
-
-
-
+ .d2-4040400291 .fill-N1{fill:#0A0F25;}
+ .d2-4040400291 .fill-N2{fill:#676C7E;}
+ .d2-4040400291 .fill-N3{fill:#9499AB;}
+ .d2-4040400291 .fill-N4{fill:#CFD2DD;}
+ .d2-4040400291 .fill-N5{fill:#DEE1EB;}
+ .d2-4040400291 .fill-N6{fill:#EEF1F8;}
+ .d2-4040400291 .fill-N7{fill:#FFFFFF;}
+ .d2-4040400291 .fill-B1{fill:#0A0F25;}
+ .d2-4040400291 .fill-B2{fill:#676C7E;}
+ .d2-4040400291 .fill-B3{fill:#9499AB;}
+ .d2-4040400291 .fill-B4{fill:#CFD2DD;}
+ .d2-4040400291 .fill-B5{fill:#DEE1EB;}
+ .d2-4040400291 .fill-B6{fill:#EEF1F8;}
+ .d2-4040400291 .fill-AA2{fill:#676C7E;}
+ .d2-4040400291 .fill-AA4{fill:#CFD2DD;}
+ .d2-4040400291 .fill-AA5{fill:#DEE1EB;}
+ .d2-4040400291 .fill-AB4{fill:#CFD2DD;}
+ .d2-4040400291 .fill-AB5{fill:#DEE1EB;}
+ .d2-4040400291 .stroke-N1{stroke:#0A0F25;}
+ .d2-4040400291 .stroke-N2{stroke:#676C7E;}
+ .d2-4040400291 .stroke-N3{stroke:#9499AB;}
+ .d2-4040400291 .stroke-N4{stroke:#CFD2DD;}
+ .d2-4040400291 .stroke-N5{stroke:#DEE1EB;}
+ .d2-4040400291 .stroke-N6{stroke:#EEF1F8;}
+ .d2-4040400291 .stroke-N7{stroke:#FFFFFF;}
+ .d2-4040400291 .stroke-B1{stroke:#0A0F25;}
+ .d2-4040400291 .stroke-B2{stroke:#676C7E;}
+ .d2-4040400291 .stroke-B3{stroke:#9499AB;}
+ .d2-4040400291 .stroke-B4{stroke:#CFD2DD;}
+ .d2-4040400291 .stroke-B5{stroke:#DEE1EB;}
+ .d2-4040400291 .stroke-B6{stroke:#EEF1F8;}
+ .d2-4040400291 .stroke-AA2{stroke:#676C7E;}
+ .d2-4040400291 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-4040400291 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-4040400291 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-4040400291 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-4040400291 .background-color-N1{background-color:#0A0F25;}
+ .d2-4040400291 .background-color-N2{background-color:#676C7E;}
+ .d2-4040400291 .background-color-N3{background-color:#9499AB;}
+ .d2-4040400291 .background-color-N4{background-color:#CFD2DD;}
+ .d2-4040400291 .background-color-N5{background-color:#DEE1EB;}
+ .d2-4040400291 .background-color-N6{background-color:#EEF1F8;}
+ .d2-4040400291 .background-color-N7{background-color:#FFFFFF;}
+ .d2-4040400291 .background-color-B1{background-color:#0A0F25;}
+ .d2-4040400291 .background-color-B2{background-color:#676C7E;}
+ .d2-4040400291 .background-color-B3{background-color:#9499AB;}
+ .d2-4040400291 .background-color-B4{background-color:#CFD2DD;}
+ .d2-4040400291 .background-color-B5{background-color:#DEE1EB;}
+ .d2-4040400291 .background-color-B6{background-color:#EEF1F8;}
+ .d2-4040400291 .background-color-AA2{background-color:#676C7E;}
+ .d2-4040400291 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-4040400291 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-4040400291 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-4040400291 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-4040400291 .color-N1{color:#0A0F25;}
+ .d2-4040400291 .color-N2{color:#676C7E;}
+ .d2-4040400291 .color-N3{color:#9499AB;}
+ .d2-4040400291 .color-N4{color:#CFD2DD;}
+ .d2-4040400291 .color-N5{color:#DEE1EB;}
+ .d2-4040400291 .color-N6{color:#EEF1F8;}
+ .d2-4040400291 .color-N7{color:#FFFFFF;}
+ .d2-4040400291 .color-B1{color:#0A0F25;}
+ .d2-4040400291 .color-B2{color:#676C7E;}
+ .d2-4040400291 .color-B3{color:#9499AB;}
+ .d2-4040400291 .color-B4{color:#CFD2DD;}
+ .d2-4040400291 .color-B5{color:#DEE1EB;}
+ .d2-4040400291 .color-B6{color:#EEF1F8;}
+ .d2-4040400291 .color-AA2{color:#676C7E;}
+ .d2-4040400291 .color-AA4{color:#CFD2DD;}
+ .d2-4040400291 .color-AA5{color:#DEE1EB;}
+ .d2-4040400291 .color-AB4{color:#CFD2DD;}
+ .d2-4040400291 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-4040400291);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-4040400291);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-4040400291);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-4040400291);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-4040400291);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-4040400291);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-4040400291);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-4040400291);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-4040400291);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-4040400291);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-4040400291);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-4040400291);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-4040400291);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-4040400291);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-4040400291);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-4040400291);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-4040400291);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-4040400291);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Zero Learn Generate Manage Hero
+
+
diff --git a/_includes/footer.html b/_includes/footer.html
index ec183e3..8cf372a 100644
--- a/_includes/footer.html
+++ b/_includes/footer.html
@@ -19,6 +19,7 @@
Resources
Compliance
Pricing
+ Trust Center
Login
diff --git a/assets/css/styles.css b/assets/css/styles.css
index 131b7ab..e42f1f4 100644
--- a/assets/css/styles.css
+++ b/assets/css/styles.css
@@ -744,6 +744,10 @@ video {
margin-top: 0px;
}
+.mt-0\.5 {
+ margin-top: 0.125rem;
+}
+
.mt-1 {
margin-top: 0.25rem;
}
@@ -947,6 +951,10 @@ video {
width: 1.75rem;
}
+.w-72 {
+ width: 18rem;
+}
+
.w-8 {
width: 2rem;
}
@@ -967,10 +975,6 @@ video {
width: 100%;
}
-.w-px {
- width: 1px;
-}
-
.max-w-2xl {
max-width: 42rem;
}
@@ -1172,6 +1176,12 @@ video {
margin-bottom: calc(6rem * var(--tw-space-y-reverse));
}
+.space-y-4 > :not([hidden]) ~ :not([hidden]) {
+ --tw-space-y-reverse: 0;
+ margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
+ margin-bottom: calc(1rem * var(--tw-space-y-reverse));
+}
+
.space-y-6 > :not([hidden]) ~ :not([hidden]) {
--tw-space-y-reverse: 0;
margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
@@ -1355,6 +1365,11 @@ video {
background-color: rgb(216 116 169 / var(--tw-bg-opacity, 1));
}
+.bg-amber-50 {
+ --tw-bg-opacity: 1;
+ background-color: rgb(255 251 235 / var(--tw-bg-opacity, 1));
+}
+
.bg-blue-50 {
--tw-bg-opacity: 1;
background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));
@@ -1429,10 +1444,6 @@ video {
background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}
-.bg-white\/30 {
- background-color: rgb(255 255 255 / 0.3);
-}
-
.bg-white\/5 {
background-color: rgb(255 255 255 / 0.05);
}
@@ -1449,6 +1460,10 @@ video {
background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
}
+.bg-gradient-to-r {
+ background-image: linear-gradient(to right, var(--tw-gradient-stops));
+}
+
.from-\[\#201B4C\] {
--tw-gradient-from: #201B4C var(--tw-gradient-from-position);
--tw-gradient-to: rgb(32 27 76 / 0) var(--tw-gradient-to-position);
@@ -1467,6 +1482,12 @@ video {
--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
+.from-gray-50 {
+ --tw-gradient-from: #f9fafb var(--tw-gradient-from-position);
+ --tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);
+ --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
+}
+
.from-white {
--tw-gradient-from: #FFFFFF var(--tw-gradient-from-position);
--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);
@@ -1825,6 +1846,11 @@ video {
color: rgb(216 116 169 / var(--tw-text-opacity, 1));
}
+.text-amber-500 {
+ --tw-text-opacity: 1;
+ color: rgb(245 158 11 / var(--tw-text-opacity, 1));
+}
+
.text-blue-500 {
--tw-text-opacity: 1;
color: rgb(59 130 246 / var(--tw-text-opacity, 1));
@@ -2064,6 +2090,10 @@ video {
border-color: rgb(138 125 255 / var(--tw-border-opacity, 1));
}
+.hover\:border-\[\#8A7DFF\]\/30:hover {
+ border-color: rgb(138 125 255 / 0.3);
+}
+
.hover\:bg-\[\#37306B\]:hover {
--tw-bg-opacity: 1;
background-color: rgb(55 48 107 / var(--tw-bg-opacity, 1));
@@ -2261,10 +2291,6 @@ video {
align-items: center;
}
- .md\:justify-start {
- justify-content: flex-start;
- }
-
.md\:gap-12 {
gap: 3rem;
}
@@ -2330,10 +2356,6 @@ video {
grid-template-columns: repeat(4, minmax(0, 1fr));
}
- .lg\:grid-cols-5 {
- grid-template-columns: repeat(5, minmax(0, 1fr));
- }
-
.lg\:flex-row {
flex-direction: row;
}
diff --git a/assets/images/d2/generation.svg b/assets/images/d2/generation.svg
index 9374e35..1ccbbdc 100644
--- a/assets/images/d2/generation.svg
+++ b/assets/images/d2/generation.svg
@@ -1,15 +1,15 @@
-
Generation Augmentation Enrichment Signing
-
+ .d2-2689689697 .fill-N1{fill:#0A0F25;}
+ .d2-2689689697 .fill-N2{fill:#676C7E;}
+ .d2-2689689697 .fill-N3{fill:#9499AB;}
+ .d2-2689689697 .fill-N4{fill:#CFD2DD;}
+ .d2-2689689697 .fill-N5{fill:#DEE1EB;}
+ .d2-2689689697 .fill-N6{fill:#EEF1F8;}
+ .d2-2689689697 .fill-N7{fill:#FFFFFF;}
+ .d2-2689689697 .fill-B1{fill:#0A0F25;}
+ .d2-2689689697 .fill-B2{fill:#676C7E;}
+ .d2-2689689697 .fill-B3{fill:#9499AB;}
+ .d2-2689689697 .fill-B4{fill:#CFD2DD;}
+ .d2-2689689697 .fill-B5{fill:#DEE1EB;}
+ .d2-2689689697 .fill-B6{fill:#EEF1F8;}
+ .d2-2689689697 .fill-AA2{fill:#676C7E;}
+ .d2-2689689697 .fill-AA4{fill:#CFD2DD;}
+ .d2-2689689697 .fill-AA5{fill:#DEE1EB;}
+ .d2-2689689697 .fill-AB4{fill:#CFD2DD;}
+ .d2-2689689697 .fill-AB5{fill:#DEE1EB;}
+ .d2-2689689697 .stroke-N1{stroke:#0A0F25;}
+ .d2-2689689697 .stroke-N2{stroke:#676C7E;}
+ .d2-2689689697 .stroke-N3{stroke:#9499AB;}
+ .d2-2689689697 .stroke-N4{stroke:#CFD2DD;}
+ .d2-2689689697 .stroke-N5{stroke:#DEE1EB;}
+ .d2-2689689697 .stroke-N6{stroke:#EEF1F8;}
+ .d2-2689689697 .stroke-N7{stroke:#FFFFFF;}
+ .d2-2689689697 .stroke-B1{stroke:#0A0F25;}
+ .d2-2689689697 .stroke-B2{stroke:#676C7E;}
+ .d2-2689689697 .stroke-B3{stroke:#9499AB;}
+ .d2-2689689697 .stroke-B4{stroke:#CFD2DD;}
+ .d2-2689689697 .stroke-B5{stroke:#DEE1EB;}
+ .d2-2689689697 .stroke-B6{stroke:#EEF1F8;}
+ .d2-2689689697 .stroke-AA2{stroke:#676C7E;}
+ .d2-2689689697 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-2689689697 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-2689689697 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-2689689697 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-2689689697 .background-color-N1{background-color:#0A0F25;}
+ .d2-2689689697 .background-color-N2{background-color:#676C7E;}
+ .d2-2689689697 .background-color-N3{background-color:#9499AB;}
+ .d2-2689689697 .background-color-N4{background-color:#CFD2DD;}
+ .d2-2689689697 .background-color-N5{background-color:#DEE1EB;}
+ .d2-2689689697 .background-color-N6{background-color:#EEF1F8;}
+ .d2-2689689697 .background-color-N7{background-color:#FFFFFF;}
+ .d2-2689689697 .background-color-B1{background-color:#0A0F25;}
+ .d2-2689689697 .background-color-B2{background-color:#676C7E;}
+ .d2-2689689697 .background-color-B3{background-color:#9499AB;}
+ .d2-2689689697 .background-color-B4{background-color:#CFD2DD;}
+ .d2-2689689697 .background-color-B5{background-color:#DEE1EB;}
+ .d2-2689689697 .background-color-B6{background-color:#EEF1F8;}
+ .d2-2689689697 .background-color-AA2{background-color:#676C7E;}
+ .d2-2689689697 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-2689689697 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-2689689697 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-2689689697 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-2689689697 .color-N1{color:#0A0F25;}
+ .d2-2689689697 .color-N2{color:#676C7E;}
+ .d2-2689689697 .color-N3{color:#9499AB;}
+ .d2-2689689697 .color-N4{color:#CFD2DD;}
+ .d2-2689689697 .color-N5{color:#DEE1EB;}
+ .d2-2689689697 .color-N6{color:#EEF1F8;}
+ .d2-2689689697 .color-N7{color:#FFFFFF;}
+ .d2-2689689697 .color-B1{color:#0A0F25;}
+ .d2-2689689697 .color-B2{color:#676C7E;}
+ .d2-2689689697 .color-B3{color:#9499AB;}
+ .d2-2689689697 .color-B4{color:#CFD2DD;}
+ .d2-2689689697 .color-B5{color:#DEE1EB;}
+ .d2-2689689697 .color-B6{color:#EEF1F8;}
+ .d2-2689689697 .color-AA2{color:#676C7E;}
+ .d2-2689689697 .color-AA4{color:#CFD2DD;}
+ .d2-2689689697 .color-AA5{color:#DEE1EB;}
+ .d2-2689689697 .color-AB4{color:#CFD2DD;}
+ .d2-2689689697 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-2689689697);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-2689689697);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-2689689697);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-2689689697);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2689689697);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2689689697);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2689689697);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-2689689697);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2689689697);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-2689689697);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2689689697);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2689689697);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2689689697);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2689689697);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2689689697);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2689689697);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2689689697);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2689689697);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Generation Augmentation Enrichment Signing
+
diff --git a/assets/images/d2/lifecycle.svg b/assets/images/d2/lifecycle.svg
index 7664ef8..18c2b88 100644
--- a/assets/images/d2/lifecycle.svg
+++ b/assets/images/d2/lifecycle.svg
@@ -1,9 +1,9 @@
-
Authoring Distribution Analysis Generation Augmentation Enrichment Signing
-
+ .d2-3897458564 .fill-N1{fill:#0A0F25;}
+ .d2-3897458564 .fill-N2{fill:#676C7E;}
+ .d2-3897458564 .fill-N3{fill:#9499AB;}
+ .d2-3897458564 .fill-N4{fill:#CFD2DD;}
+ .d2-3897458564 .fill-N5{fill:#DEE1EB;}
+ .d2-3897458564 .fill-N6{fill:#EEF1F8;}
+ .d2-3897458564 .fill-N7{fill:#FFFFFF;}
+ .d2-3897458564 .fill-B1{fill:#0A0F25;}
+ .d2-3897458564 .fill-B2{fill:#676C7E;}
+ .d2-3897458564 .fill-B3{fill:#9499AB;}
+ .d2-3897458564 .fill-B4{fill:#CFD2DD;}
+ .d2-3897458564 .fill-B5{fill:#DEE1EB;}
+ .d2-3897458564 .fill-B6{fill:#EEF1F8;}
+ .d2-3897458564 .fill-AA2{fill:#676C7E;}
+ .d2-3897458564 .fill-AA4{fill:#CFD2DD;}
+ .d2-3897458564 .fill-AA5{fill:#DEE1EB;}
+ .d2-3897458564 .fill-AB4{fill:#CFD2DD;}
+ .d2-3897458564 .fill-AB5{fill:#DEE1EB;}
+ .d2-3897458564 .stroke-N1{stroke:#0A0F25;}
+ .d2-3897458564 .stroke-N2{stroke:#676C7E;}
+ .d2-3897458564 .stroke-N3{stroke:#9499AB;}
+ .d2-3897458564 .stroke-N4{stroke:#CFD2DD;}
+ .d2-3897458564 .stroke-N5{stroke:#DEE1EB;}
+ .d2-3897458564 .stroke-N6{stroke:#EEF1F8;}
+ .d2-3897458564 .stroke-N7{stroke:#FFFFFF;}
+ .d2-3897458564 .stroke-B1{stroke:#0A0F25;}
+ .d2-3897458564 .stroke-B2{stroke:#676C7E;}
+ .d2-3897458564 .stroke-B3{stroke:#9499AB;}
+ .d2-3897458564 .stroke-B4{stroke:#CFD2DD;}
+ .d2-3897458564 .stroke-B5{stroke:#DEE1EB;}
+ .d2-3897458564 .stroke-B6{stroke:#EEF1F8;}
+ .d2-3897458564 .stroke-AA2{stroke:#676C7E;}
+ .d2-3897458564 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-3897458564 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-3897458564 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-3897458564 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-3897458564 .background-color-N1{background-color:#0A0F25;}
+ .d2-3897458564 .background-color-N2{background-color:#676C7E;}
+ .d2-3897458564 .background-color-N3{background-color:#9499AB;}
+ .d2-3897458564 .background-color-N4{background-color:#CFD2DD;}
+ .d2-3897458564 .background-color-N5{background-color:#DEE1EB;}
+ .d2-3897458564 .background-color-N6{background-color:#EEF1F8;}
+ .d2-3897458564 .background-color-N7{background-color:#FFFFFF;}
+ .d2-3897458564 .background-color-B1{background-color:#0A0F25;}
+ .d2-3897458564 .background-color-B2{background-color:#676C7E;}
+ .d2-3897458564 .background-color-B3{background-color:#9499AB;}
+ .d2-3897458564 .background-color-B4{background-color:#CFD2DD;}
+ .d2-3897458564 .background-color-B5{background-color:#DEE1EB;}
+ .d2-3897458564 .background-color-B6{background-color:#EEF1F8;}
+ .d2-3897458564 .background-color-AA2{background-color:#676C7E;}
+ .d2-3897458564 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-3897458564 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-3897458564 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-3897458564 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-3897458564 .color-N1{color:#0A0F25;}
+ .d2-3897458564 .color-N2{color:#676C7E;}
+ .d2-3897458564 .color-N3{color:#9499AB;}
+ .d2-3897458564 .color-N4{color:#CFD2DD;}
+ .d2-3897458564 .color-N5{color:#DEE1EB;}
+ .d2-3897458564 .color-N6{color:#EEF1F8;}
+ .d2-3897458564 .color-N7{color:#FFFFFF;}
+ .d2-3897458564 .color-B1{color:#0A0F25;}
+ .d2-3897458564 .color-B2{color:#676C7E;}
+ .d2-3897458564 .color-B3{color:#9499AB;}
+ .d2-3897458564 .color-B4{color:#CFD2DD;}
+ .d2-3897458564 .color-B5{color:#DEE1EB;}
+ .d2-3897458564 .color-B6{color:#EEF1F8;}
+ .d2-3897458564 .color-AA2{color:#676C7E;}
+ .d2-3897458564 .color-AA4{color:#CFD2DD;}
+ .d2-3897458564 .color-AA5{color:#DEE1EB;}
+ .d2-3897458564 .color-AB4{color:#CFD2DD;}
+ .d2-3897458564 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-3897458564);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-3897458564);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-3897458564);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-3897458564);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3897458564);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3897458564);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3897458564);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-3897458564);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3897458564);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-3897458564);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3897458564);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3897458564);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3897458564);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3897458564);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3897458564);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3897458564);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3897458564);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3897458564);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Authoring Distribution Analysis Generation Augmentation Enrichment Signing
+
diff --git a/assets/images/d2/quality-gap.svg b/assets/images/d2/quality-gap.svg
new file mode 100644
index 0000000..f672922
--- /dev/null
+++ b/assets/images/d2/quality-gap.svg
@@ -0,0 +1,108 @@
+
Your SBOM Your Lockfile sbomify action Quality SBOM or
+
+
+
diff --git a/assets/images/d2/sbom-hierarchy.svg b/assets/images/d2/sbom-hierarchy.svg
index 8b48e69..33f40be 100644
--- a/assets/images/d2/sbom-hierarchy.svg
+++ b/assets/images/d2/sbom-hierarchy.svg
@@ -1,9 +1,9 @@
-
Product SBOM Project SBOM(s) Component SBOM(s) Smart Thermostat Backend IoT Device Python SBOM Node SBOM Docker SBOM Rust SBOM Project SBOM Project SBOM
-
-
-
+ .d2-984039587 .fill-N1{fill:#0A0F25;}
+ .d2-984039587 .fill-N2{fill:#676C7E;}
+ .d2-984039587 .fill-N3{fill:#9499AB;}
+ .d2-984039587 .fill-N4{fill:#CFD2DD;}
+ .d2-984039587 .fill-N5{fill:#DEE1EB;}
+ .d2-984039587 .fill-N6{fill:#EEF1F8;}
+ .d2-984039587 .fill-N7{fill:#FFFFFF;}
+ .d2-984039587 .fill-B1{fill:#0A0F25;}
+ .d2-984039587 .fill-B2{fill:#676C7E;}
+ .d2-984039587 .fill-B3{fill:#9499AB;}
+ .d2-984039587 .fill-B4{fill:#CFD2DD;}
+ .d2-984039587 .fill-B5{fill:#DEE1EB;}
+ .d2-984039587 .fill-B6{fill:#EEF1F8;}
+ .d2-984039587 .fill-AA2{fill:#676C7E;}
+ .d2-984039587 .fill-AA4{fill:#CFD2DD;}
+ .d2-984039587 .fill-AA5{fill:#DEE1EB;}
+ .d2-984039587 .fill-AB4{fill:#CFD2DD;}
+ .d2-984039587 .fill-AB5{fill:#DEE1EB;}
+ .d2-984039587 .stroke-N1{stroke:#0A0F25;}
+ .d2-984039587 .stroke-N2{stroke:#676C7E;}
+ .d2-984039587 .stroke-N3{stroke:#9499AB;}
+ .d2-984039587 .stroke-N4{stroke:#CFD2DD;}
+ .d2-984039587 .stroke-N5{stroke:#DEE1EB;}
+ .d2-984039587 .stroke-N6{stroke:#EEF1F8;}
+ .d2-984039587 .stroke-N7{stroke:#FFFFFF;}
+ .d2-984039587 .stroke-B1{stroke:#0A0F25;}
+ .d2-984039587 .stroke-B2{stroke:#676C7E;}
+ .d2-984039587 .stroke-B3{stroke:#9499AB;}
+ .d2-984039587 .stroke-B4{stroke:#CFD2DD;}
+ .d2-984039587 .stroke-B5{stroke:#DEE1EB;}
+ .d2-984039587 .stroke-B6{stroke:#EEF1F8;}
+ .d2-984039587 .stroke-AA2{stroke:#676C7E;}
+ .d2-984039587 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-984039587 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-984039587 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-984039587 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-984039587 .background-color-N1{background-color:#0A0F25;}
+ .d2-984039587 .background-color-N2{background-color:#676C7E;}
+ .d2-984039587 .background-color-N3{background-color:#9499AB;}
+ .d2-984039587 .background-color-N4{background-color:#CFD2DD;}
+ .d2-984039587 .background-color-N5{background-color:#DEE1EB;}
+ .d2-984039587 .background-color-N6{background-color:#EEF1F8;}
+ .d2-984039587 .background-color-N7{background-color:#FFFFFF;}
+ .d2-984039587 .background-color-B1{background-color:#0A0F25;}
+ .d2-984039587 .background-color-B2{background-color:#676C7E;}
+ .d2-984039587 .background-color-B3{background-color:#9499AB;}
+ .d2-984039587 .background-color-B4{background-color:#CFD2DD;}
+ .d2-984039587 .background-color-B5{background-color:#DEE1EB;}
+ .d2-984039587 .background-color-B6{background-color:#EEF1F8;}
+ .d2-984039587 .background-color-AA2{background-color:#676C7E;}
+ .d2-984039587 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-984039587 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-984039587 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-984039587 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-984039587 .color-N1{color:#0A0F25;}
+ .d2-984039587 .color-N2{color:#676C7E;}
+ .d2-984039587 .color-N3{color:#9499AB;}
+ .d2-984039587 .color-N4{color:#CFD2DD;}
+ .d2-984039587 .color-N5{color:#DEE1EB;}
+ .d2-984039587 .color-N6{color:#EEF1F8;}
+ .d2-984039587 .color-N7{color:#FFFFFF;}
+ .d2-984039587 .color-B1{color:#0A0F25;}
+ .d2-984039587 .color-B2{color:#676C7E;}
+ .d2-984039587 .color-B3{color:#9499AB;}
+ .d2-984039587 .color-B4{color:#CFD2DD;}
+ .d2-984039587 .color-B5{color:#DEE1EB;}
+ .d2-984039587 .color-B6{color:#EEF1F8;}
+ .d2-984039587 .color-AA2{color:#676C7E;}
+ .d2-984039587 .color-AA4{color:#CFD2DD;}
+ .d2-984039587 .color-AA5{color:#DEE1EB;}
+ .d2-984039587 .color-AB4{color:#CFD2DD;}
+ .d2-984039587 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-984039587);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-984039587);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-984039587);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-984039587);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-984039587);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-984039587);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-984039587);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-984039587);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-984039587);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-984039587);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-984039587);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-984039587);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-984039587);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-984039587);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-984039587);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-984039587);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-984039587);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-984039587);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Product SBOM Project SBOM(s) Component SBOM(s) Smart Thermostat Backend IoT Device Python SBOM Node SBOM Docker SBOM Rust SBOM Project SBOM Project SBOM
+
+
+
diff --git a/assets/images/d2/sbom-hub.svg b/assets/images/d2/sbom-hub.svg
index c9da9c8..db9448d 100644
--- a/assets/images/d2/sbom-hub.svg
+++ b/assets/images/d2/sbom-hub.svg
@@ -1,22 +1,22 @@
-
Vendor Buyer Regulator Analysis Tool sbomify SBOMs Compliance Documents Pentest Result Audit
-
-
-
-
-
+ .d2-311409712 .fill-N1{fill:#0A0F25;}
+ .d2-311409712 .fill-N2{fill:#676C7E;}
+ .d2-311409712 .fill-N3{fill:#9499AB;}
+ .d2-311409712 .fill-N4{fill:#CFD2DD;}
+ .d2-311409712 .fill-N5{fill:#DEE1EB;}
+ .d2-311409712 .fill-N6{fill:#EEF1F8;}
+ .d2-311409712 .fill-N7{fill:#FFFFFF;}
+ .d2-311409712 .fill-B1{fill:#0A0F25;}
+ .d2-311409712 .fill-B2{fill:#676C7E;}
+ .d2-311409712 .fill-B3{fill:#9499AB;}
+ .d2-311409712 .fill-B4{fill:#CFD2DD;}
+ .d2-311409712 .fill-B5{fill:#DEE1EB;}
+ .d2-311409712 .fill-B6{fill:#EEF1F8;}
+ .d2-311409712 .fill-AA2{fill:#676C7E;}
+ .d2-311409712 .fill-AA4{fill:#CFD2DD;}
+ .d2-311409712 .fill-AA5{fill:#DEE1EB;}
+ .d2-311409712 .fill-AB4{fill:#CFD2DD;}
+ .d2-311409712 .fill-AB5{fill:#DEE1EB;}
+ .d2-311409712 .stroke-N1{stroke:#0A0F25;}
+ .d2-311409712 .stroke-N2{stroke:#676C7E;}
+ .d2-311409712 .stroke-N3{stroke:#9499AB;}
+ .d2-311409712 .stroke-N4{stroke:#CFD2DD;}
+ .d2-311409712 .stroke-N5{stroke:#DEE1EB;}
+ .d2-311409712 .stroke-N6{stroke:#EEF1F8;}
+ .d2-311409712 .stroke-N7{stroke:#FFFFFF;}
+ .d2-311409712 .stroke-B1{stroke:#0A0F25;}
+ .d2-311409712 .stroke-B2{stroke:#676C7E;}
+ .d2-311409712 .stroke-B3{stroke:#9499AB;}
+ .d2-311409712 .stroke-B4{stroke:#CFD2DD;}
+ .d2-311409712 .stroke-B5{stroke:#DEE1EB;}
+ .d2-311409712 .stroke-B6{stroke:#EEF1F8;}
+ .d2-311409712 .stroke-AA2{stroke:#676C7E;}
+ .d2-311409712 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-311409712 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-311409712 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-311409712 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-311409712 .background-color-N1{background-color:#0A0F25;}
+ .d2-311409712 .background-color-N2{background-color:#676C7E;}
+ .d2-311409712 .background-color-N3{background-color:#9499AB;}
+ .d2-311409712 .background-color-N4{background-color:#CFD2DD;}
+ .d2-311409712 .background-color-N5{background-color:#DEE1EB;}
+ .d2-311409712 .background-color-N6{background-color:#EEF1F8;}
+ .d2-311409712 .background-color-N7{background-color:#FFFFFF;}
+ .d2-311409712 .background-color-B1{background-color:#0A0F25;}
+ .d2-311409712 .background-color-B2{background-color:#676C7E;}
+ .d2-311409712 .background-color-B3{background-color:#9499AB;}
+ .d2-311409712 .background-color-B4{background-color:#CFD2DD;}
+ .d2-311409712 .background-color-B5{background-color:#DEE1EB;}
+ .d2-311409712 .background-color-B6{background-color:#EEF1F8;}
+ .d2-311409712 .background-color-AA2{background-color:#676C7E;}
+ .d2-311409712 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-311409712 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-311409712 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-311409712 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-311409712 .color-N1{color:#0A0F25;}
+ .d2-311409712 .color-N2{color:#676C7E;}
+ .d2-311409712 .color-N3{color:#9499AB;}
+ .d2-311409712 .color-N4{color:#CFD2DD;}
+ .d2-311409712 .color-N5{color:#DEE1EB;}
+ .d2-311409712 .color-N6{color:#EEF1F8;}
+ .d2-311409712 .color-N7{color:#FFFFFF;}
+ .d2-311409712 .color-B1{color:#0A0F25;}
+ .d2-311409712 .color-B2{color:#676C7E;}
+ .d2-311409712 .color-B3{color:#9499AB;}
+ .d2-311409712 .color-B4{color:#CFD2DD;}
+ .d2-311409712 .color-B5{color:#DEE1EB;}
+ .d2-311409712 .color-B6{color:#EEF1F8;}
+ .d2-311409712 .color-AA2{color:#676C7E;}
+ .d2-311409712 .color-AA4{color:#CFD2DD;}
+ .d2-311409712 .color-AA5{color:#DEE1EB;}
+ .d2-311409712 .color-AB4{color:#CFD2DD;}
+ .d2-311409712 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-311409712);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-311409712);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-311409712);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-311409712);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-311409712);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-311409712);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-311409712);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-311409712);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-311409712);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-311409712);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-311409712);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-311409712);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-311409712);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-311409712);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-311409712);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-311409712);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-311409712);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-311409712);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Vendor Buyer Regulator Analysis Tool sbomify SBOMs Compliance Documents Pentest Result Audit
+
+
+
+
+
diff --git a/assets/images/d2/sbom-releases.svg b/assets/images/d2/sbom-releases.svg
index b5979c0..9217820 100644
--- a/assets/images/d2/sbom-releases.svg
+++ b/assets/images/d2/sbom-releases.svg
@@ -1,9 +1,9 @@
-
Product Releases Component Artifacts Payment Portal User API Stripe Service v2.0 Stable Release v2.1 Latest Release v1.2 v1.3 v4.2 Upgraded Reused Stable Release
-
+ .d2-2152458290 .fill-N1{fill:#0A0F25;}
+ .d2-2152458290 .fill-N2{fill:#676C7E;}
+ .d2-2152458290 .fill-N3{fill:#9499AB;}
+ .d2-2152458290 .fill-N4{fill:#CFD2DD;}
+ .d2-2152458290 .fill-N5{fill:#DEE1EB;}
+ .d2-2152458290 .fill-N6{fill:#EEF1F8;}
+ .d2-2152458290 .fill-N7{fill:#FFFFFF;}
+ .d2-2152458290 .fill-B1{fill:#0A0F25;}
+ .d2-2152458290 .fill-B2{fill:#676C7E;}
+ .d2-2152458290 .fill-B3{fill:#9499AB;}
+ .d2-2152458290 .fill-B4{fill:#CFD2DD;}
+ .d2-2152458290 .fill-B5{fill:#DEE1EB;}
+ .d2-2152458290 .fill-B6{fill:#EEF1F8;}
+ .d2-2152458290 .fill-AA2{fill:#676C7E;}
+ .d2-2152458290 .fill-AA4{fill:#CFD2DD;}
+ .d2-2152458290 .fill-AA5{fill:#DEE1EB;}
+ .d2-2152458290 .fill-AB4{fill:#CFD2DD;}
+ .d2-2152458290 .fill-AB5{fill:#DEE1EB;}
+ .d2-2152458290 .stroke-N1{stroke:#0A0F25;}
+ .d2-2152458290 .stroke-N2{stroke:#676C7E;}
+ .d2-2152458290 .stroke-N3{stroke:#9499AB;}
+ .d2-2152458290 .stroke-N4{stroke:#CFD2DD;}
+ .d2-2152458290 .stroke-N5{stroke:#DEE1EB;}
+ .d2-2152458290 .stroke-N6{stroke:#EEF1F8;}
+ .d2-2152458290 .stroke-N7{stroke:#FFFFFF;}
+ .d2-2152458290 .stroke-B1{stroke:#0A0F25;}
+ .d2-2152458290 .stroke-B2{stroke:#676C7E;}
+ .d2-2152458290 .stroke-B3{stroke:#9499AB;}
+ .d2-2152458290 .stroke-B4{stroke:#CFD2DD;}
+ .d2-2152458290 .stroke-B5{stroke:#DEE1EB;}
+ .d2-2152458290 .stroke-B6{stroke:#EEF1F8;}
+ .d2-2152458290 .stroke-AA2{stroke:#676C7E;}
+ .d2-2152458290 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-2152458290 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-2152458290 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-2152458290 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-2152458290 .background-color-N1{background-color:#0A0F25;}
+ .d2-2152458290 .background-color-N2{background-color:#676C7E;}
+ .d2-2152458290 .background-color-N3{background-color:#9499AB;}
+ .d2-2152458290 .background-color-N4{background-color:#CFD2DD;}
+ .d2-2152458290 .background-color-N5{background-color:#DEE1EB;}
+ .d2-2152458290 .background-color-N6{background-color:#EEF1F8;}
+ .d2-2152458290 .background-color-N7{background-color:#FFFFFF;}
+ .d2-2152458290 .background-color-B1{background-color:#0A0F25;}
+ .d2-2152458290 .background-color-B2{background-color:#676C7E;}
+ .d2-2152458290 .background-color-B3{background-color:#9499AB;}
+ .d2-2152458290 .background-color-B4{background-color:#CFD2DD;}
+ .d2-2152458290 .background-color-B5{background-color:#DEE1EB;}
+ .d2-2152458290 .background-color-B6{background-color:#EEF1F8;}
+ .d2-2152458290 .background-color-AA2{background-color:#676C7E;}
+ .d2-2152458290 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-2152458290 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-2152458290 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-2152458290 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-2152458290 .color-N1{color:#0A0F25;}
+ .d2-2152458290 .color-N2{color:#676C7E;}
+ .d2-2152458290 .color-N3{color:#9499AB;}
+ .d2-2152458290 .color-N4{color:#CFD2DD;}
+ .d2-2152458290 .color-N5{color:#DEE1EB;}
+ .d2-2152458290 .color-N6{color:#EEF1F8;}
+ .d2-2152458290 .color-N7{color:#FFFFFF;}
+ .d2-2152458290 .color-B1{color:#0A0F25;}
+ .d2-2152458290 .color-B2{color:#676C7E;}
+ .d2-2152458290 .color-B3{color:#9499AB;}
+ .d2-2152458290 .color-B4{color:#CFD2DD;}
+ .d2-2152458290 .color-B5{color:#DEE1EB;}
+ .d2-2152458290 .color-B6{color:#EEF1F8;}
+ .d2-2152458290 .color-AA2{color:#676C7E;}
+ .d2-2152458290 .color-AA4{color:#CFD2DD;}
+ .d2-2152458290 .color-AA5{color:#DEE1EB;}
+ .d2-2152458290 .color-AB4{color:#CFD2DD;}
+ .d2-2152458290 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-2152458290);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-2152458290);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-2152458290);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-2152458290);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2152458290);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2152458290);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2152458290);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-2152458290);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2152458290);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-2152458290);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2152458290);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2152458290);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2152458290);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2152458290);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2152458290);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2152458290);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2152458290);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2152458290);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Product Releases Component Artifacts Payment Portal User API Stripe Service v2.0 Stable Release v2.1 Latest Release v1.2 v1.3 v4.2 Upgraded Reused Stable Release
+
-
+
-Latest Release
-
+ Latest Release
+
-
+
-
-
-
-
+
+
+
+
diff --git a/assets/images/d2/sbomify-action-flow.svg b/assets/images/d2/sbomify-action-flow.svg
new file mode 100644
index 0000000..17ef027
--- /dev/null
+++ b/assets/images/d2/sbomify-action-flow.svg
@@ -0,0 +1,108 @@
+Your Code sbomify action Generate Augment Enrich Compliance-Ready Regulation Checks Verify Attestation
+
+
+
diff --git a/assets/images/d2/screenly-hierarchy.svg b/assets/images/d2/screenly-hierarchy.svg
index e2834e4..9bfaa03 100644
--- a/assets/images/d2/screenly-hierarchy.svg
+++ b/assets/images/d2/screenly-hierarchy.svg
@@ -1,9 +1,9 @@
-Product SBOM Project SBOM(s) Component SBOM(s) Screenly Backend Screenly Player JS SBOM Python Backend SBOM Docker SBOM Rust SBOM Python Player SBOM QT SBOM OS SBOM
-
+ .d2-629534892 .fill-N1{fill:#0A0F25;}
+ .d2-629534892 .fill-N2{fill:#676C7E;}
+ .d2-629534892 .fill-N3{fill:#9499AB;}
+ .d2-629534892 .fill-N4{fill:#CFD2DD;}
+ .d2-629534892 .fill-N5{fill:#DEE1EB;}
+ .d2-629534892 .fill-N6{fill:#EEF1F8;}
+ .d2-629534892 .fill-N7{fill:#FFFFFF;}
+ .d2-629534892 .fill-B1{fill:#0A0F25;}
+ .d2-629534892 .fill-B2{fill:#676C7E;}
+ .d2-629534892 .fill-B3{fill:#9499AB;}
+ .d2-629534892 .fill-B4{fill:#CFD2DD;}
+ .d2-629534892 .fill-B5{fill:#DEE1EB;}
+ .d2-629534892 .fill-B6{fill:#EEF1F8;}
+ .d2-629534892 .fill-AA2{fill:#676C7E;}
+ .d2-629534892 .fill-AA4{fill:#CFD2DD;}
+ .d2-629534892 .fill-AA5{fill:#DEE1EB;}
+ .d2-629534892 .fill-AB4{fill:#CFD2DD;}
+ .d2-629534892 .fill-AB5{fill:#DEE1EB;}
+ .d2-629534892 .stroke-N1{stroke:#0A0F25;}
+ .d2-629534892 .stroke-N2{stroke:#676C7E;}
+ .d2-629534892 .stroke-N3{stroke:#9499AB;}
+ .d2-629534892 .stroke-N4{stroke:#CFD2DD;}
+ .d2-629534892 .stroke-N5{stroke:#DEE1EB;}
+ .d2-629534892 .stroke-N6{stroke:#EEF1F8;}
+ .d2-629534892 .stroke-N7{stroke:#FFFFFF;}
+ .d2-629534892 .stroke-B1{stroke:#0A0F25;}
+ .d2-629534892 .stroke-B2{stroke:#676C7E;}
+ .d2-629534892 .stroke-B3{stroke:#9499AB;}
+ .d2-629534892 .stroke-B4{stroke:#CFD2DD;}
+ .d2-629534892 .stroke-B5{stroke:#DEE1EB;}
+ .d2-629534892 .stroke-B6{stroke:#EEF1F8;}
+ .d2-629534892 .stroke-AA2{stroke:#676C7E;}
+ .d2-629534892 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-629534892 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-629534892 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-629534892 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-629534892 .background-color-N1{background-color:#0A0F25;}
+ .d2-629534892 .background-color-N2{background-color:#676C7E;}
+ .d2-629534892 .background-color-N3{background-color:#9499AB;}
+ .d2-629534892 .background-color-N4{background-color:#CFD2DD;}
+ .d2-629534892 .background-color-N5{background-color:#DEE1EB;}
+ .d2-629534892 .background-color-N6{background-color:#EEF1F8;}
+ .d2-629534892 .background-color-N7{background-color:#FFFFFF;}
+ .d2-629534892 .background-color-B1{background-color:#0A0F25;}
+ .d2-629534892 .background-color-B2{background-color:#676C7E;}
+ .d2-629534892 .background-color-B3{background-color:#9499AB;}
+ .d2-629534892 .background-color-B4{background-color:#CFD2DD;}
+ .d2-629534892 .background-color-B5{background-color:#DEE1EB;}
+ .d2-629534892 .background-color-B6{background-color:#EEF1F8;}
+ .d2-629534892 .background-color-AA2{background-color:#676C7E;}
+ .d2-629534892 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-629534892 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-629534892 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-629534892 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-629534892 .color-N1{color:#0A0F25;}
+ .d2-629534892 .color-N2{color:#676C7E;}
+ .d2-629534892 .color-N3{color:#9499AB;}
+ .d2-629534892 .color-N4{color:#CFD2DD;}
+ .d2-629534892 .color-N5{color:#DEE1EB;}
+ .d2-629534892 .color-N6{color:#EEF1F8;}
+ .d2-629534892 .color-N7{color:#FFFFFF;}
+ .d2-629534892 .color-B1{color:#0A0F25;}
+ .d2-629534892 .color-B2{color:#676C7E;}
+ .d2-629534892 .color-B3{color:#9499AB;}
+ .d2-629534892 .color-B4{color:#CFD2DD;}
+ .d2-629534892 .color-B5{color:#DEE1EB;}
+ .d2-629534892 .color-B6{color:#EEF1F8;}
+ .d2-629534892 .color-AA2{color:#676C7E;}
+ .d2-629534892 .color-AA4{color:#CFD2DD;}
+ .d2-629534892 .color-AA5{color:#DEE1EB;}
+ .d2-629534892 .color-AB4{color:#CFD2DD;}
+ .d2-629534892 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-629534892);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-629534892);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-629534892);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-629534892);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-629534892);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-629534892);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-629534892);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-629534892);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-629534892);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-629534892);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-629534892);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-629534892);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-629534892);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-629534892);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-629534892);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-629534892);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-629534892);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-629534892);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Product SBOM Project SBOM(s) Component SBOM(s) Screenly Backend Screenly Player JS SBOM Python Backend SBOM Docker SBOM Rust SBOM Python Player SBOM QT SBOM OS SBOM
+
diff --git a/assets/images/d2/store-analyze-enrich.svg b/assets/images/d2/store-analyze-enrich.svg
index 9a01dbb..c9cc77e 100644
--- a/assets/images/d2/store-analyze-enrich.svg
+++ b/assets/images/d2/store-analyze-enrich.svg
@@ -1,9 +1,9 @@
-CI/CD Pipeline sbomify Analysis Generate Enrich & Augment Sign Upload Sync
-
-
-
+ .d2-1652541304 .fill-N1{fill:#0A0F25;}
+ .d2-1652541304 .fill-N2{fill:#676C7E;}
+ .d2-1652541304 .fill-N3{fill:#9499AB;}
+ .d2-1652541304 .fill-N4{fill:#CFD2DD;}
+ .d2-1652541304 .fill-N5{fill:#DEE1EB;}
+ .d2-1652541304 .fill-N6{fill:#EEF1F8;}
+ .d2-1652541304 .fill-N7{fill:#FFFFFF;}
+ .d2-1652541304 .fill-B1{fill:#0A0F25;}
+ .d2-1652541304 .fill-B2{fill:#676C7E;}
+ .d2-1652541304 .fill-B3{fill:#9499AB;}
+ .d2-1652541304 .fill-B4{fill:#CFD2DD;}
+ .d2-1652541304 .fill-B5{fill:#DEE1EB;}
+ .d2-1652541304 .fill-B6{fill:#EEF1F8;}
+ .d2-1652541304 .fill-AA2{fill:#676C7E;}
+ .d2-1652541304 .fill-AA4{fill:#CFD2DD;}
+ .d2-1652541304 .fill-AA5{fill:#DEE1EB;}
+ .d2-1652541304 .fill-AB4{fill:#CFD2DD;}
+ .d2-1652541304 .fill-AB5{fill:#DEE1EB;}
+ .d2-1652541304 .stroke-N1{stroke:#0A0F25;}
+ .d2-1652541304 .stroke-N2{stroke:#676C7E;}
+ .d2-1652541304 .stroke-N3{stroke:#9499AB;}
+ .d2-1652541304 .stroke-N4{stroke:#CFD2DD;}
+ .d2-1652541304 .stroke-N5{stroke:#DEE1EB;}
+ .d2-1652541304 .stroke-N6{stroke:#EEF1F8;}
+ .d2-1652541304 .stroke-N7{stroke:#FFFFFF;}
+ .d2-1652541304 .stroke-B1{stroke:#0A0F25;}
+ .d2-1652541304 .stroke-B2{stroke:#676C7E;}
+ .d2-1652541304 .stroke-B3{stroke:#9499AB;}
+ .d2-1652541304 .stroke-B4{stroke:#CFD2DD;}
+ .d2-1652541304 .stroke-B5{stroke:#DEE1EB;}
+ .d2-1652541304 .stroke-B6{stroke:#EEF1F8;}
+ .d2-1652541304 .stroke-AA2{stroke:#676C7E;}
+ .d2-1652541304 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-1652541304 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-1652541304 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-1652541304 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-1652541304 .background-color-N1{background-color:#0A0F25;}
+ .d2-1652541304 .background-color-N2{background-color:#676C7E;}
+ .d2-1652541304 .background-color-N3{background-color:#9499AB;}
+ .d2-1652541304 .background-color-N4{background-color:#CFD2DD;}
+ .d2-1652541304 .background-color-N5{background-color:#DEE1EB;}
+ .d2-1652541304 .background-color-N6{background-color:#EEF1F8;}
+ .d2-1652541304 .background-color-N7{background-color:#FFFFFF;}
+ .d2-1652541304 .background-color-B1{background-color:#0A0F25;}
+ .d2-1652541304 .background-color-B2{background-color:#676C7E;}
+ .d2-1652541304 .background-color-B3{background-color:#9499AB;}
+ .d2-1652541304 .background-color-B4{background-color:#CFD2DD;}
+ .d2-1652541304 .background-color-B5{background-color:#DEE1EB;}
+ .d2-1652541304 .background-color-B6{background-color:#EEF1F8;}
+ .d2-1652541304 .background-color-AA2{background-color:#676C7E;}
+ .d2-1652541304 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-1652541304 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-1652541304 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-1652541304 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-1652541304 .color-N1{color:#0A0F25;}
+ .d2-1652541304 .color-N2{color:#676C7E;}
+ .d2-1652541304 .color-N3{color:#9499AB;}
+ .d2-1652541304 .color-N4{color:#CFD2DD;}
+ .d2-1652541304 .color-N5{color:#DEE1EB;}
+ .d2-1652541304 .color-N6{color:#EEF1F8;}
+ .d2-1652541304 .color-N7{color:#FFFFFF;}
+ .d2-1652541304 .color-B1{color:#0A0F25;}
+ .d2-1652541304 .color-B2{color:#676C7E;}
+ .d2-1652541304 .color-B3{color:#9499AB;}
+ .d2-1652541304 .color-B4{color:#CFD2DD;}
+ .d2-1652541304 .color-B5{color:#DEE1EB;}
+ .d2-1652541304 .color-B6{color:#EEF1F8;}
+ .d2-1652541304 .color-AA2{color:#676C7E;}
+ .d2-1652541304 .color-AA4{color:#CFD2DD;}
+ .d2-1652541304 .color-AA5{color:#DEE1EB;}
+ .d2-1652541304 .color-AB4{color:#CFD2DD;}
+ .d2-1652541304 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-1652541304);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-1652541304);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-1652541304);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-1652541304);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1652541304);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1652541304);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1652541304);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-1652541304);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1652541304);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-1652541304);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1652541304);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1652541304);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1652541304);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1652541304);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1652541304);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1652541304);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1652541304);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1652541304);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>CI/CD Pipeline sbomify Analysis Generate Enrich & Augment Sign Upload Sync
+
+
+
diff --git a/assets/images/d2/test-diagram.svg b/assets/images/d2/test-diagram.svg
index 8fd7ddb..15a3779 100644
--- a/assets/images/d2/test-diagram.svg
+++ b/assets/images/d2/test-diagram.svg
@@ -1,22 +1,22 @@
-Vendor stack Regulator Buyer Analysis Tool sbomify SBOMs Compliance Docs Audit Reports
-
-
-
-
-
+ .d2-1236437165 .fill-N1{fill:#0A0F25;}
+ .d2-1236437165 .fill-N2{fill:#676C7E;}
+ .d2-1236437165 .fill-N3{fill:#9499AB;}
+ .d2-1236437165 .fill-N4{fill:#CFD2DD;}
+ .d2-1236437165 .fill-N5{fill:#DEE1EB;}
+ .d2-1236437165 .fill-N6{fill:#EEF1F8;}
+ .d2-1236437165 .fill-N7{fill:#FFFFFF;}
+ .d2-1236437165 .fill-B1{fill:#0A0F25;}
+ .d2-1236437165 .fill-B2{fill:#676C7E;}
+ .d2-1236437165 .fill-B3{fill:#9499AB;}
+ .d2-1236437165 .fill-B4{fill:#CFD2DD;}
+ .d2-1236437165 .fill-B5{fill:#DEE1EB;}
+ .d2-1236437165 .fill-B6{fill:#EEF1F8;}
+ .d2-1236437165 .fill-AA2{fill:#676C7E;}
+ .d2-1236437165 .fill-AA4{fill:#CFD2DD;}
+ .d2-1236437165 .fill-AA5{fill:#DEE1EB;}
+ .d2-1236437165 .fill-AB4{fill:#CFD2DD;}
+ .d2-1236437165 .fill-AB5{fill:#DEE1EB;}
+ .d2-1236437165 .stroke-N1{stroke:#0A0F25;}
+ .d2-1236437165 .stroke-N2{stroke:#676C7E;}
+ .d2-1236437165 .stroke-N3{stroke:#9499AB;}
+ .d2-1236437165 .stroke-N4{stroke:#CFD2DD;}
+ .d2-1236437165 .stroke-N5{stroke:#DEE1EB;}
+ .d2-1236437165 .stroke-N6{stroke:#EEF1F8;}
+ .d2-1236437165 .stroke-N7{stroke:#FFFFFF;}
+ .d2-1236437165 .stroke-B1{stroke:#0A0F25;}
+ .d2-1236437165 .stroke-B2{stroke:#676C7E;}
+ .d2-1236437165 .stroke-B3{stroke:#9499AB;}
+ .d2-1236437165 .stroke-B4{stroke:#CFD2DD;}
+ .d2-1236437165 .stroke-B5{stroke:#DEE1EB;}
+ .d2-1236437165 .stroke-B6{stroke:#EEF1F8;}
+ .d2-1236437165 .stroke-AA2{stroke:#676C7E;}
+ .d2-1236437165 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-1236437165 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-1236437165 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-1236437165 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-1236437165 .background-color-N1{background-color:#0A0F25;}
+ .d2-1236437165 .background-color-N2{background-color:#676C7E;}
+ .d2-1236437165 .background-color-N3{background-color:#9499AB;}
+ .d2-1236437165 .background-color-N4{background-color:#CFD2DD;}
+ .d2-1236437165 .background-color-N5{background-color:#DEE1EB;}
+ .d2-1236437165 .background-color-N6{background-color:#EEF1F8;}
+ .d2-1236437165 .background-color-N7{background-color:#FFFFFF;}
+ .d2-1236437165 .background-color-B1{background-color:#0A0F25;}
+ .d2-1236437165 .background-color-B2{background-color:#676C7E;}
+ .d2-1236437165 .background-color-B3{background-color:#9499AB;}
+ .d2-1236437165 .background-color-B4{background-color:#CFD2DD;}
+ .d2-1236437165 .background-color-B5{background-color:#DEE1EB;}
+ .d2-1236437165 .background-color-B6{background-color:#EEF1F8;}
+ .d2-1236437165 .background-color-AA2{background-color:#676C7E;}
+ .d2-1236437165 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-1236437165 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-1236437165 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-1236437165 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-1236437165 .color-N1{color:#0A0F25;}
+ .d2-1236437165 .color-N2{color:#676C7E;}
+ .d2-1236437165 .color-N3{color:#9499AB;}
+ .d2-1236437165 .color-N4{color:#CFD2DD;}
+ .d2-1236437165 .color-N5{color:#DEE1EB;}
+ .d2-1236437165 .color-N6{color:#EEF1F8;}
+ .d2-1236437165 .color-N7{color:#FFFFFF;}
+ .d2-1236437165 .color-B1{color:#0A0F25;}
+ .d2-1236437165 .color-B2{color:#676C7E;}
+ .d2-1236437165 .color-B3{color:#9499AB;}
+ .d2-1236437165 .color-B4{color:#CFD2DD;}
+ .d2-1236437165 .color-B5{color:#DEE1EB;}
+ .d2-1236437165 .color-B6{color:#EEF1F8;}
+ .d2-1236437165 .color-AA2{color:#676C7E;}
+ .d2-1236437165 .color-AA4{color:#CFD2DD;}
+ .d2-1236437165 .color-AA5{color:#DEE1EB;}
+ .d2-1236437165 .color-AB4{color:#CFD2DD;}
+ .d2-1236437165 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-1236437165);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-1236437165);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-1236437165);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-1236437165);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1236437165);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1236437165);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1236437165);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-1236437165);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1236437165);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-1236437165);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1236437165);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1236437165);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1236437165);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1236437165);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1236437165);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1236437165);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1236437165);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1236437165);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Vendor stack Regulator Buyer Analysis Tool sbomify SBOMs Compliance Docs Audit Reports
+
+
+
+
+
diff --git a/assets/images/d2/trust-chain.svg b/assets/images/d2/trust-chain.svg
new file mode 100644
index 0000000..7a8dc77
--- /dev/null
+++ b/assets/images/d2/trust-chain.svg
@@ -0,0 +1,116 @@
+CI/CD Pipeline Distribute Verify Generate Sign Signed SBOM Trust
+
+
+
+
diff --git a/assets/images/d2/what-is-sbom.svg b/assets/images/d2/what-is-sbom.svg
index 5115603..3bf4d5a 100644
--- a/assets/images/d2/what-is-sbom.svg
+++ b/assets/images/d2/what-is-sbom.svg
@@ -1,10 +1,10 @@
-Modern Application SBOM (Ingredients List) Dependencies of your libraries Open Source Libraries Your Source Code included in included in Cataloged by
-
-
-
-
+ .d2-361813584 .fill-N1{fill:#0A0F25;}
+ .d2-361813584 .fill-N2{fill:#676C7E;}
+ .d2-361813584 .fill-N3{fill:#9499AB;}
+ .d2-361813584 .fill-N4{fill:#CFD2DD;}
+ .d2-361813584 .fill-N5{fill:#DEE1EB;}
+ .d2-361813584 .fill-N6{fill:#EEF1F8;}
+ .d2-361813584 .fill-N7{fill:#FFFFFF;}
+ .d2-361813584 .fill-B1{fill:#0A0F25;}
+ .d2-361813584 .fill-B2{fill:#676C7E;}
+ .d2-361813584 .fill-B3{fill:#9499AB;}
+ .d2-361813584 .fill-B4{fill:#CFD2DD;}
+ .d2-361813584 .fill-B5{fill:#DEE1EB;}
+ .d2-361813584 .fill-B6{fill:#EEF1F8;}
+ .d2-361813584 .fill-AA2{fill:#676C7E;}
+ .d2-361813584 .fill-AA4{fill:#CFD2DD;}
+ .d2-361813584 .fill-AA5{fill:#DEE1EB;}
+ .d2-361813584 .fill-AB4{fill:#CFD2DD;}
+ .d2-361813584 .fill-AB5{fill:#DEE1EB;}
+ .d2-361813584 .stroke-N1{stroke:#0A0F25;}
+ .d2-361813584 .stroke-N2{stroke:#676C7E;}
+ .d2-361813584 .stroke-N3{stroke:#9499AB;}
+ .d2-361813584 .stroke-N4{stroke:#CFD2DD;}
+ .d2-361813584 .stroke-N5{stroke:#DEE1EB;}
+ .d2-361813584 .stroke-N6{stroke:#EEF1F8;}
+ .d2-361813584 .stroke-N7{stroke:#FFFFFF;}
+ .d2-361813584 .stroke-B1{stroke:#0A0F25;}
+ .d2-361813584 .stroke-B2{stroke:#676C7E;}
+ .d2-361813584 .stroke-B3{stroke:#9499AB;}
+ .d2-361813584 .stroke-B4{stroke:#CFD2DD;}
+ .d2-361813584 .stroke-B5{stroke:#DEE1EB;}
+ .d2-361813584 .stroke-B6{stroke:#EEF1F8;}
+ .d2-361813584 .stroke-AA2{stroke:#676C7E;}
+ .d2-361813584 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-361813584 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-361813584 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-361813584 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-361813584 .background-color-N1{background-color:#0A0F25;}
+ .d2-361813584 .background-color-N2{background-color:#676C7E;}
+ .d2-361813584 .background-color-N3{background-color:#9499AB;}
+ .d2-361813584 .background-color-N4{background-color:#CFD2DD;}
+ .d2-361813584 .background-color-N5{background-color:#DEE1EB;}
+ .d2-361813584 .background-color-N6{background-color:#EEF1F8;}
+ .d2-361813584 .background-color-N7{background-color:#FFFFFF;}
+ .d2-361813584 .background-color-B1{background-color:#0A0F25;}
+ .d2-361813584 .background-color-B2{background-color:#676C7E;}
+ .d2-361813584 .background-color-B3{background-color:#9499AB;}
+ .d2-361813584 .background-color-B4{background-color:#CFD2DD;}
+ .d2-361813584 .background-color-B5{background-color:#DEE1EB;}
+ .d2-361813584 .background-color-B6{background-color:#EEF1F8;}
+ .d2-361813584 .background-color-AA2{background-color:#676C7E;}
+ .d2-361813584 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-361813584 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-361813584 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-361813584 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-361813584 .color-N1{color:#0A0F25;}
+ .d2-361813584 .color-N2{color:#676C7E;}
+ .d2-361813584 .color-N3{color:#9499AB;}
+ .d2-361813584 .color-N4{color:#CFD2DD;}
+ .d2-361813584 .color-N5{color:#DEE1EB;}
+ .d2-361813584 .color-N6{color:#EEF1F8;}
+ .d2-361813584 .color-N7{color:#FFFFFF;}
+ .d2-361813584 .color-B1{color:#0A0F25;}
+ .d2-361813584 .color-B2{color:#676C7E;}
+ .d2-361813584 .color-B3{color:#9499AB;}
+ .d2-361813584 .color-B4{color:#CFD2DD;}
+ .d2-361813584 .color-B5{color:#DEE1EB;}
+ .d2-361813584 .color-B6{color:#EEF1F8;}
+ .d2-361813584 .color-AA2{color:#676C7E;}
+ .d2-361813584 .color-AA4{color:#CFD2DD;}
+ .d2-361813584 .color-AA5{color:#DEE1EB;}
+ .d2-361813584 .color-AB4{color:#CFD2DD;}
+ .d2-361813584 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-361813584);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-361813584);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-361813584);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-361813584);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-361813584);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-361813584);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-361813584);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-361813584);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-361813584);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-361813584);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-361813584);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-361813584);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-361813584);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-361813584);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-361813584);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-361813584);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-361813584);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-361813584);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Modern Application SBOM (Ingredients List) Transitive Dependencies Open Source Libraries Your Source Code included in included in Cataloged by
+
+
+
+
diff --git a/assets/images/d2/zero-to-hero.svg b/assets/images/d2/zero-to-hero.svg
index 0f8519f..553de24 100644
--- a/assets/images/d2/zero-to-hero.svg
+++ b/assets/images/d2/zero-to-hero.svg
@@ -1,23 +1,16 @@
-Generate Manage Share CI/CD Trust Center
-
-
-
+ .d2-4040400291 .fill-N1{fill:#0A0F25;}
+ .d2-4040400291 .fill-N2{fill:#676C7E;}
+ .d2-4040400291 .fill-N3{fill:#9499AB;}
+ .d2-4040400291 .fill-N4{fill:#CFD2DD;}
+ .d2-4040400291 .fill-N5{fill:#DEE1EB;}
+ .d2-4040400291 .fill-N6{fill:#EEF1F8;}
+ .d2-4040400291 .fill-N7{fill:#FFFFFF;}
+ .d2-4040400291 .fill-B1{fill:#0A0F25;}
+ .d2-4040400291 .fill-B2{fill:#676C7E;}
+ .d2-4040400291 .fill-B3{fill:#9499AB;}
+ .d2-4040400291 .fill-B4{fill:#CFD2DD;}
+ .d2-4040400291 .fill-B5{fill:#DEE1EB;}
+ .d2-4040400291 .fill-B6{fill:#EEF1F8;}
+ .d2-4040400291 .fill-AA2{fill:#676C7E;}
+ .d2-4040400291 .fill-AA4{fill:#CFD2DD;}
+ .d2-4040400291 .fill-AA5{fill:#DEE1EB;}
+ .d2-4040400291 .fill-AB4{fill:#CFD2DD;}
+ .d2-4040400291 .fill-AB5{fill:#DEE1EB;}
+ .d2-4040400291 .stroke-N1{stroke:#0A0F25;}
+ .d2-4040400291 .stroke-N2{stroke:#676C7E;}
+ .d2-4040400291 .stroke-N3{stroke:#9499AB;}
+ .d2-4040400291 .stroke-N4{stroke:#CFD2DD;}
+ .d2-4040400291 .stroke-N5{stroke:#DEE1EB;}
+ .d2-4040400291 .stroke-N6{stroke:#EEF1F8;}
+ .d2-4040400291 .stroke-N7{stroke:#FFFFFF;}
+ .d2-4040400291 .stroke-B1{stroke:#0A0F25;}
+ .d2-4040400291 .stroke-B2{stroke:#676C7E;}
+ .d2-4040400291 .stroke-B3{stroke:#9499AB;}
+ .d2-4040400291 .stroke-B4{stroke:#CFD2DD;}
+ .d2-4040400291 .stroke-B5{stroke:#DEE1EB;}
+ .d2-4040400291 .stroke-B6{stroke:#EEF1F8;}
+ .d2-4040400291 .stroke-AA2{stroke:#676C7E;}
+ .d2-4040400291 .stroke-AA4{stroke:#CFD2DD;}
+ .d2-4040400291 .stroke-AA5{stroke:#DEE1EB;}
+ .d2-4040400291 .stroke-AB4{stroke:#CFD2DD;}
+ .d2-4040400291 .stroke-AB5{stroke:#DEE1EB;}
+ .d2-4040400291 .background-color-N1{background-color:#0A0F25;}
+ .d2-4040400291 .background-color-N2{background-color:#676C7E;}
+ .d2-4040400291 .background-color-N3{background-color:#9499AB;}
+ .d2-4040400291 .background-color-N4{background-color:#CFD2DD;}
+ .d2-4040400291 .background-color-N5{background-color:#DEE1EB;}
+ .d2-4040400291 .background-color-N6{background-color:#EEF1F8;}
+ .d2-4040400291 .background-color-N7{background-color:#FFFFFF;}
+ .d2-4040400291 .background-color-B1{background-color:#0A0F25;}
+ .d2-4040400291 .background-color-B2{background-color:#676C7E;}
+ .d2-4040400291 .background-color-B3{background-color:#9499AB;}
+ .d2-4040400291 .background-color-B4{background-color:#CFD2DD;}
+ .d2-4040400291 .background-color-B5{background-color:#DEE1EB;}
+ .d2-4040400291 .background-color-B6{background-color:#EEF1F8;}
+ .d2-4040400291 .background-color-AA2{background-color:#676C7E;}
+ .d2-4040400291 .background-color-AA4{background-color:#CFD2DD;}
+ .d2-4040400291 .background-color-AA5{background-color:#DEE1EB;}
+ .d2-4040400291 .background-color-AB4{background-color:#CFD2DD;}
+ .d2-4040400291 .background-color-AB5{background-color:#DEE1EB;}
+ .d2-4040400291 .color-N1{color:#0A0F25;}
+ .d2-4040400291 .color-N2{color:#676C7E;}
+ .d2-4040400291 .color-N3{color:#9499AB;}
+ .d2-4040400291 .color-N4{color:#CFD2DD;}
+ .d2-4040400291 .color-N5{color:#DEE1EB;}
+ .d2-4040400291 .color-N6{color:#EEF1F8;}
+ .d2-4040400291 .color-N7{color:#FFFFFF;}
+ .d2-4040400291 .color-B1{color:#0A0F25;}
+ .d2-4040400291 .color-B2{color:#676C7E;}
+ .d2-4040400291 .color-B3{color:#9499AB;}
+ .d2-4040400291 .color-B4{color:#CFD2DD;}
+ .d2-4040400291 .color-B5{color:#DEE1EB;}
+ .d2-4040400291 .color-B6{color:#EEF1F8;}
+ .d2-4040400291 .color-AA2{color:#676C7E;}
+ .d2-4040400291 .color-AA4{color:#CFD2DD;}
+ .d2-4040400291 .color-AA5{color:#DEE1EB;}
+ .d2-4040400291 .color-AB4{color:#CFD2DD;}
+ .d2-4040400291 .color-AB5{color:#DEE1EB;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0A0F25;--color-border-muted:#676C7E;--color-neutral-muted:#EEF1F8;--color-accent-fg:#676C7E;--color-accent-emphasis:#676C7E;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-4040400291);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-dark-d2-4040400291);mix-blend-mode:overlay}.sketch-overlay-B3{fill:url(#streaks-normal-d2-4040400291);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-4040400291);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-4040400291);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-4040400291);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-4040400291);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-4040400291);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-4040400291);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-normal-d2-4040400291);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-4040400291);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-4040400291);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-4040400291);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-4040400291);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-4040400291);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-4040400291);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-4040400291);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-4040400291);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Zero Learn Generate Manage Hero
+
+
diff --git a/bun.lock b/bun.lock
index 96db167..25150e9 100644
--- a/bun.lock
+++ b/bun.lock
@@ -5,6 +5,7 @@
"name": "blog",
"dependencies": {
"@fortawesome/fontawesome-free": "^7.1.0",
+ "@tabler/icons": "^3.36.1",
"autoprefixer": "^10.4.22",
"browserslist": "^4.28.0",
"caniuse-lite": "^1.0.30001757",
@@ -89,6 +90,8 @@
"@pkgjs/parseargs": ["@pkgjs/parseargs@0.11.0", "", {}, "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg=="],
+ "@tabler/icons": ["@tabler/icons@3.36.1", "", {}, "sha512-f4Jg3Fof/Vru5ioix/UO4GX+sdDsF9wQo47FbtvG+utIYYVQ/QVAC0QYgcBbAjQGfbdOh2CCf0BgiFOF9Ixtjw=="],
+
"ajv": ["ajv@8.17.1", "", { "dependencies": { "fast-deep-equal": "^3.1.3", "fast-uri": "^3.0.1", "json-schema-traverse": "^1.0.0", "require-from-string": "^2.0.2" } }, "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g=="],
"ansi-regex": ["ansi-regex@5.0.1", "", {}, "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="],
diff --git a/features/trust-center.md b/features/trust-center.md
index 2807c95..73fe7cc 100644
--- a/features/trust-center.md
+++ b/features/trust-center.md
@@ -7,22 +7,31 @@ redirect_from:
- /features/public-sbom-portal/
---
-
+
Turn transparency into a competitive advantage. Showcase your security posture with a branded, automated Trust Center .
-
-
- View Live Demo
-
-
+
+
Everything You Need
+
A complete platform for managing and sharing your security posture
{% capture icon_1 %}
-
+
{% endcapture %}
{% include components/feature-card.html
icon_bg_class="bg-purple-50"
@@ -33,7 +42,7 @@ Turn transparency into a competitive advantage. Showcase your security posture w
%}
{% capture icon_2 %}
-
+
{% endcapture %}
{% include components/feature-card.html
icon_bg_class="bg-blue-50"
@@ -44,7 +53,7 @@ Turn transparency into a competitive advantage. Showcase your security posture w
%}
{% capture icon_3 %}
-
+
{% endcapture %}
{% include components/feature-card.html
icon_bg_class="bg-pink-50"
@@ -60,16 +69,27 @@ Turn transparency into a competitive advantage. Showcase your security posture w
+
Why Now
The New Standard for Transparency
- Trust Centers are becoming essential, and buyers today are now expecting their vendors to provide Trust Centers with near realtime data about security posture and compliance status.
-
-
- With the EU Cyber Resilience Act (CRA) , SBOMs are now expected to be provided to stakeholders as part of their Trust Center.
-
-
- It is expected that more compliance frameworks are to adopt SBOMs as part of their security posture litmus test. The first one doing so is PCI DSS 4.0 .
+ Trust Centers are becoming essential. Buyers now expect vendors to provide near real-time data about security posture and compliance status.
+
+
+
+
+
EU Cyber Resilience Act (CRA)
+
SBOMs are now expected as part of Trust Centers for stakeholders
+
+
+
+
+
+
PCI DSS 4.0
+
First major framework adopting SBOMs as security posture requirement
+
+
+
@@ -105,24 +125,42 @@ Turn transparency into a competitive advantage. Showcase your security posture w
{% include compliance-block.html %}
-
Real-World Impact
+
+
Real-World Impact
+
See how Trust Centers transform the way you do business
+
+ {% capture impact_icon_1 %}
+
+ {% endcapture %}
{% include components/impact-card.html
- emoji="🚀"
+ svg=impact_icon_1
+ icon_bg_class="bg-purple-50"
+ icon_text_class="text-[#8A7DFF]"
title="Accelerate Sales"
description="\"Do you have a SOC 2?\" Send a link instead of scheduling a call. Reduce questionnaire response times from weeks to minutes."
link_text="Sales Enablement"
%}
+ {% capture impact_icon_2 %}
+
+ {% endcapture %}
{% include components/impact-card.html
- emoji="🛡️"
+ svg=impact_icon_2
+ icon_bg_class="bg-blue-50"
+ icon_text_class="text-blue-500"
title="Build Trust"
description="Show, don't just tell. Proactive transparency proves your commitment to security before a prospect even asks."
link_text="Brand Reputation"
%}
+ {% capture impact_icon_3 %}
+
+ {% endcapture %}
{% include components/impact-card.html
- emoji="⚡"
+ svg=impact_icon_3
+ icon_bg_class="bg-amber-50"
+ icon_text_class="text-amber-500"
title="Streamline Ops"
description="Eliminate ad-hoc email requests. Give customers self-service access to the documents they need, 24/7."
link_text="Operational Efficiency"
diff --git a/index.html b/index.html
index b357c51..30fa900 100644
--- a/index.html
+++ b/index.html
@@ -81,7 +81,7 @@
Our Mission
- We empower software vendors and software buyers to seamlessly manage security compliance and software supply chain transparency.
+ We're building the infrastructure for a more transparent software world. From SBOMs to AI BOMs, Bills of Materials are becoming the backbone of all compliance—and we make security artifacts easy to create, manage, and share, so trust flows seamlessly from vendor to buyer to auditor.
@@ -92,14 +92,14 @@
Our Mission SBOM Lifecycle Tool
Zero to SBOM Hero
- Build high-quality SBOMs directly in your CI pipeline with our GitHub Action module . Once generated, SBOMs are automatically uploaded to sbomify where you can manage releases (including complex hierarchies ) and share the latest software versions with stakeholders—publicly or privately. No more manual SBOM distribution or version confusion. Read our guide on generating, collaborating, and analyzing SBOMs .
+ Build high-quality SBOMs directly in your CI pipeline with our open source action . Once generated, SBOMs are automatically uploaded to sbomify where you can manage releases (including complex hierarchies ) and share the latest software versions with stakeholders—publicly or privately via your Trust Center . No more manual SBOM distribution or version confusion.
-
Learn More
+
Get Started
diff --git a/package.json b/package.json
index 788a91b..f443011 100644
--- a/package.json
+++ b/package.json
@@ -19,6 +19,7 @@
},
"dependencies": {
"@fortawesome/fontawesome-free": "^7.1.0",
+ "@tabler/icons": "^3.36.1",
"autoprefixer": "^10.4.22",
"browserslist": "^4.28.0",
"caniuse-lite": "^1.0.30001757",
diff --git a/zero-to-hero.md b/zero-to-hero.md
new file mode 100644
index 0000000..8edb997
--- /dev/null
+++ b/zero-to-hero.md
@@ -0,0 +1,213 @@
+---
+layout: page
+permalink: /zero-to-hero/
+title: From Zero to SBOM Hero
+description: "Generate your first compliance-ready SBOM in under 5 minutes. A quick-start guide to SBOM generation, quality, and distribution."
+---
+
+
+ {% include d2/zero-to-hero.svg %}
+
+
+---
+
+## The Quality Problem
+
+Most SBOM generation tools produce incomplete SBOMs that:
+
+- Miss critical metadata (supplier info, licenses, contact details)
+- Lack unique identifiers (PURLs, CPEs) needed for vulnerability matching
+- Don't capture transitive dependencies properly
+- Fail to meet compliance requirements
+
+### Why Quality Matters
+
+- **Vulnerability insights**: Without proper identifiers, you can't match components to CVE databases
+- **EOL detection**: Can't identify end-of-life components without enriched metadata
+- **License compliance**: Missing license data means legal blind spots
+- **Compliance failures**: [NTIA minimum elements]({{ site.url }}/compliance/ntia-minimum-elements/), [CISA requirements]({{ site.url }}/compliance/cisa-minimum-elements/), and [EU CRA]({{ site.url }}/compliance/eu-cra/) all set quality bars that raw generation tools don't meet
+
+
+ {% include d2/quality-gap.svg %}
+
+
+### The sbomify Difference
+
+The [sbomify action](https://github.com/sbomify/github-action) is **fully open source** and the only tool that produces compliance-ready SBOMs out of the box by automatically:
+
+- Augmenting with supplier/author/manufacturer metadata
+ - Data comes from your [sbomify profile](https://app.sbomify.com/) or a `sbomify.json` file in your repo
+- Enriching from **11 data sources** including:
+ - Pre-computed databases (LicenseDB, Lifecycle Database for EOL dates)
+ - Native registries (PyPI, crates.io, pub.dev, Debian)
+ - Aggregators (deps.dev, ecosyste.ms)
+ - Fallback sources (ClearlyDefined, Repology)
+- Adding proper identifiers for vulnerability matching
+- Meeting NTIA minimum elements without manual intervention
+
+See [Integrations]({{ site.url }}/features/integrations/) for the full list of enrichment sources.
+
+
+ {% include d2/sbomify-action-flow.svg %}
+
+
+### Runs Anywhere - No Vendor Lock-in
+
+- **GitHub Actions** - Native integration
+- **Any CI/CD** - GitLab CI, Bitbucket Pipelines, Jenkins, CircleCI, etc.
+- **Python package** - `pip install sbomify-action` for standalone use
+- **Docker** - `sbomifyhub/sbomify-action` runs anywhere
+
+### Deployment Flexibility
+
+- **Hosted by sbomify** - SaaS, we manage everything
+- **Self-hosted** - Run on your own infrastructure for full control, keep your SBOMs in-house, and avoid dependency on any external vendor
+
+Your SBOMs, your infrastructure, your choice. Use the action standalone or with the sbomify platform.
+
+---
+
+## Step-by-Step Guide
+
+### Step 1: Understand the Basics
+
+A Software Bill of Materials (SBOM) is like the ingredients list on a food package - but for software. It documents every component, library, and dependency in your application.
+
+
+ {% include d2/what-is-sbom.svg %}
+
+
+**Key takeaway:** SBOMs catalog all your dependencies, but **quality matters**. A low-quality SBOM is like an incomplete ingredients list - worse than useless because it gives false confidence.
+
+[What is an SBOM? →]({{ site.url }}/what-is-sbom/)
+
+### Step 2: Choose Your Stack
+
+sbomify supports all major ecosystems:
+
+| Language/Platform | Package Managers |
+| ----------------------------------------------- | ----------------------- |
+| [Python]({{ site.url }}/guides/python/) | pip, Poetry, Pipenv, uv |
+| [JavaScript]({{ site.url }}/guides/javascript/) | npm, yarn, pnpm, Bun |
+| [Java]({{ site.url }}/guides/java/) | Maven, Gradle |
+| [Go]({{ site.url }}/guides/go/) | Go Modules |
+| [Rust]({{ site.url }}/guides/rust/) | Cargo |
+| [Ruby]({{ site.url }}/guides/ruby/) | Bundler |
+| [PHP]({{ site.url }}/guides/php/) | Composer |
+| [.NET/C#]({{ site.url }}/guides/dotnet/) | NuGet |
+| [Docker]({{ site.url }}/guides/docker/) | Container images |
+
+[View all guides →]({{ site.url }}/guides/)
+
+### Step 3: Generate a Compliance-Ready SBOM
+
+Choose the option that fits your environment:
+
+**GitHub Actions** (quickest)
+
+```yaml
+- name: Generate SBOM
+ uses: sbomify/github-action@master
+ env:
+ LOCK_FILE: 'requirements.txt'
+ AUGMENT: true
+ ENRICH: true
+```
+
+**Other CI/CD environments** - We have ready-to-use templates for GitLab CI, Bitbucket Pipelines, and a Docker image for any environment.
+
+[View all CI/CD integrations →]({{ site.url }}/features/integrations/)
+
+All options handle generation + augmentation + enrichment automatically. The Docker image comes **bundled with all SBOM generation tools** - no need to install cdxgen, syft, or other tools separately.
+
+### Step 4: Sign in CI/CD
+
+**If an SBOM isn't signed at generation time, can you trust it?**
+
+SBOMs generated outside CI/CD (or without signing) could be altered post-generation. No cryptographic proof means no way to verify authenticity or integrity.
+
+
+ {% include d2/trust-chain.svg %}
+
+
+Signing in CI/CD creates an unbroken chain of trust from build to distribution:
+
+- Customers receiving your SBOM can verify it hasn't been tampered with
+- Reduces reliance on trusting the distribution platform
+- Aligns with supply chain security best practices
+
+The sbomify action supports attestation via GitHub Actions (Sigstore) and other signing mechanisms.
+
+[Learn about SBOM attestation →]({{ site.url }}/2024/10/31/github-action-update-and-attestation/)
+
+### Step 5: Understand the Full Lifecycle (Optional)
+
+For those who want to understand what's happening under the hood:
+
+
+ {% include d2/generation.svg %}
+
+
+The sbomify action automates the entire authoring flow: **Generation → Augmentation → Enrichment → Signing**
+
+[SBOM Lifecycle Deep Dive →]({{ site.url }}/features/generate-collaborate-analyze/)
+
+### Step 6: Manage and Share at Scale
+
+When you're generating one SBOM, management is easy. When you have dozens or hundreds across multiple products, services, and release cycles, you need:
+
+- **Logical grouping** - Organize SBOMs by product, team, or release
+- **SBOM Hierarchy** - Link related SBOMs (e.g., backend + frontend + container = product SBOM)
+- **Version tracking** - Keep historical SBOMs for audit trails
+- **Automated distribution** - Share with customers/regulators without manual work
+
+[Learn about SBOM Hierarchy →]({{ site.url }}/features/sbom-hierarchy/)
+
+
+ {% include d2/store-analyze-enrich.svg %}
+
+
+### Trust Center: Turn Transparency into Competitive Advantage
+
+The Trust Center is where "hero" status really shines. It's not just about generating SBOMs - it's about sharing them professionally with stakeholders.
+
+- **Your domain** - Host on your own domain (e.g., trust.yourcompany.com)
+- **Branded portal** - Your logo, your colors, professional presentation
+- **Automated publishing** - Syncs with CI/CD, always up-to-date
+- **Flexible access** - Public for transparency or private for invited stakeholders
+- **More than SBOMs** - Share SOC 2, ISO 27001, pentest reports, compliance attestations in one place
+- **Self-service** - Customers get what they need 24/7, no email chains
+
+[Explore Trust Center →]({{ site.url }}/features/trust-center/)
+
+---
+
+## The Litmus Test
+
+**SBOMs are becoming the litmus test for whether you actually know what goes into your software.**
+
+Regulators and buyers are no longer asking "do you have security?" - they're asking "prove it." SBOMs are the proof.
+
+### Already Required
+
+- **EU Cyber Resilience Act (CRA)** - SBOMs mandatory for products with digital elements sold in EU
+- **PCI DSS 4.0** - Software component inventories required for payment card security (Req 6.3.2)
+
+### More Regulation is Coming
+
+- FDA medical device guidance recommends SBOMs
+- CISA minimum elements expanding requirements
+- UK Software Security Code of Practice references software composition
+
+**The message:** If you can't produce a quality SBOM on demand, you're signaling that you don't know what's in your software. That's increasingly a dealbreaker for enterprise buyers and regulators alike.
+
+[SBOM Compliance Guide →]({{ site.url }}/compliance/) | [Why Now? →]({{ site.url }}/features/why-now/)
+
+---
+
+