Skip to content

Commit 23851a6

Browse files
authored
Update nuget.org search docs with new Framework filter options (#3230)
* Updating nuget.org search docs - first draft * up-date * Updated screenshots * updated screenshots folder * Added framework badge info * improved screenshot
1 parent e0a8371 commit 23851a6

8 files changed

+17
-7
lines changed

docs/consume-packages/Finding-and-Choosing-Packages.md

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Find and evaluate NuGet packages
33
description: Find and evaluate publicly available NuGet packages for your project by using advanced nuget.org search filters and syntax.
44
author: JonDouglas
55
ms.author: jodou
6-
ms.date: 08/21/2023
6+
ms.date: 02/08/2024
77
ms.topic: conceptual
88
---
99

@@ -17,24 +17,26 @@ You can find packages directly at [https://nuget.org/packages](https://www.nuget
1717

1818
At [nuget.org/packages](https://www.nuget.org/packages), you see a list of NuGet packages with the most popular packages across all .NET projects listed first. Some of these packages might be useful for your projects.
1919

20-
![Screenshot that shows the default view of nuget.org/packages with the most popular packages at the top.](media/Finding-07-Popularity.png)
20+
![Screenshot that shows the default view of nuget.org/packages with the most popular packages at the top.](media/Finding-07-MostPopular.png)
2121

2222
To search for a package, enter the package name or search terms in the Search box at the top of the page. You can use [advanced search syntax](#search-syntax) to filter your search.
2323

2424
### Advanced filtering and sorting
2525

2626
At nuget.org/packages, you can refine your search results by making use of the advanced filtering and sorting options.
2727

28-
![Screenshot that shows the filtering and sorting options on nuget.org.](media/Finding-08-SearchResults.png)
28+
![Screenshot that shows the filtering and sorting options on nuget.org.](media/Finding-08-FiltersAndSorts.png)
2929

3030
Use the **Frameworks** filters to show packages targeting specific .NET frameworks (To learn more, see [Target Frameworks](/dotnet/standard/frameworks)):
3131

32-
- Selecting one of the .NET framework generation checkboxes would filter the search results to packages targeting any of the Target Frameworks within that generation. For example, selecting `.NET` will return packages targeting any of the modern .NET frameworks, including `net5.0` through `net7.0`.
32+
- Selecting one of the .NET framework generation checkboxes would filter the search results to packages compatible with any of the individual Target Frameworks within that generation. For example, selecting `.NET` will return packages compatible with any of the modern .NET frameworks, including `net5.0` through `net8.0`.
3333

34-
![Screenshot that shows the Framework filters on nuget.org.](media/Finding-09-FrameworkFilters.png)
34+
![Screenshot that shows the Framework filters on nuget.org.](media/Finding-09-FrameworkFilterPanel.png)
3535

36-
- Expanding one of these framework generations with the arrows on the right will show you individual Target Framework Monikers (TFMs) that you can filter your results by. For example, selecting `net5.0` will only return packages that explicitly target the '.NET 5.0' framework.
37-
- Combining multiple framework filters will show you search results that fall in the intersection of your selections. For example, selecting `netcoreapp3.1` and `net45` together will show packages that target *both* '.NET Core 3.1' and '.NET Framework 4.5'. Selecting the `.NET Core` framework generation checkbox and the `net45` checkbox together will return packages that target '.NET Framework 4.5', and at least one of the '.NET Core' TFMs (`netcoreapp1.0` through `netcoreapp3.1`).
36+
- Expanding one of these framework generations with the arrows on the right will show you individual Target Framework Monikers (TFMs) that you can filter your results by. For example, selecting `net5.0` will return packages compatible with the '.NET 5.0' framework.
37+
- By default, packages are filtered by their expanded list of computed compatible frameworks. If you want to filter packages purely by the asset frameworks they explicitly target, deselect the **Include compatible frameworks** checkbox.
38+
- Combining multiple framework filters will show you search results that match all of your selected filters, i.e. packages that fall in the intersection of your selections. For example, selecting `netcoreapp3.1` and `net45` together will show packages that target **both** '.NET Core 3.1' and '.NET Framework 4.5'. Selecting the `.NET Core` framework generation checkbox and the `net45` checkbox together will return packages that target '.NET Framework 4.5', and at least one of the '.NET Core' TFMs (`netcoreapp1.0` through `netcoreapp3.1`).
39+
- Alternatively, if you want to see packages matching **any one** of your framework filters, select the **Any** radio button on the **Framework Filter Mode** option. Now, selecting `netcoreapp3.1` and `net5.0` will show packages that target **either** '.NET Core 3.1' or '.NET 5.0'. Selecting the `netcoreapp3.1` checkbox and the `.NET` framework generation checkbox together will return packages that target '.NET Core 3.1' or any one of the '.NET' TFMs (`net5.0` through `net8.0`).
3840
- You can learn more on how to evaluate a package's supported frameworks and its compatibility with your project [here](#determine-supported-frameworks).
3941

4042
Use the **Package type** filter to show packages of a specific type:
@@ -80,6 +82,14 @@ NuGet installs a package into a project only if the package's supported .NET fra
8082

8183
There are several ways to determine the frameworks that a package supports:
8284

85+
- On the search page, a package's supported frameworks will appear as badges below the package ID. These badges show the lowest supported framework versions from the **.NET**, **.NET Core**, **.NET Standard**, and **.NET Framework** generations. The package will be compatible with any framework version that's equal to or higher than the badge version shown.
86+
87+
'Dark blue' badges represent explicitly targeted frameworks, while 'light blue' badges represent computed compatible frameworks.
88+
89+
Clicking on a badge will redirect you to the package's details page on nuget.org. The **Frameworks** tab on the package's page will show the full list of supported frameworks.
90+
91+
![Screenshot of the Framework badges on nuget.org's search page.](media/Finding-10-FrameworkBadgesInSearch.png)
92+
8393
- On the package's page at nuget.org, supported frameworks appear below the package ID and on the **Frameworks** tab, but not all packages show supported frameworks.
8494

8595
![Screenshot of the Frameworks UI and tab on the package page at nuget.org.](media/supported-frameworks.png)
130 KB
Loading
Binary file not shown.
98.1 KB
Loading
Binary file not shown.
9.9 KB
Loading
Binary file not shown.
93.7 KB
Loading

0 commit comments

Comments
 (0)