📦

Overview of NuGet Package Management

May 24, 2025

NuGet Overview

Introduction

  • NuGet (pronounced "New Get") is a package manager for software development.
  • Mainly used for packaging and distributing software written in .NET and .NET Framework.
  • Initially created by the Outercurve Foundation under the name NuPack.
  • Introduced in 2010 and has grown into an ecosystem of tools and services.

Development and Releases

  • Developed by Microsoft and .NET Foundation.
  • Initial release on October 5, 2010.
  • Stable release: Version 6.11 on August 13, 2024.
  • Preview release: Version 6.12.0.83 on August 24, 2024.

Technical Details

  • NuGet packages are ZIP files with .nupack or .nupkg extensions containing .NET assemblies.
  • Packages include a manifest file describing contents.
  • Written in C#.
  • Platform: .NET Framework.
  • Type: Package management system.
  • License: Apache License 2.0.
  • Repository: GitHub.

Usage and Integration

  • Initially distributed as a Visual Studio extension.
  • Visual Studio 2012 and later versions support NuGet packages natively.
  • NuGet client (nuget.exe) is a free, open-source command-line application.
  • Integrated with MSBuild, .NET Core SDK, and JetBrains Rider.

Supported Languages and Tools

  • Supports multiple programming languages:
    • .NET Framework packages
    • .NET packages
    • Native C++ packages (creation aided by CoApp)
  • Related tools and repositories include Binary repository manager, Chocolatey, ProGet, Software repository, Web Platform Installer, WinOps, Windows Package Manager.

Additional Resources