~/talk

Indexing and searching NuGet.org with Azure Functions and Search

Talkat .NET fwdays'20 online conference · 2020-04-11..04-18· [serverless]
slides:none on file

Builds a working reverse package search that maps public type names to NuGet packages, implemented as a pipeline: a custom NuGet catalog trigger watches the v3 catalog, pushes package ops to queues, a downloader saves nupkgs, an indexer uses System.Reflection.Metadata to extract public types and namespaces, and results land in an Azure Search index queried by a ReSharper quick fix. Full index processes ~2–2.6M packages (reportedly ~3.5 TB) and a rebuild takes ~12–14 hours on B1 machines; the pipeline is proven and operational.

AI-written summary · about

  1. 0:00Introduction
  2. 0:25Find this type on NuGet
  3. 4:55NuGet Serverside API
  4. 7:37Catalog
  5. 13:24Building a new version
  6. 15:04Creating a timer function
  7. 18:32Azure Functions and best practices
  8. 23:21Creating a custom trigger binding
  9. 25:04What is a catalog trigger
  10. 33:49Downloading packages
  11. 37:38Indexing packages
  12. 44:18Web API
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.