About Patterns and Practices

SharePoint Patterns and Practices (PnP) is an open source initiative coordinated by SharePoint engineering. It's a channel for the SharePoint engineering to share documentation, guidance, samples and reusable component for the community. PnP initiative coordinates all SharePoint developer documentation and guidance across on-premises and online. Day to day work is coordinated by the PnP Core team, which consists of Microsoft internal people and external MVPs. If you have any input or feedback around SharePoint developer guidance, don't hesitate to start a discussion with the team at Microsoft Tech Community site at http://aka.ms/sppnp-community

How to get started or contribute?

We would recommend you to have a look on the specific webcast as "How to get started with Office Dev PnP?" from our Channel 9 video blog. If you are looking to contribute back to the PnP initiative, would recommend to have a look at another webcast called "How to contribute to Office Dev PnP initiative?" or check details on how to get started from our PnP GitHub Wiki, which also contains step-by-step instructions on setting up your environment for GitHub usage. GitHub is a slightly different tool than classic TFS, if you have used that in the past, but this guide will provide you all you need to setup your environment with GitHub and how you can always pull down the latest code to your personal GitHub fork.

Monthly releases and community calls

SharePoint PnP releases are done typically first Friday of each month when we perform the master merge in GitHub and update NuGet packages among the other key actions. You can always access the latest development time version from the dev branch. We cover details on monthly releases in our monthly community calls. Here are all the community calls around SharePoint Development Ecosystem provided by SharePoint engineering:

Latest News

Please check the dev.office.com blog section for always up to date news around SharePoint Development and PnP initiative.

Monthly Updates

PnP has two main branches. Master merge happens once a month with more comprehensive testing and release notes with detailed credits for the contributors. Dev branch has all the latest contributions and development.


We have a bunch of on-demand videos, presentations, demos and hands-on labs around transforming your farm solutions to the Sharepoint add-in model and PnP guidance. All of this material is for you to use any way you want. You can create new training packages and deliver this for your customers as well. All videos are on Channel 9 and each of them contains links to module specific resources.

Guidance documentation

We have guidance documentation for this initiative that is being built and collaborated on by both the community AND Microsoft in GitHub.com. This documentation is also then monthly published on MSDN too. You can check them out here:

  • SharePoint Framework development guidance |  docs.microsoft.com
  • Guidance on building well-performing portals in SharePoint Online |  MSDN
  • Authorization considerations for tenants hosted in Germany, China or US Government environments |  MSDN
  • Customizing the "modern" experiences in SharePoint Online |  MSDN
  • Introducing the API for bulk custom user profile properties update for SharePoint Online |  MSDN
  • Developing add-ins using Tenant permissions with App-Only in SharePoint Online |  MSDN
  • Sandbox solution transformation guidance |  MSDN
  • How to provide add-in app only tenant administrative permissions in SharePoint Online |  MSDN
  • Using correct Client-Side Object Model (CSOM) version for SharePoint customizations dev.office.com blog
  • Introducing Bulk UPA Custom Profile Properties Update API for SharePoint Online dev.office.com blog
  • PnP remote provisioning MSDN
  • Transform farm solutions to the SharePoint app model MSDN
  • CSOM releases and new capabilities - latest API changes GitHub
  • Upload large files sample app for SharePoint (Updated) MSDN Github
  • Branding and site provisioning solutions for SharePoint 2013 and SharePoint Online MSDN MSDN
  • Customize your SharePoint site UI by using JavaScript MSDN Github
  • Using Microsoft Azure WebJobs with Office 365 MSDN GitHub
  • Autotagging sample app for SharePoint MSDN GitHub

Transformation Process

Our internal Microsoft services teams have shared the project plans, kick-off presentation decks, solution assessment report templates, solution design templates and much more. This is a great kit to get you started as a Service Integrator in helping your customers.

Community Calls

2nd Tuesday of each month at 5 PM CET / 8 AM PST. ics download

PnP Core Team

PnP Core team coordinates actions around the PnP initiative.

Recent Samples

Please check the latest SharePoint and Office 365 development samples from the PnP Sample Gallery

PnP Webcasts

PnP webcasts are quick videos recordedond key topics for the Office 365 and SharePoint add-in model development. These are around 15-45 min long recordings on different resources, guidance and other patterns and practices. All webcasts will be published to PnP YouTube channel. Older videos are in the PnP Channel 9 video blog

PnP Short Videos

PnP Short videos are short videos on specific topics without additional discussions. They are targeted to max 5-10 min videos showing how to perform specific tasks. You can find all PnP Short Videos from PnP YouTube channel.

Recent Videos

PnP GitHub repositories

Here is a list of all the repositories which are controlled and managed by SharePoint PnP initiative.

  • PnP - Main repository for SP add-in, Microsoft Graph etc. samples
  • PnP-Guidance - Guidance, presentations, and articles which are partly synced to MSDN
  • PnP-Sites-Core - Office Dev PnP Core component
  • PnP-JS-Core - Office Dev PnP Core component for JavaScript
  • PnP-PowerShell - Office Dev PnP PowerShell Cmdlets
  • PnP-Tools - New repository for tools and scripts targeted more for IT Pro's and for on-premises for SP2013 and SP2016
  • PnP-Partner-Pack - Packaged guidance with detailed instructions on setting things up in Office 365 and in Azure.
  • PnP-Transformation - Material specifically for the transformation process. Currently, includes samples around InfoPath replacement and transformation tooling from farm solutions to add-in model.
  • PnP-Provisioning-Templates - Source for templates available from PnP Template Gallery at http://templates-gallery.sharepointpnp.com
  • PnP-Provisioning-Schema - PnP Provisioning engine schema repository
  • PnP-IdentityModel - Open source replacement of Microsoft.IdentityModel.Extensions.dll
Office 365 Developer Patterns and Practices