Create a namespace
Group repositories under a namespace — public for anonymous pulls, or private behind group permissions. Add typed repositories: docker, helm, maven, npm, ml, or raw.
Bosca Artifacts
Docker images, Helm charts, Maven artifacts, npm packages, ML models, and raw files — pushed with the standard tools you already use, stored once in content-addressed storage, and governed by one permission model.
How it works
Group repositories under a namespace — public for anonymous pulls, or private behind group permissions. Add typed repositories: docker, helm, maven, npm, ml, or raw.
Docker, Helm, Gradle, Maven, and npm publish straight to the registry — it speaks each client's native protocol, hashes every upload, and stores identical blobs once.
People pull with group permissions, machines with scoped tokens, and anyone from public namespaces. CI jobs can require an artifact and dispatch the moment it lands.
What makes it powerful
Everything you expect from an artifact registry — native protocols, deduplicated storage, scoped credentials — plus the integrations you only get when the registry lives next to your code and CI.
Docker images, Helm charts, Maven artifacts, npm packages, ML models, and raw files — each a typed repository inside a namespace.
The OCI distribution API, Maven layout with generated metadata, the npm registry protocol with search, and Helm's index.yaml — clients don't change.
Blobs are keyed by digest and stored once — push the same layer into two repositories and it lands as one object.
Uploads are hashed as they stream in; Docker content is verified against its declared digest and rejected on mismatch.
Token scopes narrow to a format, a namespace or repository, and a version pattern — granting exactly pull, push, or admin.
Namespaces are public or private, and private access is granted to the same security groups used across Bosca.
Every published version fires a platform event — the signal CI requirement gates and automation listen for.
A standalone service that compiles to a GraalVM native image — bytes in S3-compatible object storage, metadata in PostgreSQL.
Deep platform integration
Because the registry isn't a separate product bolted onto Bosca, a published version isn't just a file on a shelf — it's an event the rest of the platform acts on.
io.bosca:core at the new version simply waits, then dispatches the moment the registry publishes it.waiting on artifacts → dispatchedbosca.artifacts.version.publishedmodel/… for servingArtifactsGo deeper
Docker, Helm, Maven, npm, ML models, and raw files — native protocols.
Content-addressed blobs, digest verification, reference-counted cleanup.
Public or private namespaces, group grants, and scoped registry tokens.
Publish events, CI requirement gates, ML model serving, and admin APIs.
One registry beside your code, your CI, and your deployments — no separate product to run, no second set of accounts. The docs cover namespaces, repositories, versions, and permissions end to end.