In August of 2019, I wrote a post called My GitHub cheat sheet for PnP contributions — an interactive cheat sheet which explains the GitHub commands that I use when I start a contribution. The post is interactive: you just tell it your GitHub username and what repository you want to contribute to, and it customizes the instructions for you.
NOTE: I have since updated the interactive cheat sheet to a Summary Cheat Sheet with all the same interactive steps, but without all the lengthy explanation.
I also wrote another post talking about how impressed I am with David Warner II’s offer to help anyone with their first contribution. I have since joined the Sharing is Caring initiative and proudly co-host all the session with David Warner
After briefly chatting with David I realized that the biggest hurdle for people is that they just don’t know where to get started. In my post, I recommend that you read the contribution guidelines for every repo, but I found that they are often hard to find in each repository.
I also say that most repositories want you to start from the dev
branch, but as the Chris Kent pointed out in the August 22nd PnP community call, some repositories prefer you use the master
(or, more and more commonly, the main
) branch.
So, with David’s help, we compiled a list of the most common PnP repositories to help you get started. We only show the repositories that provide contribution guidelines.
The list contains the following:
NOTE: The information in each of the repositories can change and that you should always refer to the repository for the latest information.
Repo | What is it? | Getting started | Branch |
---|---|---|---|
Adaptive Card Extension Samples PnP/sp-dev-fx-aces | Viva Connection Adaptive Card Extensions (ACEs) sample repository https://aka.ms/viva/connections/extensibility | Contributing | main |
Community Blog PnP/Blog | Blogs for pnp.github.io/blog | Contributing | main |
CLI for Microsoft 365 PnP/CLI-Microsoft365 | Manage Microsoft 365 and SharePoint Framework projects on any platform https://aka.ms/o365cli NOTE: This repository prefers “one commit per pull request” | Contribution guidelines | main |
Microsoft 365 Community Docs MicrosoftDocs/microsoft-365-community | Microsoft 365 community contributed documentation https://docs.microsoft.com/microsoft-365/community | Adding content | main |
Microsoft Graph .NET Client Library MicrosoftGraph/Microsoft-SDK-DotNet | Microsoft Graph Client Library for .NET! https://graph.microsoft.com/ | Contributing to the Microsoft Graph .Net Client Library | dev |
Microsoft Graph .NET Core Client Library MicrosoftGraph/Microsoft-SDK-DotNet-Core | The core Microsoft Graph client library for .Net. (Microsoft.Graph.Core) https://graph.microsoft.com/ | Contributing to the Microsoft Graph .Net Client Library | dev |
Microsoft Graph documentation MicrosoftGraph/Microsoft-Graph-Docs | Documentation for the Microsoft Graph REST API, which feeds the Microsoft Graph Developer Portal. https://docs.microsoft.com/graph | Contribute to Microsoft Graph documentation | main |
Microsoft Graph JavaScript Client Library MicrosoftGraph/Microsoft-SDK-JavaScript | The Microsoft Graph JavaScript client library is a lightweight wrapper around the Microsoft Graph API that can be used server-side and in the browser. https://graph.microsoft.com/ | Contributing | dev |
Microsoft Graph Library for PHP MicrosoftGraph/Microsoft-SDK-PHP | Microsoft Graph Library for PHP https://docs.microsoft.com/graph/toolkit/overview | Contributing to the Microsoft Graph PHP SDK | Documentation changes, use main |
Otherwise, use dev | |||
Microsoft Graph PowerShell SDK MicrosoftGraph/Microsoft-SDK-PowerShell | The Microsoft Graph PowerShell SDK is a collection of PowerShell modules that contain commands for calling Microsoft Graph service. | Contributing | dev |
Microsoft Graph SDK for Java MicrosoftGraph/Microsoft-SDK-Java | Get started with the Microsoft Graph SDK for Java by integrating the Microsoft Graph API into your Java application! https://developer.microsoft.com/graph | Contributing to the Microsoft Graph SDK for Java | dev |
Microsoft Teams Development Community Samples PnP/teams-dev-samples | Contains community samples that demonstrate different usage patterns for developing on Microsoft Teams as a platform. Samples are generally not production-ready, but are intended to show developers specific patterns and use cases for use in complete applications. http://aka.ms/teams-dev-samples | Contribution guidance | main |
Modernization Tools and Solutions PnP/sp-dev-modernization | All modernization tooling and guidance http://aka.ms/sppnp-modernize | The modernization repository | dev |
PnP Framework PnP/PnPFramework | PnP Framework is a .Net Standard library targeting Microsoft 365 containing the PnP Provisioning engine and a ton of other useful extensions | dev | |
PnP Modern Search Microsoft-Search/PnP-Modern-Search | Home of PnP Modern Search solutions, helping you move from classic to modern SharePoint and beyond | develop | |
PnP PowerShell PnP/PnP-PowerShell | SharePoint PnP PowerShell CmdLets https://aka.ms/sppnp-powershell | Contribution guidance | dev |
PnP Starter Kit PnP/sp-starter-kit | Modern SharePoint Starter Kit – End-to-end showcase solution to get started with modern experiences. | dev | |
PnPJs PnP/PnPjs | SharePoint Patterns and Practices Reusable Client-side Libraries https://pnp.github.io/pnpjs | Contribution guide | Version 3 Version 2 Version 1 |
Power Apps Samples PnP/powerapps-samples | Power Apps samples and design patterns provided by the PnP team and the community. http://aka.ms/powerplatform-samples | Contribution guidelines | main |
Power Automate Samples PnP/powerautomate-samples | Power Automate samples and design patterns provided by the PnP team and the community. http://aka.ms/powerautomate-samples | Contribution guidelines | main |
Power Fx Samples PnP/powerfx-samples | Power Fx Samples – Contains samples for Power Fx low-code programming language. Contribution guidelines | main | |
Power Virtual Agents Samples PnP/powerva-samples | Power Virtual Agents samples and design patterns provided by the PnP team and the community. http://aka.ms/powerva-samples | Contribution guidelines | main |
SharePoint Developer Documentation SharePoint/sp-dev-docs | SharePoint Developer Documentation https://docs.microsoft.com/en-us/sharepoint/dev/ | Contribute to SharePoint developer documentation | main |
SharePoint Framework Client-Side Web Part Samples & Tutorial Materials PnP/sp-dev-fx-webparts | Code samples and developer content targeted towards SharePoint Framework client-side web parts. Maintained by the nicest guy 😁. http://aka.ms/spfx-webparts | Contribution guidelines | main |
SharePoint Framework Extensions Samples & Tutorial Materials PnP/sp-dev-fx-extensions | Code samples and developer content targeted towards SharePoint Framework client-side extensions — maintained by yours truly. https://aka.ms/spfx-extensions | Contribution guidance | main |
SharePoint Framework Library Component Samples & Tutorial Materials PnP/sp-dev-fx-library-components | Samples that demonstrate different usage patterns for the SharePoint Framework library component. Contribution guidance | Create from: master Submit to: dev | |
SharePoint Framework React Controls PnP/sp-dev-fx-controls-react | Reusable React controls for SPFx solutions https://pnp.github.io/sp-dev-fx-controls-react/ | – Contribution guidelines – Submitting a PR | dev |
SharePoint Framework React Property Controls PnP/sp-dev-fx-property-controls | Reusable SPFx property pane controls – Open source initiative https://pnp.github.io/sp-dev-fx-controls-react/ | Project guides | dev |
SharePoint List Formatting Samples PnP/sp-dev-list-formatting | SharePoint List Formatting Samples https://pnp.github.io/sp-dev-list-formatting/ | Contribution guidelines | master |
Let’s keep this list up to date! If you find that we forgot a repository, or that something is wrong, let us know in the comments of via Twitter and we’ll get it updated!
Thanks to David Warner II with putting together this list, and for always making yourself available to help people in this community.
This list wouldn’t be possible without the hard work of all of those who contributed (and continue to contribute) to the above repositories. Thank you for your contributions!
Image by StockSnap from Pixabay
master
branch. This article was updated accordingly.