Skip to content

NuGetPackageExplorer/NuGetPackageExplorer

Repository files navigation

Logo

Build Status Twitter Follow

How to install

You could install with the Microsoft Store or Chocolatey. The Microsoft Store is the preferred version for Windows 10 Creators Update and later. It auto-updates and is the full application.

There also a CI build available for direct install on Windows 10 1803 and higher. The nightly build installs alongside the release version with no interference and will automatically update.

Build Number Link
Nightly build number Install
Stable build number Microsoft Store
Chocolatey build number Chocolatey
Nuget (with prereleases) dotnet-validate CLI

Microsoft Store (recommended)

English badge

If you have winget installed, you can use it to acquire NuGet Package Explorer through the Microsoft Store:

winget install "NuGet Package Explorer"

.NET CLI Tool

A subset of functionality for checking package health is now available as a cross-platform CLI tool. Install with:

dotnet tool install -g dotnet-validate --version 0.0.1-preview.42

Note: Use the latest version

There is one command and two subcommands:

The main command is package. This is so dotnet validate ... can be used for additional things later.

Usage:

Usage:
  dotnet validate package local [options] <file>

Arguments:
  <file>    Package to validate.

Options:
  -?, -h, --help    Show help and usage information

Usage:
  dotnet validate package remote [options] <packageId>

Arguments:
  <packageId>    Package Id

Options:
  -v, --version <version>            Package version. Defaults to latest.
  -s, --feed-source <feed-source>    V3 NuGet Feed Source. [default: https://api.nuget.org/v3/index.json]
  -?, -h, --help                     Show help and usage information

Return codes: Tool will return -1 if the package is not fully valid. Details will be printed to the console.

To Do

A lot! The tool should emit the results in a machine-parsable way (json).

Known Issue: Exact versions for remote packages isn't working. Only the latest is checked. Will be fixed shortly.

Chocolatey

Chocolatey is another great way to install and update your application.

  1. Run PowerShell (as Admin)
  2. Install Chocolatey: iwr https://chocolatey.org/install.ps1 -UseBasicParsing | iex
  3. Install NuGet Package Explorer: choco install nugetpackageexplorer

Web

A subset of NuGet Package Explorer (Browsing, Inspecting, Uploading packages) is available on the Web. Implemented by using Uno Platform Web Assembly support, it is also available as PWA.

The current Windows/WPF implementation of NPE will remain in the Windows store indefinitely, or at least until the new version fully replaces its functionality.

What is NuGet Package Explorer?

NuGet Package Explorer (NPE) is an application that makes it easy to create and explore NuGet packages. You can load a .nupkg or .snupkg file from disk or directly from a feed such as nuget.org.

To build packages from the command line, use NuGet command-line tools, as documented on the official NuGet site.

Package View

Contributing

We accept pull requests (PR). Please open an issue to discuss first if there isn't a related issue yet.

If you'd like to help, please check the GitHub issues. If you'd like to contribute more structurally, we would be happy to add you to our team!

Issues

Please check the FAQ first and search for duplicate issues before reporting them.

Creating a Package

  1. Launch NPE and select File > New (Ctrl-N), or select Create a new package from the Common tasks dialog when Package Explorer starts:

    Package Explorer's common tasks dialog

  2. Select Edit > Edit Package Metadata (Ctrl-K) to open the editor for the underlying .nuspec file. Details for the metadata can be found in the nuspec reference.

    Editing package metadata with the Package Explorer

  3. Open the files you want to include in the package in Windows explorer, then drag them into the Package contents pane of Package Explorer. Package Explorer will attempt to infer where the content belongs and prompt you to place it in the correct directory within the package. (You can also explicitly add specific folders using the Content menu.)

    For example, if you drag an assembly into the Package contents window, it will prompt you to place the assembly in the lib folder:

    Package Explorer infers content location and prompts for confirmations

    The package's lib folder with added content

  4. Save your package with File > Save (Ctrl-S).

  5. If you have a code signing certificate, sign your package with File > Sign and Save As.

    Sign package dialog

Publishing a Package

  1. Create a free account on nuget.org, or log in if you already have one. When creating a new account, you'll receive a confirmation email. You must confirm the account before you can upload a package.

  2. Once logged in, click your username (on the upper right) to navigate to your account settings.

  3. Under API Key, click copy to clipboard to retrieve the API key you'll need in the next step.

    Copying the API key from the nuget.org profile

  4. Assuming your package is loaded in Package Explorer, select File > Publish (Ctrl-P) to bring up the Publish Package dialog.

    Publish Package Dialog

  5. Paste your API key into Publish key and click Publish to push the package to nuget.org.

  6. In your profile on nuget.org, click Manage my Packages to see the one that you just published; you'll also receive a confirmation email. Note that it might take a while for your package to be indexed and appear in search results, during which time you'll see a message that the package hasn't yet been indexed.

Build

Requirements to build the project:

  • VS2022 or later. If using the stable release, make sure to enable support for Preview .NET Core SDK's
  • .NET 7 SDK