A lightweight NuGet and symbol server written in C#: self-hosted, cross-platform and cloud ready.
PaGetto is based on BaGetter. It has a redesigned web UI, a reworked code base and new features such as multiple feeds, user and permission management, and Microsoft Entra ID sign-in. Coming from BaGetter? The migration guide shows how to move an existing installation over.
- Multiple feeds: each feed has its own packages, settings, retention and read-through mirror, under
/feeds/{slug}/v3/index.json. - Users & permissions:
Local,EntraorHybridauthentication, groups, per-feed pull/push/delete permissions, and personal access tokens with expiry email reminders. - Admin UI for feeds, accounts and groups.
- Offline support: mirror nuget.org or any other feed per feed.
- Pluggable backends: SQLite, SQL Server, PostgreSQL or MySQL; the file system, Azure Blob, AWS S3, Google Cloud Storage, Aliyun OSS or Tencent COS.
- Runs anywhere: Windows, Linux and macOS, x64 and ARM64, Docker, Kubernetes (Helm) or IIS.
Docker
docker run -d -p 5000:8080 -v pagetto-data:/data letreset/pagetto:latestThen browse to http://localhost:5000/.
Kubernetes
helm install pagetto oci://ghcr.io/letreset/charts/pagetto --version <version>.NET / IIS
- Install the ASP.NET Core 10 runtime (for IIS, the hosting bundle).
- Download and extract
pagetto-<version>.zipfrom the latest release. - Run
dotnet PaGetto.dll, or point an IIS site at the extracted folder.
See the documentation for configuration, authentication and cloud deployments.
dotnet build
dotnet test
dotnet run --project src/PaGettoReleases are cut by pushing a vX.Y.Z tag on main. Each release publishes the zip, the Docker image and the Helm chart, with a generated changelog. The roadmap is tracked in GitHub issues.
MIT.
