Skip to content

A simple application to crawl your Github repositories, export SBOM's in SPDX format, and ingest these for licensing analysis.

License

Notifications You must be signed in to change notification settings

mnahkies/spdx-dependency-track

Repository files navigation

spdx-dependency-track (pre-alpha)

A simple application to crawl your Github repositories, export SBOMs in SPDX format, and ingest these for licensing analysis.

Note: I take no responsibility for the legal correctness of the output of this tool. I would also caution that the SPDX files produced by Github seem a bit rough around the edges at times.

This project is very early stage - it's pretty rough around the edges, has no tests, and is limited in features. Expect a bunch of breaking changes as I learn more about the world of processing SBOMs.

Features

  • Crawl Github repositories extracting SBOM's using a PAT (Github Personal Access Token)
  • Fills in gaps for npm packages by reading metadata from the NPM Registry directly
  • Render back summary and detail views, including risk categories

Future

  • More filtering, sorting, etc options
  • Export to CSV / spreadsheet report
  • Allow upload of a SPDX file directly rather than crawling Github
  • Allow overriding data, eg: correct a license
  • Pull in CVE alerts
  • Tidy up the API, it's a bit haphazard right now
  • Add tests

Running it

First, run the development server:

corepack enable
yarn
cp .env.example .env # modify settings as needed
yarn dev

Open http://localhost:3000 to use the application. Data will be written to the sqlite db specified by DB_PATH.

Screenshots

enter a github PAT to scan visible repos

see top level summary of your dependencies licensing

drill down to individual dependencies

Architecture / Notes

Acknowledgements / References

About

A simple application to crawl your Github repositories, export SBOM's in SPDX format, and ingest these for licensing analysis.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Languages