The .NET docs team makes extensive use of GitHub labels to organize our work. By filtering on combinations of labels, we can quickly focus on sections of interest on the .NET docs website.
We also use GitHub projects to organize sprints and other goal-oriented epics.
This roadmap explains how we use these organizational tools and has links to handy filters we use to find areas of interest.
If this is your first experience contributing to dotnet/docs, start with the up-for-grabs issues. These are issues that have a more focused scope. They are a great way to make your first contribution. From the up-for-grabs view, you can further filter issues based on areas and priority. We've identified good issues for beginners with the good-first-issue if you want to try a smaller first contribution.
We use labels to classify issues in many different ways:
You can combine a label from each set (guide, release, priority) to create a narrow focus to find issues you want to work on.
We use labels for each of the architecture e-books and for each .NET Guide.
Architecture e-books are noted with the :book: guide
prefix and have a light green background. These are the long-form areas that cover recommended architecture. Here are current issues filtered for each of the .NET architecture guides.
- ASP.NET Core web apps
- Blazor
- Cloud Native
- Docker lifecycle
- gRPC
- Modernizing w/ Windows containers
- .NET Microservices
- Serverless apps
This label style is also applied to the Framework design guidelines. This area has the same label design, but community PRs are discouraged. This is material reprinted with permission and should not be edited.
Each .NET Guide is noted with the :books: Area
prefix and has a dark blue background. Here are current issues filtered for each of the .NET guides.
- API Reference
- Azure .NET SDK
- C# Guide
- Desktop Guide
- F# Guide
- ML.NET Guide
- .NET Architecture Guide - Could be removed
- .NET Core Guide
- .NET for Apache Spark Guide
- .NET Framework Guide
- .NET Guide
- Roslyn API Reference - could be removed.
- Visual Basic Guide
The .NET guides are large, so these labels further limit the scope by a section of a guide. Each .NET Guide subarea is noted with the :card_file_box: Technology
prefix and has a medium blue background. Many of these labels apply to multiple guides, while others are in only one guide. After filtering on an area, add one of these labels to further limit the scope of issues.
- AppCompat
- Async Task
- C# Advanced concepts
- C# compiler
- C# Fundamentals
- C# Get Started
- C# Language Reference
- C# Null safety
- C# What's new
- CLI
- Data Access
- Docker
- Installers
- LINQ
- NCL
- .NET Standard
- Roslyn APIs
- Security
- WCF
- WF
- WIF
- WinForms
- WPF
Issues tagged for a specific release are noted with the :checkered_flag: Release:
prefix and have a dark yellow background.
- .NET Core 2.2
- .NET Core 3.0
Priority labels are all P
followed by a single digit. Lower numbers are higher priority:
- P0
- P1
- P2
There are many other labels used by the content teams to manage different classifications of issues. If you're not on the content team, you can ignore these other labels.
Contributors should check the Projects for .NET community collaborators. We've created different columns for maintenance, document updates, and new content tasks. This can be a way to find tasks of interest. (Note that the project view can be filtered using the labels described above.)
We also use projects in two other ways:
- Month YYYY project types: These are scrum boards for each month's working plan.
- Long-running epics: These are used to organize tasks toward a goal when the work will occur over several months.