Desktop GUI for viewing Software Bill of Materials (SBOM) files in multiple formats.
- Supported Formats:
- SPDX
- CycloneDX
- SWID
- Auto-detect file format
- Tabbed views: Components, Dependencies, Metadata
- Search/filter in Components and Dependencies tabs
- Component details side panel
- Resizable columns & window
# clone and cd
python main.py
Click on the "Open SBOM" button and select your file.
Sample SBOMs in tests/fixtures/sboms/.
Install dev dependencies first:
uv sync --locked --all-extrasBuild the app:
uv run pyinstaller --noconfirm --clean sbom-viewer.specThe built app will be created in:
dist/sbom-viewer/on Linux and Windowsdist/SBOM Viewer.appon macOS
Smoke-test the packaged app:
uv run python scripts/smoke_test_pyinstaller.py --app-dir dist/sbom-viewerOn Linux, run the smoke test under xvfb if needed:
xvfb-run -a uv run python scripts/smoke_test_pyinstaller.py --app-dir dist/sbom-viewerCreate a versioned archive:
uv run python scripts/package_pyinstaller_dist.py \
--app-dir dist/sbom-viewer \
--platform-id linux-x64 \
--version 1.1.0 \
--output-dir packaged