Publish a package to the feed
Drop a nupkg into an artifacts folder and restart.
The NuGet feed is a file-backed, read-only view. "Publishing" is copying a file and restarting.
1. Pack your package
dotnet pack -c Release
Or use the repo's pack script if your project has one.
2. Copy the nupkg into an artifacts folder
In single-project mode, that's whatever you configured as ArtifactsRoot in appsettings.json:
"SharpDocs": {
"ArtifactsRoot": "artifacts"
}
In multi-project mode, each project has its own artifacts folder declared in its sharpdocs.json (default ./artifacts relative to the project). Drop the nupkg into the project that owns it.
Symbols packages (.snupkg or *.symbols.nupkg) are ignored by the scanner, so you can leave them alongside without breaking anything.
3. Restart the host
The feed scans artifacts once at startup. To pick up a new file:
# Local dev: Ctrl+C, then:
dotnet run --project src/MyApp
For production, whatever process supervisor you use (systemd, Kestrel behind IIS, Docker) just needs to restart the app.
4. Verify
Hit /packages/{id} in the browser — version history, dependencies, and a download link should be there. /packages shows the unified listing across every project's artifacts folder. Or query the feed directly:
curl https://your-site.example/v3/flatcontainer/mypackage/index.json
Multiple versions
Drop them all in. The scanner groups by package id and sorts versions ascending, so the last one is "latest" for search and registration responses. Consumers can reference any version that's on disk.
Removing a package
Delete the file, restart. There's no soft-delete or "unlist" — the feed only knows what's on disk right now.