Skip to content

Package formats

OrbitalReg supports 40+ package formats across every major language and platform ecosystem. Each format has:

  • A native HTTP API matching the upstream tool's expectations (mvn deploy, npm publish, pip install, docker push, …)
  • Local + remote + virtual repository modes
  • Format-specific scanners hooked into the Detection pipeline
  • A retention-policy grammar that understands the format's versioning conventions

The format catalogue covers four ecosystem groups. The Support column follows frontend/src/lib/formats.ts (the source of truth the UI itself reads): GA is full-featured; Experimental ships with a documented, narrower feature set than its peers — see the linked note in Other formats for the specific gap. See docs/PRODUCT-ROADMAP.md item 148 for how this classification was derived. For a single flat table of all 42 adapters + Docker/OCI grouped by implementation-maturity tier instead of ecosystem, see the Support matrix (item 123).

Language ecosystems

FormatRepository typesDetection adaptersSupportFormat reference
Mavenlocal, remote, virtualTrivy, Grype, OSV, SyftGAMaven
npmlocal, remote, virtualTrivy, Grype, OSV, SyftGAnpm
PyPIlocal, remote, virtualTrivy, Grype, OSV, SyftGAPyPI
RubyGemslocal, remoteTrivy, Grype, OSVGA
Cargolocal, remoteTrivy, OSVGA
Go moduleslocal, remoteOSV, govulncheckGA
NuGetlocal, remoteTrivy, Grype, OSVGA (V3 search stub)
Hex (Elixir)local, remoteOSVGA
Swiftlocal, remoteOSVGA
Dart / publocal, remoteOSVGA
Composer (PHP)local, remoteOSVGA
CRAN (R)local, remoteExperimentalOther formats
Denolocal, remoteOSVGA
Nimble (Nim)localExperimentalOther formats

Container + image + model ecosystems

FormatRepository typesDetection adaptersSupportFormat reference
Docker / OCIlocal, remoteTrivy, Grype, SyftGADocker / OCI
Helmlocal, remoteTrivyGA
Condalocal, remoteOSVGA
Hugging Facelocal, remoteTrivyGA
Ollamalocal, remoteGA
NVIDIA NIM / Skillslocal, remoteGA

OS / system packages

FormatRepository typesDetection adaptersSupportFormat reference
Debianlocal, remoteTrivy, GrypeGA
RPMlocal, remoteTrivy, GrypeGA
Alpine APKlocal, remoteTrivy, GrypeGA
Homebrewlocal, remoteGAOther formats
Nixlocal, remoteGA
OPKG (OpenWrt)localTrivyGA

IaC / build / tools

FormatRepository typesDetection adaptersSupportFormat reference
Terraform registrylocal, remoteTrivy IaCGA
Argo Workflowslocal, remoteGA
Kustomizelocal, remoteGA
OPA bundleslocal, remoteGA
VagrantlocalGA
BazellocalOSVGA
ConanlocalOSVGA
CocoapodslocalOSVGA
Puppet ForgelocalExperimentalOther formats
Chef SupermarketlocalGA
BowerlocalGA
JetBrains MarketplacelocalGA
VSIX (VS Code)localExperimentalOther formats
P2 (Eclipse)local, remote, virtual (composite)GAOther formats

VCS proxies

FormatSupportNotes
Git LFSGAPass-through, content-addressable
Generic VCSExperimentalRead-through HEAD-probe proxy for go get & co.; no full clone/fetch proxying
Generic blobGAContent-addressable raw artifact store (/api/v1/artifacts/...)

Promotion across formats

Promotion is format-aware. A Maven artifact promoted from staging to prod-maven carries its POM, sources jar, and signature blocks together; a Docker image promotion preserves the manifest list. Each format's promotion behaviour is detailed in its format-specific page.

Adding a new format

The format-adapter contract is documented in PACKAGE-FORMATS-ROADMAP.md. A new adapter is roughly 200–800 lines of Go plus an integration-test suite. The integration harness in tests/integration/ covers all shipped formats and runs in CI on every PR that touches the format layer.

Released under the Apache-2.0 License.