Top Related Projects
Chocolatey - the package manager for Windows
An installation and update framework for Windows desktop apps
Quick Overview
NuGet/Home is the central repository for NuGet client and server development. It serves as a hub for tracking issues, discussing features, and coordinating development efforts for the NuGet package manager ecosystem. This repository doesn't contain the actual source code but acts as a central point for NuGet-related discussions and project management.
Pros
- Centralized location for NuGet-related discussions and issue tracking
- Provides a clear roadmap and feature planning for NuGet development
- Encourages community involvement and feedback in the development process
- Offers comprehensive documentation and guidelines for contributors
Cons
- Doesn't contain the actual source code, which may confuse some users
- Can be overwhelming for newcomers due to the large volume of issues and discussions
- May require following multiple repositories for a complete understanding of NuGet development
- Some discussions and issues may become outdated or irrelevant over time
Note: As this is not a code library, the code examples and getting started instructions sections have been omitted.
Competitor Comparisons
Chocolatey - the package manager for Windows
Pros of Choco
- Broader scope: Manages system-wide software installations, not just .NET packages
- Command-line focused: Offers a powerful CLI for package management
- Supports multiple package types: Can handle various formats, including MSI and EXE
Cons of Choco
- Less integrated with Visual Studio: NuGet has tighter integration for .NET development
- Smaller package ecosystem: NuGet has a larger repository of .NET-specific packages
- Higher system access requirements: Often needs admin privileges for installations
Code Comparison
Choco package installation:
choco install packagename
NuGet package installation:
Install-Package PackageName
Both repositories focus on package management, but Choco is more system-wide and general-purpose, while NuGet is specialized for .NET development. Choco's CLI is more extensive, while NuGet integrates seamlessly with Visual Studio. The code examples show the simplicity of basic package installation in both systems, with Choco using its own CLI and NuGet typically used within the Package Manager Console in Visual Studio.
An installation and update framework for Windows desktop apps
Pros of Squirrel.Windows
- Simplified update process with automatic background updates
- Supports delta updates, reducing download sizes
- Provides a clean, native Windows installation experience
Cons of Squirrel.Windows
- Limited to Windows applications only
- Less flexible than NuGet for managing dependencies across different project types
- Smaller community and ecosystem compared to NuGet
Code Comparison
Squirrel.Windows (Update process):
using Squirrel;
using (var mgr = new UpdateManager("C:\\Users\\...\\AppData\\Local\\MyApp"))
{
await mgr.UpdateApp();
}
NuGet (Package installation):
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
Summary
Squirrel.Windows focuses on simplifying the update and installation process for Windows applications, offering features like automatic updates and delta packages. NuGet, on the other hand, is a more general-purpose package manager for .NET projects, providing a wider range of dependency management capabilities across various project types and platforms. While Squirrel.Windows excels in creating a seamless update experience for end-users, NuGet offers greater flexibility and a larger ecosystem for developers managing project dependencies.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
NuGet Home
The Home repository is the starting point for people to learn about NuGet, the project. If you're new to NuGet, and want to add packages to your own projects, check our docs. This repo contains pointers to the various GitHub repositories used by NuGet and allows folks to learn more about what's coming in NuGet.
NuGet is being actively developed by the .NET Foundation. NuGet is the package manager for the Microsoft development platform including .NET. The NuGet client tools provide the ability to produce and consume packages. The NuGet Gallery is the central package repository used by all package authors and consumers and has a live deployment at www.nuget.org.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
NuGet Design Proposals
This repo contains design proposals for NuGet. It focuses on designs for the NuGet client tooling, NuGet.org public repository, and NuGet Package Manager inside Visual Studio.
Documentation and Further Learning
NuGet Docs
The NuGet Docs are the ideal place to start if you are new to NuGet. They are categorized in 3 broader topics:
- Consume NuGet packages in your projects;
- Create NuGet packages to learn about packaging and publishing your own NuGet Packages;
- Contribute to NuGet gives an overview of how you can contribute to the various NuGet projects.
NuGet Blog
The NuGet Blog is where we announce new features, write engineering blog posts, demonstrate proof-of-concepts and features under development.
Contributing
There are many ways in which you can participate in the project, for example:
- Submit bugs and feature requests, and help us verify as they are checked in
- Review NuGet proposals
- Review the documentation and make pull requests for anything from typos to new content
If you are interested in fixing issues and contributing directly to the code base, please see the document Contribute To NuGet, which covers the following:
- How to build and run from source
- The development workflow, including debugging and running tests
- Coding guidelines
- Submitting pull requests
- Finding an issue to work on
- And much more!
Note: Not all of our repositories are open for contribution yet. Ping us if unsure.
Feedback
- Ask a question on Stack Overflow
- Request a new feature
- Upvote popular feature requests
- File an issue
- Follow @nuget and let us know what you think!
If you're having trouble with the NuGet.org Website, file a bug on the NuGet Gallery Issue Tracker.
If you're having trouble with the NuGet client tools (the Visual Studio extension, NuGet.exe command line tool, etc.), file a bug on NuGet Home.
Repos and Projects
- NuGet client tools - this repo contains the following clients:
- NuGet command-line tool 4.0 and higher
- Visual Studio Extension (2017 and later)
- PowerShell CmdLets
NuGet.org is backed by several core services:
- NuGetGallery - the current NuGet Gallery
- NuGet.Jobs - NuGet's back-end jobs and services
- ServerCommon - shared libraries for running NuGet.org
NuGet.Server is a lightweight standalone NuGet server.
NuGet Documentation contains NuGet's documentation.
A full list of all the repos is available as well.
NuGet Packages by the NuGet team
We dogfood all of our stuff. NuGet uses NuGet to build NuGet, so to speak. All of our NuGet packages, which you can use in your own projects as well, are available from our NuGet.org profile page.
Top Related Projects
Chocolatey - the package manager for Windows
An installation and update framework for Windows desktop apps
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot