What is GitHub Packages, and what registries does it support?
Select an answer to reveal the explanation.
Short Explanation and Infographic
GitHub Packages is your all-in-one artifact registry — it supports the major package formats natively. Publish your npm package, Docker image, Maven artifact, or NuGet package all under the same roof as your source code.
Full explanation below image
Full Explanation
GitHub Packages is an integrated package hosting service that allows organizations to publish and consume software packages directly from GitHub. It supports multiple registries: npm (JavaScript), Apache Maven/Gradle (Java), NuGet (.NET), RubyGems (Ruby), and the GitHub Container Registry (ghcr.io) for Docker/OCI images. Packages can be linked to repositories, enabling version tracking alongside code. Access is controlled using the same GitHub authentication (PATs or GITHUB_TOKEN) and permissions system. Organization-level visibility controls allow packages to be private, internal (enterprise), or public. GitHub Packages integrates natively with GitHub Actions for publishing artifacts in CI/CD workflows.