Skip to main content
This document covers the implementation details for AI•Pkg.Server that are specific to how we build the registry — not the public API contract (see Registry API spec).

Authentication

Used for web UI login. Scope: read:user, user:email.Port the existing GitHub OAuth flow from NuGetGallery. No structural changes.

Storage

Azure Blob Storage containers: Port ICoreFileStorageService from NuGetGallery. Rename all .nupkg references to .aipkg.

Search Index

Azure AI Search index: aipkg-packages Port the indexing pipeline from NuGet.Services.AzureSearch. Replace BaseMetadataDocument with AipkgSearchDocument:

Background Jobs

All background jobs are consolidated into AI•Pkg.Jobs/ (a single project). Each job is implemented as a hosted service or Azure Function, depending on runtime requirements.

NuGet V3 → AI•Pkg Registry API Endpoint Mapping

This table documents the mapping from NuGetGallery’s V3 endpoints to AI•Pkg’s registry endpoints. Use it when porting endpoint logic from NuGetGallery/Controllers/ApiController.cs and related sources.

Source Files to Port

Key NuGetGallery source files and their AI•Pkg destinations: