Microsoft 365 PnP Community -- April 2021 update
Microsoft 365 Patterns and Practices (PnP) Community April 2021 update is out with a summary of the latest guidance, samples, and solutions from Microsoft or from the community for the community. This article is a summary of all the different areas and topics around the community work we do around Microsoft 365 ecosystem during the past month. Thank you for being part of this success. Sharing is caring!
What is Microsoft 365 Community (PnP)
Microsoft 365 PnP is a nick-name for Microsoft 365 platform community activities coordinated by numerous teams inside of the Microsoft 365 engineering organizations. PnP is a community-driven open source initiative where Microsoft and external community members are sharing their learning’s around implementation practices for Microsoft 365. Topics vary from Microsoft Viva, Microsoft Graph, Microsoft Teams, OneDrive and SharePoint. Active development and contributions happen in GitHub by providing contributions to the samples, reusable components, and documentation for different areas. PnP is owned and coordinated by Microsoft engineering, but this is work done by the community for the community.
- See more details from New Microsoft 365 Patterns and Practices (PnP) team model with new community leads The initiative is facilitated by Microsoft, but we have multiple community members as part of the PnP team (see team details in end of the article) and we are always looking to extend the PnP team with more community members. Notice that since this is open source community initiative, so there’s no SLAs for the support for the samples provided through GitHub. Obviously, all officially released components and libraries are under official support from Microsoft. Some key statistics around Microsoft 365 PnP initiative from March 2021:
- Unique visitors during the past 2 weeks in PnP, OneDrive, Microsoft-Search, OfficeDev and SharePoint GitHub organization repositories - 72,290
- Overall unique contributors in the PnP, OneDrive, Microsoft-Search, OfficeDev and SharePoint GitHub organizations - 1,799
- Microsoft 365 Community (PnP) YouTube channel had 92,953 views with 6,835 hours of watch time and 21,597 subscribers
- Microsoft 365 Developer YouTube channel had 50,060 views with 3,628 hours of watch time and 13,111 subscribers Most viewed videos in the Microsoft 365 Community (PnP) YouTube channel during March 2021:
- Working with Microsoft Lists (webinar) - Harini Saladi, Miceile Barrett, Chakkaradeep Chandran and Mark Kashman | 4,207
- Getting started with Site Designs in SharePoint Online - Laura Kokkarinen (Sulava) | 3,974
- Architecting Your Intranet | Melissa Torres (Microsoft) | 2,659
- Building a beautifully designed Intranet with SharePoint - latest design and branding capabilities | Cathy Dew (Microsoft) & Katie Swanson (Microsoft) | 2,431
- SharePoint App Bar - Global navigation and wayfinding | Melissa Torres (Microsoft) | 2,263
- Introducing: New Employee Onboarding - a Microsoft Teams app template | Nidhi Sharma (Microsoft) | 2,227
- SharePoint Framework Tutorial 1 - HelloWorld WebPart | 1,764
- SharePoint at 20 🎂 | 1,731
- Migration to SharePoint, OneDrive, and Microsoft Teams in Microsoft 365, free and easy - Hani Loza (Microsoft) & Eric Warnke (Microsoft) | 1,718
- Latest on Power Automate integration within SharePoint Online | Chakkaradeep Chandran (Microsoft) | 1,678
Most viewed videos in the Microsoft 365 Developer YouTube channel during March 2021:
- Microsoft Teams community call - March 2021 | 3,817
- Authenticate and connect with Microsoft Graph - June 2019 | 1,639
- Build Outlook Add-ins that integrate your solution seamlessly into your users’ Outlook experience | Juan Balmori, Hitesh Manwar - 1,321
- An introduction to Microsoft Graph for developers - Part I - Getting started - October 2019 | 1,218
- Getting Started with Microsoft Graph and Application Registration | 1,020
- Create interactive conversational bots for Microsoft Teams | 954
- Build and Office add-in using modern JavaScript tools and technologies | 924
- Accessing Files with Microsoft Graph | 772
- Getting Started with Microsoft Graph | 767
- Develop multi-tenant applications with Microsoft Identity Platform - April 2020 | 743
Main resources around Microsoft 365 Community:
- Microsoft 365 Community - https://aka.ms/m365pnp - One location for all the resources and news around PnP
- Microsoft 365 community blog - https://aka.ms/m365pnp/community/blog
- Microsoft 365 development blog - https://aka.ms/m365pnp-blog
- Microsoft 365 Community Channel on YouTube - https://aka.ms/m365pnp-videos
- Microsoft 365 Developer YouTube channel - https://aka.ms/M365DevYouTube
Latest Dev Blog posts
Here are the latest blog posts and announcements around Microsoft 365 development topics from https://developer.microsoft.com/microsoft-365/blogs.
- 9th of April - New feature request experience for Microsoft Graph and Office Platform
- 8th of April - Jedox explains batching Excel Custom Functions API calls
- 6th of April - Build quality Microsoft Teams apps with these best practices: Part 1
- 1st of April - Get Microsoft Graph change notifications delivered through Azure Event Hubs
- 31st of March - Accelerate your app adoption with MSAL for Node.js
- 31st of March - Microsoft Graph Fundamentals now on Microsoft Learn
- 30th of March - Microsoft Graph Java SDK v3 adds enhanced capabilities with general availability
- 29th of March - Announcing Project Reunion 0.5!
- 26th of March - Tips for using the shared JavaScript runtime in your Office Add-in
- 23rd of March - Microsoft Graph Mailbag – Getting Started with the Microsoft Graph PowerShell SDK
- 18th of March - Upgrade signed Office VBA macro projects to V3 signature
- 17th of March - Announcing SharePoint Framework 1.12 – Extending more of Microsoft Teams
- 16th of March - Announcing Windows Community Toolkit v7.0
- 16th of March - FactSet for Excel leverages the EquivalentAddin element for COM add-in compatibility
- 11th of March - Build Cross-Platform apps with WinUI and Uno Platform
- 9th of March - Four device capabilities developers can utilize for Microsoft Teams mobile apps
- 9th of March - Microsoft Graph Mailbag – Microsoft Graph in Electron applications using Microsoft Graph Toolkit
- 8th of March - Microsoft Graph Toolkit adds a new Electron Provider plus enhanced capabilities
- 4th of March - What’s new for Excel add-ins developers in 2021
- 4th of March - Office Add-ins partner Sheetgo integrates Excel’s extensibility features
- 2nd of March - What’s new for Microsoft 365 and Teams Platform @ Ignite 2021 Latest community posts at https://aka.ms/m365pnp/community/blog
- 12th of April - Lee Ford (Symity Ltd) - Introduction to tokens
- 12th of April - Chandani Prajapati - How to get any site collection users with their roles using PnP PowerShell?
- 11th of April - Chandani Prajapati - How to show profile picture in Person column in SharePoint list/library?
- 9th of April - Luise Freese - Microsoft 365 PnP Community Spotlight: Albert-Jan Schot
- 7th of April - Luise Freese - Microsoft Graph Fundamentals learning path – Module 3
- 7th of April - Luise Freese - PnP WatchParty for Microsoft’s ‘LearnTogether Building apps with Microsoft Graph’ event
- 7th of April - Django Lohn (InSpark) - Power Apps: source code editing for Canvas Apps
- 7th of April - Yannick Reekmans (Qubix) - Change your own profile picture as a Guest in Microsoft Teams
- 6th of April - Mike Homol (ThreeWill) - Improving the Page Properties web part
- 5th of April - Luise Freese - Microsoft Graph Fundamentals learning path – Module 2
- 1st of April - Luise Freese - Microsoft Graph Fundamentals learning path – Module 1
- 1st of April - Will Holland (ThreeWill) - Copy a list - with list items - to another site
- 31st of March - Peter Paul Kirschner (Cubido Business Solutions GmbH) - SPFx Image Editor Sample - Playing with Canvas
- 30th of March - Garry Trinder (CPS) - CLI for Microsoft 365 v3.8
- 29th of March - Yannick Reekmans (Qubix) - Add Developer PowerShell and Developer Command Prompt for Visual Studio to Windows Terminal
- 28th of March - Waldek Mastrykarz (Microsoft) - Start building apps for Teams
- 27th of March - Will Holland (ThreeWill) - Using the PnP Modern Search Web Parts
- 26th of March - Luise Freese - How to get started with Graph Explorer
- 26th of March - Luise Freese - Microsoft 365 PnP Community Spotlight: Julie Turner
- 24th of March - Chandani Prajapati - Fetch User Profile Properties From Site Collection And Export To CSV Using PNP PowerShell
- 24th of March - Elio Struyf (Struyf Consulting) - New VSCode extension for autocompleting your Microsoft Graph APIs
- 23rd of March - Yves Habersaat (Sword Group) - How to determine web part size with SPFx v1.12
- 19th of March - Will Holland (ThreeWill) - Getting started with SharePoint’s custom view formatting
- 19th of March - Luise Freese - Microsoft 365 PnP Community Spotlight: David Warner
- 17th of March - Chandani Prajapati - Break And Change List Item Permission Using PnP JS In SPFx
- 17th of March - Waldek Mastrykarz (Microsoft) - CLI for Microsoft 365 v3.7
- 15th of March - Paul Bullock (CaPa Creative) - Getting started with PnP Core SDK
- 14th of March - Will Holland (ThreeWill) - Getting started with SharePoint’s custom column formatting
- 13th of March - Garry Trinder (CPS) - Run CLI for Microsoft 365 in Docker
- 11th of March - Luise Freese - 10 things we should think about before we build an app
- 11th of March - Luise Freese - 5 commands to try in CLI for Microsoft 365 to fall in love with it
- 10th of March - Elio Struyf (Struyf Consulting) - Doctor - Maintain your documentation on SharePoint without pain
- 10th of March - Michaël Maillot (onepoint) - Init API permissions for your SPFx projects without deploying them
- 8th of March - Waldek Mastrykarz (Microsoft) - Getting started with SharePoint Framework
- 7th of March - Yves Habersaat (Sword Group) - How to start a new SPFx web part project with Microsoft Graph Toolkit and React
- 6th of March - Leon Armston (Intelogy) - Avoid Unnecessary Looping (Apply to each) in Power Automate
- 5th of March - Luise Freese - How to create a (faux) table in Adaptive Cards with Power Automate
- 3rd of March - Luise Freese - Should we use SharePoint REST or Microsoft Graph API in Power Automate?
- 32nd of March - Paul Bullock (CaPa Creative) - Modernization lives on in PnP Framework
- 2nd of March - Elio Struyf (Struyf Consulting) - To write code comments or not, it should not be a question Community call recording blog posts:
- 9th of April - SharePoint Framework Community Call Recording – 8th of April, 2021
- 8th of April - Microsoft Graph community call - April 6th, 2021
- 2nd of April - Microsoft 365 Developer Community Call recording – 1st of April, 2021
- 29th of March - Microsoft Identity Platform community call - March 2021
- 26th of March - SharePoint Framework Community Call Recording – 25th of March, 2021
- 23rd of March - Power Apps Community Call – March 2021
- 19th of March - Microsoft 365 Developer Community Call recording – 18th of March, 2021
- 18th of March - Microsoft Teams Community Call - March 2021
- 17th of March - Adaptive Cards community call – March 2021
- 15th of March - Office Add-ins community call – March 10, 2021
- 12th of March - SharePoint Framework Community Call Recording – 11th of March, 2021
- 4th of March - Microsoft 365 PnP – General Developer SIG recording – 4th of March, 2021 PnP Weekly video blog / podcast shows:
- 4th of April - Microsoft 365 PnP Weekly – Episode 121 - Nik Charlebois (Microsoft)
- 30th of March - Microsoft 365 PnP Weekly – Episode 120 - Paolo Pialorsi (PiaSys)
- 23rd of March - Microsoft 365 PnP Weekly – Episode 119 - Chris O’Brien (Content+Cloud)
- 16th of March - Microsoft 365 PnP Weekly – Episode 118 - Veronique Lengelle (CPS)
- 9th of March - Microsoft 365 PnP Weekly – Episode 117 - Bert Jansen (Microsoft) We highly recommend also subscribing on the Microsoft 365 Developer Podcast show, which is a great show covering also latest development in the Microsoft 365 platform from developer and extensibility perspective.
Community Calls
There are numerous different community calls on different areas. All calls are being recorded and published either from Microsoft 365 Developer or Microsoft 365 Community (PnP) YouTube channels. Recordings are typically released within the following 24 hours after the call. You can find a detailed agenda and links to specific covered topics on blog post articles at the Microsoft 365 developer blog when the videos are published.
- Adaptive Cards https://aka.ms/adaptivecardscommunitycall - Updates and news around Adaptive Cards with live demos
- Microsoft Graph https://aka.ms/microsoftgraphcall - Updates and news from Microsoft Graph with live demos
- Microsoft identity platform https://aka.ms/IDDevCommunityCalendar - Latest on the identity side
- Microsoft Teams https://aka.ms/microsoftteamscommunitycall - Microsoft Teams monthly update with live demos
- Office Add-ins https://aka.ms/officeaddinscommunitycall - News and community work around Office add-ins with live demos
- Power Apps https://aka.ms/PowerAppsMonthlyCall - Monthly summary on Power Apps community with live demos
- SharePoint https://aka.ms/spdev-call - Consists of the latest news, providing credits for all community contributors and live demos typically by SharePoint engineering.
- M365 General Dev SIG https://aka.ms/spdev-sig-call - Bi-weekly - General topics on Microsoft 365 Dev from various aspects - Microsoft Teams, Microsoft Graph Toolkit, Provisioning, Automation, Scripting, Power Automate, Solution design
- SharePoint Framework SIG https://aka.ms/spdev-spfx-call - Bi-weekly - Consists of topics around SharePoint Framework and JavaScript-based development in the Microsoft Teams and in SharePoint platform. If you are interested in doing a live demo of your solution or sample in these calls, please do reach out to the PnP Team members (contacts later in this post) and they are able to help with the right setup. These are great opportunities to gain visibility for example for existing MVPs, for community members who would like to be MVPs in the future or any community member who’d like to share some of their learnings.
Microsoft 365 Community (PnP) Ecosystem in GitHub
Most of the community driven repositories are in the PnP GitHub organization as samples are not product specifics as they can contain numerous different solutions or the solution works in multiple different applications.
PnPjs - PnPjs Framework repository
CLI Microsoft 365 - Cross-OS command line interface to manage Office 365 tenant settings
generator-spfx - Open-source Yeoman generator which extends the out-of-the-box Yeoman generator for SharePoint with additional capabilities
generator-teams - Open-source Microsoft Teams Yeoman generator - Bots, Messaging Extensions, Tabs, Connectors, Outgoing Web hooks and more
teams-dev-samples - Microsoft Teams targeted samples from community and Microsoft engineering
Sharing is Caring - Getting started on learning how to contribute and be active on the community from GitHub perspective.
pnpcore - The PnP Core SDK is an SDK designed to work against Microsoft 365 with Microsoft Graph API first approach
powershell - PnP PowerShell module which is PowerShell Core module targeted for Microsoft 365
pnpframework - PnP Framework is a .Net Standard 2.0 library targeting Microsoft 365 containing the PnP Provisioning engine and a ton of other useful extensions
https://github.com/pnp/teams-dev-samples - Samples around the Microsoft Teams development models from Microsoft and from the community
sp-dev-fx-webparts - Client-side web part samples from community and Microsoft engineering
sp-dev-fx-extensions - Samples and tutorial code around SharePoint Framework Extensions
sp-dev-fx-library-components - Samples and tutorial code around the SharePoint Framework library components
sp-starter-kit - Starter kit solution for SharePoint modern experiences
sp-dev-fx-vs-extension - Open source Visual Studio IDE extension for creating SharePoint Framework solutions in the Visual Studio 2015 or 2017
sp-dev-build-extensions - Different build extensions like gulp tasks and gulp plugins from the community and engineering around SharePoint development
sp-dev-solutions - Repository for more polished and fine-tuned reusable solutions build with SharePoint Framework
sp-dev-samples - Repository for other samples related on the SharePoint development topics - WebHooks etc.
sp-dev-fx-controls-react - Reusable content controls for SharePoint Framework solutions build with React
sp-dev-fx-property-controls - Reusable property pane controls to be used in web parts
sp-dev-list-formatting - Open-source community-driven repository for the column and view formatting JSON definitions
sp-dev-site-scripts - Open-source community-driven repository for community Site Designs and Site Scripts
sp-dev-modernization - Tooling and guidance around modernizing SharePoint from classic to modern
sp-power-platform-solutions - Solution and sample code for SharePoint Power Platform solutions
powerfx-samples - Samples that demonstrate different usage patterns for the Power Fx low-code programming language
All SharePoint specific repositories or services supported directly by Microsoft are located in the SharePoint GitHub organization
\sp-dev-docs - Source for new SharePoint dev center documentation exposed from https://learn.microsoft.com/sharepoint/dev
sp-dev-provisioning-templates - Open-source templates used by the SharePoint Look Book site
sp-provisioning-service - Source code of the SharePoint look book site PnP specific repositories - solution designs and tooling
PnP - Main repository for SP add-in, Microsoft Graph etc. samples
PnP-Sites-Core - Office Dev PnP Core component
PnP-PowerShell - Office Dev PnP PowerShell Cmdlets
PnP-Tools - Tools and scripts targeted more for IT Pro’s and for on-premises for SP2013 and SP2016
PnP-Provisioning-Schema - PnP Provisioning engine schema repository
PnP-IdentityModel - Open source replacement of Microsoft.IdentityModel.Extensions.dll Repositories in the GitHub Microsoft Search organization controlled by the PnP initiative
pnp-modern-search - Home of PnP Modern Search solutions, see more from the documentation Other related resources from GitHub
Microsoft Graph Toolkit in GitHub - Community contributions welcome!
Office add-in Patterns and Practices in GitHub - Community contributions welcome!
Microsoft Graph GitHub organization
OfficeDev GitHub organization - Includes all Microsoft Teams samples from Microsoft
\
What’s supportability story around the community tooling and assets?
Following statements apply across all of the community lead and contributed samples and solutions, including samples, core component(s) and solutions, like SharePoint Starter Kit, yo teams or PnP PowerShell. All Microsoft released SDKs and tools are supported based on the specific tool policies.
- PnP guidance and samples are created by Microsoft & by the Community
- PnP guidance and samples are maintained by Microsoft & community
- PnP uses supported and recommended techniques
- PnP is an open-source initiative by the community – people who work on the initiative for the benefit of others, have their normal day job as well
- PnP is NOT a product and therefore it’s not supported by Premier Support or other official support channels
- PnP is supported in similar ways as other open source projects done by Microsoft with support from the community by the community
- There are numerous partners that utilize PnP within their solutions for customers. Support for this is provided by the Partner. When PnP material is used in deployments, we recommend being clear with your customer/deployment owner on the support model Please see the specifics on the supportability on the tool, SDK or component repository or download page.
Microsoft 365 PnP team model
In April 2020 we announced our new Microsoft 365 PnP team model and grew the MVP team quite significantly. PnP model exists for having more efficient engagement between Microsoft engineering and community members. Let’s build things together. Your contributions and feedback is always welcome! During August, we also crew the team with 5 new members. PnP Team coordinates and leads the different open-source and community efforts we execute in the Microsoft 365 platform. We welcome all community members to get involved on the community and open-source efforts. Your input do matter!
- New Microsoft 365 Patterns and Practices (PnP) team members - February 2021
- New Microsoft 365 Patterns and Practices (PnP) team members - December 2020
- New Microsoft 365 Patterns and Practices (PnP) team members - August 2020 Got feedback, suggestions or ideas? - Please let us know. Everything we do in this program is for your benefit. Feedback and ideas are more than welcome so that we can adjust the process for benefitting you even more.
Area-specific updates
These are different areas which are closely involved on the community work across the PnP initiative. Some are lead and coordinated by engineering organizations, some are coordinated by the community and MVPs.
Microsoft Graph Toolkit
Microsoft Graph Toolkit is engineering lead initiative, which works closely with the community on the open-source areas. The Microsoft Graph Toolkit is a collection of reusable, framework-agnostic web components and helpers for accessing and working with Microsoft Graph. The components are fully functional right of out of the box, with built in providers that authenticate with and fetch data from Microsoft Graph.
- Latest version currently is 2.1. See the v2.1 announcement blog post for more details - Microsoft Graph Toolkit adds a new Electron Provider plus enhanced capabilities
- mgt.dev - Microsoft Graph Toolkit Playground
- Getting started with Microsoft Graph Toolkit guidance video from developer community call by Beth Pan (Microsoft)
- Latest code and preview versions from https://aka.ms/mgt All the latest updates on the Microsoft Graph Toolkit is being presented in our bi-weekly Microsoft 365 Generic Dev community call, including the latest community contributors.
Microsoft 365 Community docs
Community docs model was announced in the April 2020 and it’s great to see the interest for community to help each other by providing new guidance on the non-dev areas. See more on the announcement from the SharePoint blog - Announcing the Microsoft 365 Community Docs. We do welcome contributions from the community - our objective is to build a valuable location for articles from Microsoft and community together.
Latest updates on this area as follows:
New article by Simon Hudson and Simon Doy - Customization and Development Competency
Updated article by Callum Crowley (Method4) - Power Automate vs Logic Apps
Updated article by Callum Crowley (Method4) - Benefits of using PowerShell with SharePoint
Updates by Emily Mancini (Sympraxis Consulting) on the Maturity Model for Microsoft 365
Updates by Leon Armston (Intelogy) on the Follow Microsoft 365 on Social Media
Updates by Trevor Seward (Seattle Genetics) on Should everyone create Teams? A Low Code Provisioning solution
Updates by Callum Crowley (Method4) and Liam Cleary (SharePlicity) on Basic Security Set Up for Microsoft 365 Have ideas for articles or want to contribute yourself? - Get involved! Here are also some additional resources explaining the model more detailed.
YouTube - Introducing Microsoft 365 Community Docs
GitHub issue list with articles ideas
SharePoint Framework development samples
These are the updated SharePoint Framework samples which are available from the the different repositories.
- New sample react-image-editor by Peter Paul Kirschner (cubido business solutions GmbH) on having more advance image web part with editing experience model
- New sample react-teams-meeting-app-questionnaire by Nanddeep Nachan, Ravi Kulkarni and Smita Nachan on building Microsoft Teams meeting app for asking pre-meeting questions and collecting input from the meeting attendees
- New sample react-advanced-page-properties by Mike Homol (ThreeWill) on having additional metadata exposed and collection from a page level
- New sample react-video-banner by Mohamed Derhalli Use this Web Part to add a video banner with a text on top of it to your pages
- New sample react-doccard-faq by Sam Collins (Coupled Technology) as a custom FAQ Document Card Web Part
- Updates to react-calendar by Mohammed Amer (Atea Global Service) which is a custom web part to manage events in a calendar
- Updates to react-jump-to-folder by Joel Rodrigues (Storm Technology) which is an extension to facilitates navigation between large collections of SharePoint library folders
- Updates to react-questions-and-answers by Bo George (ThreeWill) which provides a dynamic question and answer experience
- Updates to react-staffdirectory by Ari Gunawan which shows current user’s colleagues, and allows the user to search AD directory
- Other to numerous SPFx web part and extension samples by our awesome community members! How to find what’s relevant for you? Take advantage of our SharePoint Framework web part and extension sample galleries - includes also solutions which work in Microsoft Teams
- Web Part sample gallery - https://aka.ms/spfx-webparts
- Extensions sample gallery - https://aka.ms/spfx-extensions
Microsoft Teams community samples
These are samples which have been contributed on the community samples since last summary. We do welcome all Microsoft Teams samples to this gallery. They can be implemented using in any technology.
- Numerous updates on the existing samples provided by community and Microsoft If you are interested on Microsoft Teams samples, we have just released also new Microsoft Teams sample gallery. Contributions to Microsoft Teams samples is also more than welcome. This gallery already surfaces all Microsoft samples, Microsoft Teams app templates and community samples.
Sharing is Caring initiative
The “Sharing Is Caring” imitative is targeted for learning the basics around making changes in Microsoft Docs, in GitHub, submitting pull requests to the PnP repositories and in GitHub in general. Take advantage of this instructor lead training for learning how to contribute to docs or to open-source solutions. Everyone is welcome to learn how to get started on contributing to open-source docs or code!
- See more from the guidance documentation - including all upcoming instructor lead sessions which you can participate!
Different Microsoft 365 related open-source initiatives build together with the community
See exact details on the latest updates from the specific open-source project release notes. You can also follow up on the project updates from our community calls. There are numerous active projects which are releasing new versions with the community even on weekly basis. Get involved!
- Microsoft Look Book - Discover the modern experiences you can build with SharePoint in Microsoft 365. Look book provides design examples for SharePoint Online which can be automatically provisioned to any tenant in the world. See more from https://lookbook.microsoft.com. This service is also provided as open-source solution sample from GitHub.
- yo teams - Open-source Yeoman generator for Microsoft Teams extensibility. Supports creation of bots, messaging extensions, tabs (with SSO), connectors and outgoing Webhooks. See more from https://aka.ms/yoteams.
- PnP Framework - .NET Standard 2.0 SDK containing the classic PnP Sites Core features for SharePoint Online. More around this package from GitHub.
- PnP Core SDK - The PnP Core SDK is an SDK designed to work for Microsoft 365 with Graph API first approach. It provides a unified object model for working with SharePoint Online and Teams which is agnostic to the underlying API’s being called. See more around the SDK from documentation.
- PnP PowerShell - PnP PowerShell is a .NET Core 3.1 / .NET Framework 4.6.1 based PowerShell Module providing over 400 cmdlets that work with Microsoft 365 environments and more specifically SharePoint Online and Microsoft Teams. See more details from documentation.
- Reusable SharePoint Framework controls - Reusable controls for SharePoint Framework web part and extension development. Separate projects for React content controls and Property Pane controls for web parts. These controls are using Office UI Fabric React controls under the covers and they are SharePoint aware to increase the productivity of developers.
- CLI for Microsoft 365 - Using the CLI for Microsoft 365, you can manage your Microsoft Office 365 tenant and SharePoint Framework projects on any platform. See release notes for the latest updates.
- PnPJs - PnPJs encapsulates SharePoint REST APIs and provides a fluent and easily usable interface for querying data from SharePoint sites. It’s a replacement of already deprecated pnp-js-core library. See changelog for the latest updates.
- PnP Provisioning Engine and PnP CSOM Core - PnP provisioning engine is part of the PnP CSOM extension. They encapsulate complex business driven operations behind easily usable API surface, which extends out-of-the-box CSOM NuGet packages. See changelog for the latest updates.
- PnP PowerShell - PnP PowerShell cmdlets are open-source complement for the SharePoint Online cmdlets. There are more than 300 different cmdlets to use and you can use them to manage tenant settings or to manipulate actual SharePoint sites. They See changelog for the latest updates.
- PnP Modern Search solution - The PnP ‘Modern Search’ solution is a set of SharePoint Online modern Web Parts allowing SharePoint super users, webmasters and developers to create highly flexible and personalized search based experiences in minutes. See more details on the different supported capabilities from https://aka.ms/pnp-search.
- Modernization tooling - All tools and guidance on helping you to transform you SharePoint to modern experiences from https://aka.ms/sppnp-modernize.
- SharePoint Starter Kit v2 - Building modern experiences with Microsoft Teams flavors for SharePoint Online and SharePoint 2019 - reference solution in GitHub.
- List formatting definitions - Community contributed samples around the column and view formatting in GitHub.
- Site Designs and Site Scripts - Community contributed samples around SharePoint Site Designs and Site Scripts in GitHub.
- **DevOps tooling and scripts **- Community contributed scripts and tooling automation around DevOps topics (CI/CD) in GitHub.
- Teams provisioning solution - Set of open-source Azure Functions for Microsoft Teams provisioning. See more details from GitHub.
Documentation updates
Please see all the Microsoft 365 development documentation updates from the related documentation sets and repositories as listed below:
- Microsoft Teams platform documentation - Microsoft Docs | GitHub
- SharePoint Developer documentation - Microsoft Docs | GitHub
- Microsoft Graph documentation - Microsoft Docs | GitHub
- Office add-in documentation - Microsoft Docs | GitHub
Microsoft 365 Dev and Microsoft 365 Community (PnP) YouTube video channels
You can find all Microsoft 365 related videos on our YouTube Channel at https://aka.ms/m365pnp-videos or at Microsoft 365 Dev. These channels contains already a significant amount of detailed training material, demo videos, and community call recordings. Here are the new Microsoft demo or guidance videos released since the last monthly summary:
- Use SharePoint pages to support on-demand training - Mark Kashman (Microsoft) | @mkashman
- Building extension to save documents as PDF in tenant document libraries - Mikael Svenson (Microsoft) | @MikaelSvenson
- Jeff Teper’s Beatles-inspired "SharePoint at 20" birthday singalong 🎂🎸 - Jeff Teper (Microsoft) | @jeffteper
- “Happy Birthday, SharePoint” 🎂: 20 years young - Microsoft
- SharePoint at 20 🎂 - Microsoft
- Getting started with Microsoft Viva Topics - Naomi Moneypenny (Microsoft) | @nmoneypenny
- Azure Communication Services - Voice Calling Quick Start - Dan Wahlin (Microsoft) | @danwahlin
- Building a list view command set to demote previously promoted news articles from pages library - Mikael Svenson (Microsoft) | @MikaelSvenson
- Using Kiota to generate a TypeScript SDK for Microsoft Graph - Vincent Biret (Microsoft) | @baywet
- Building an application using Microsoft Graph Toolkit and Electron provider - Amrutha Srinivasan (Microsoft) | @amruthasrin
- Microsoft Graph Fundamentals on Microsoft Learn - Dan Wahlin (Microsoft) | @DanWahlin
- Business to Citizen Consumer Communication Bot - Sathya Raveendran (Microsoft), Arun Kumar Anaparthi (Microsoft)
- Bot Composer in Microsoft Teams - Bob German (Microsoft) | @Bob1German
- UX changes for Outlook add-ins on the web - Hitesh Manwar (Microsoft)
- Excel JS API v1.13 updates - Raymond Lu (Microsoft)
- PowerPoint ribbon updates - Lillian Liu (Microsoft)
- Getting started with Power Apps ALM - Phil Topness (Microsoft) | @topness, Mike Ochs (Exalents) | @mikefactorial & Marc Scgweigert (Microsoft) | @devkeyde
- Utilizing Mobile First Device Capabilities for Microsoft Teams Apps - Anuj Bahl (Microsoft) & Shubham Chauhan (Microsoft)
- Deep dive into Universal Actions for Microsoft Teams and Outlook - Shiladitya Saha (Microsoft) & Karan Thapar (Microsoft)
- Office Scripts Tutorial: Scripting for Beginners - Ayushi Garg (Microsoft) | @Ayushi_at_msft Community demos as following:
- PnP Watch Party - Building Apps with Microsoft Graph - Learn Together - David Warne (Catapult)
- Sending messages to Microsoft Teams using Microsoft Graph from SharePoint Framework solution - David Ramalho (Storm Technology) | @davRamalho
- The Microsoft Graph Toolkit in Microsoft Teams with Blazor - Thomy Gölles (Solvion) | @thomyg
- Accessing comment information in list formatting and advance form adjustments - Chris Kent (DMI) | @theChrisKent
- Getting started on using Microsoft Teams Yeoman generator v3 - Wictor Wilén (Avanade) | @wictor
- Using a web part to control which Sites have been grated permissions in Azure AD application - Fredrik Thorild (Sogeti) | @taxonomythorild
- Building List Search web part for showing data flexibly from lists or libraries - Alberto Gutierrez Perez (Minsait) | @albertogperez
- DataTable web part for rendering data from lists with advance features - Chandani Prajapati | @Chandani_SPD & David Warner (Catapult) | @DavidWarnerII
- Exporting SharePoint site structures/documentation to Markdown - Kevin McDonnell (CPS) | @kevmcdonk
- New SP Editor chrome extension with Microsoft Graph Toolkit React playground - Tomi Tavela (RND Works) | @tavikukko
- List formatting fundamentals - options and considerations - Chris Kent (DMI) | @theChrisKent
- Add Folder Command Extension for easy doc library structure management - Michaël Maillot (onepoint) | @michael_maillot
- Using reusable chart controls to present business data in a web part - Hugo Bernier (Tahoe Ninjas) | @bernierh
- Creating a responsive Power App running Dataverse in Teams - Reza Dorrani (Catapult) | @RezaDorran
- Automating metadata tagging with AI using Power Automate - Uday Adhikari | @udayadhikari PnP Weekly sessions - Community visitors and latest articles from Microsoft and community on Microsoft 365 topics.
- Microsoft 365 PnP Weekly - Episode 120 - Mark Rackley (PAIT Group)
- Microsoft 365 PnP Weekly - Episode 121 - Nik Charlebois (Microsoft)
- Microsoft 365 PnP Weekly - Episode 120 - Paolo Pialorsi (PiaSys)
- Microsoft 365 PnP Weekly - Episode 119 - Chris O’Brien (Content+Cloud)
- Microsoft 365 PnP Weekly - Episode 118 - Veronique Lengelle (CPS)
- Microsoft 365 PnP Weekly - Episode 117 - Bert Jansen (Microsoft)
Key contributors to the April 2021 update
Here’s the list of active contributors (in alphabetical order) since last release details in GitHub repositories or community channels. PnP is really about building tooling and knowledge together with the community for the community, so your contributions are highly valued across the Microsoft 365 customers, partners and obviously also at Microsoft. Thank you for your assistance and contributions on behalf of the community. You are truly making a difference! If we missed someone, please let us know.
Abderahman Moujahid - Abderahman88
Adam - Adam-it
Agustin Del Vento (Change Champions Consulting Inc.)
Aimery Thomas - @aimery_thomas
Albert-Jan Schot (Portiva) - @appieschot
Alberto Gutierrez (Minsait) - @albertogperez
Alex Grover - groveale
Alex Terentiev (SharePointalist) - @alexaterentiev
Alexander Ernon (Amplexor) - alex-ernon
Alikont - Alikont
Andres Ibarra (CloudIgnite) - @Riftsan{.Link–primary}
Andrew Benson (InElec) - @ViewPorter
Andrew Burns (AmSty) - @SharePointRox
Andrew Connell (Voitanos) - @andrewconnell
Andrew Koltyakov (ARVO Systems) - @andrewkoltyakov
Andy Boylan (AdEPT Technology Group) - apboylan
Andy Dawson (Black Marble) - @W4050
Anoop Tatti (Content+Cloud) - @anooptells
April Watson (Wood Plc) - AprilWatson
Arjun Menon (Mindtree) - @arjunumenon
Ari Gunawan (DevStack) - @kuboconcept
Axel Raeves (Spikes) - @axelraeves
Beau Cameron (Aerie Consulting) - @Beau__Cameron
Bo George (ThreeWill) - @bo_george
Bill Ayers (Flow Simulation Ltd) - @SPDoctor
Bill Brockbank (ATGS Canada) - billbrockbank
Callum Crowley (Method4) - @CallumNCrowley
Carlos Infante - carlhanz17
Chandani Prajapati - @Chandani_SPD
Chandra Sekhar Malla - @OfficialartistC
Charles Ndiaye (Netexio) - @manusquall
Chris Kent (DMI) - @theChrisKent
Chris O’Brien (Content+Cloud) - @ChrisO_Brien
Christian Zuellig (Monday Coffee) – @ChristianZuell1
Christine Green (EBSCO Information Services) - @cacurtica
Copowell - Copowell
Cristian Civera - @CristianCivera
Dale Pilarczyk (Centric Consulting) - DalePilarczyk
Dan Bennett - @nonodename
Django Lohn (InSpark) - @lohndjango
Daniel Tshin (UNDP) - @dtshin
Daniel Westerdale (Westerdale Solutions Ltd) - @westerdaled
Darren Brown (Node4)
David Gent - dgtheninja
David Ramalho (Storm Technology) - @DavRamalho
David Warner II (Catapult) - @DavidWarnerII
Dean Gross (Insight) - @dean144
Dipen Shah (Stridely Solutions) - @Dips_365
Dinesh Bhat (Cognizant) - techbvdinesh
Divya Akula (Tarento Technologies) - @_divyaakula
Don Kirkham (Probitas Data Solutions) - @DonKirkham
Elio Struyf (Struyf Consulting) - @eliostruyf
Eloisa Marquez-Gonzalez (Evolution Consulting Group) - @EvolveWithECG
Emily Mancini (Sympraxis Consulting) - @EEMancini
Eric Overfield (PixelMill) - @EricOverfield
Erwin van Hunen (Valo Intranet) - @erwinvanhunen
Franck Catinot (Abalon Consulting) - fcatinot
Frank Cornu (aequos) - @FranckCornu
Frank Costa (West Monroe)
Fredrik Thorild (Sogeti Sweden) - @taxonomythorild
Ganesh Sanap - @ganeshsanap20
Garry Trinder (CPS) - @garrytrinder
Gautam Sheth (Valo Intranet) - @gautamdsheth
Gissur Simonarson (Fujitsu) - @gissisim
gszdev - gszdev
Giacomo Pozzoni (DQC Sverige Ab) - @PozzoniGiacomo
Harlan Koehn (Village Media) - harlankoehn
Harminder Singh - @Harminder_Sethi
Harold Wolfinger
Hiroaki Nagao - @mofumofu_dance
Igor Karon (Clean Energy) - IgorKaron
James Fisher - jamesfisher1081
Jarbas Horst (Valo Intranet) - @devjhorst
Jason Rivera (Anexinet) - @sharepointjr
João Mendes - @joaojmendes
Joanne Klein (NexNovus Consulting) - @JoanneCKlein
Joel Rodrigues (Storm Technology) - @JoelFMRodrigues
John VanDaele - oxyd5000
Joseph Velliah - @JosephVelliah
Joy Muehlenbein (Edwards Lifesciences) - @huh_larious
Julie Batista (Smarter Consulting LLC) - @JulieB365
Julie Turner (Sympraxis Consulting) - @jfj1997
Kanakarajulu Thota (Atos GITSS) - @KanakarajuNaidu
Kanwal Khipple (2toLead) - @kkhipple
Kathleen Boilek (Alaka’Ina Foundation) - @kaboilek
Kerry Lambert (NI) - @kazoogal23
Kevin McDonnell (CPS) | @kevmcdonk
Kinga - kkazala
Konradox - Konradox
koruneko - koruneko
xKrutika Brahmbhatt - krutikabrahmbhatt
Krzysztof Mikołajec (Krzysztof Mikolajec Consulting, Sii Pl) - @krzymiko
Kunal Patil (Burns & McDonnell) - krazykap
Laura Kokkarinen (Sulava) - @LauraKokkarinen
Lee Ford (Symity Ltd) - @lee_ford
Leon Armston (Intelogy Ltd) - @LeonArmston
Liam Cleary (SharePlicity) - @helloitsliam
Lindsay Shelton (Smarter Consulting) - @lshelton_tech
Luis Mañes (ClearPeople) - @luismanez
Luise Freese (Luise Freese M365 Princess) - @LuiseFreese
Manjunath Puttaswamy (Momentive Performance Material India Pvt Ltd) - @ManjunathPutta3
Marc D Anderson (Sympraxis Consulting) - @sympmarc
Marcin Wojciechowski (Valo Intranet) - @mgwojciech
Mark Rackley (PAIT Group) - @mrackley
Matthew Devaney - @mattbdevaney
Matt Carter (Valorem Reply) - @cartmatt
Miguel Tena (2toLEad) - @mikeware_tena
Mike Duffy (Boardwalk Pipelines) - @mike_duffy
Mike Homol (ThreeWill) - @homol
Mike Ochs (Exalents) | @MikeFactorial
Michael Kriese (VisualOn GmbH) - viceice
Michaël Maillot (onepoint) - @michael_maillot
Mohammad Amer (Atea Global Service) - @Mohammad3mer
Mohamed Derhalli - derhallim
Nanddeep Nachan – @NanddeepNachan
Naveed Mohammad (Cognizant) - naveed243
Neil Sreenan (HKS Inc.) - @nsreenanhks
Nizar Grindi (Avanade) - @nizar_grindi
Paolo Pialorsi (PiaSys.com) - @PaoloPia
Patrick Galloway - BammaSlim
Patrik Hellgren (Sherpas Group) - @patrikhellgren
Patrick Lamber (Expertsinside AG) - @patricklamber
Patrick Tucker (KiZAN) - @Tuckersnet
Paul Bullock (CaPa Creative Ltd) - @pkbullock
Paul Schaeflein (AddIn365) - @paulschaeflein
Pete Bostrom (Bakkavor) - @petebostrom
Peter Paul Kirschner (cubido business solutions GmbH) - @petkir_at{.Link–primary}
Phil Broadbery (PKF) - @peb71b
Ravi Kulkarni (Cognizant) - @RaviKul16a87
Ravichandran Krishnasamy (Content Formula) - @spfx_blog
Reza Dorrani (Catapult) | @RezaDorran
Rohit S Patil (C3it)
Ron Jones (Organogenesis)
Russell Gove - russgove
Sam Collins (Coupled Technology) - @samc148
Sarah Wilson (Orchestry) - Sarah4x
Seb Matthews (ProvisionPoint Ltd) - @sebmatthews
Sergei Sergeev (Mastaq) - @sergeev_srg
Shiva Bezwada (JCS Solutions LLC) - @Texaport
Simon Doy (iThink 365) - @simondoy
Simon Hudson (Cloud2) - @simonjhudson
Smita Nachan - @smitanachan
Spencer Harbar (Triumph Media Limited) - @harbars
Stefan Bauer (n8d) - @StfBauer
Steve Babulski (Progressive Insurance) - @sbabulski
Sudharsan Kesavanarayanan (NTT Digital Business Solutions) - @sudharsank{.Link–primary}
Suzanne Kozina (Roberts Technology Solutions) - suzannekozina
Tetsuya Kawahara - @techsn_k
Thomy Gölles (Solvion) | @thomyg
Todd Baginski (Canviz) - @toddbaginski
Tomi Tavela (RND Works) - @tavikukko
Uday Adhikari | @udayadhikar
Wictor Wilen (Avanade) - @wictor
Will Holland (ThreeWill) - @_WCHolland
Velin Georgiev (Pramerica) – @velingeorgiev
Veronique Lengelle (CPS) - @veronicageek
Vincent Georges (Microsoft) - VincentGeorges
Yannick Plenevaux (PVX Solutions) - @yp_code
Yannick Reekmans (Qubix) - @YannickReekmans
Yücel Tasyol (Agile-IS GmbH) - ytasyol
Yves Habersaat (Sword Group) - @yhabersaat
Zach Bean (Charles River Laboratories) Companies: Here’s the companies, which provided support for PnP initiative for this month by allowing their employees working for the benefit of others in the community. There were also people who contributed from other companies during last month, but we did not get their logos and approval to show them in time for these communications. If you still want your logo for this month’s release, please let us know and share the logo with us. Thx.Microsoft people: Here’s the list of Microsoft people who have been closely involved with the PnP work during last month.
Aakash Bhardwaj - @aakash_316
Allen Snow - @asnow003
April Dunnam - @aprildunnam
Amrutha Srinivasan | @amruthasrin
Arun Kumar Anaparthi - arun-msft
Ayushi Garg | @ayushi_at_msft
Ayca Bas - @aycabs
Bert Jansen - @O365Bert
Beth Pan - @beth_panx
Bob German - @Bob1German
Brad Schlintz - @bschlintz
Callum Crowley - @CallumNCrowley
Chakkaradeep (Chaks) CC - @chakkaradeep
Charles Sterling - @chass
Dan Wahlin - @DanWahlin
David Chesnut - davidchesnut
Doğan Erişen - derisen
Elise Yang - @elisenyang
Hugo Bernier - bernierh
Jason Johnston - jasonjoh
Jeremy Kelley - @Fizzlenik
Joanne Hendrickson - JoanneHendrickson
John Nguyen - johnguy0
John Sudds - jsuddsjr
Karthig Balendran - @KarthigBalendr1
Kevin Coughlin - @kevintcoughlin
Kiran Thomas - @notkiran
Koen Zomers - @koenzomers
Laura Graham - Lauragra
Linda Lu Cannon - lindalu-MSFT
Loki Meyburg - @lokimeyburg
Luca Bandinelli - lucaband
Marc Mroz - @marcmroz
Marc Scgweigert - @devkeydet
Matt Wolodarsky - @mwolodarsky
Melissa Torres - @Meltorac
Miceile Barrett (Microsoft) - @MSFTMiceile
Mikael Svenson - @mikaelsvenson
Nik Charlebois - @NikCharlebois
Nick Kramer - nkramer
Nicolas Vogt - vogtn
Nidhi Sharma - @nidsonbirdie
Nikola Metulev - @metulev
Pam Green (Microsoft) - @contextuallib
Pat Miller - @PatMill_MSFT
Patrick Rodgers - @mediocrebowler
Phil Topness - @topness
Philippe Signoret - @psignoret
Rabia Williams - @williamsrabia
Rob Garrett - robgarrett
Sam Larson - salarson
Shreyansh Agrawal - shagra-ms
Saikrishna-MSFT - Saikrishna-MSFT
Shane Weaver - shweaver-MSFT
Sébastien Levert - @sebastienlevert
Steven Jia - Steven-Jia
Tomomi Imura - @girlie_mac
Vesa Juvonen - @vesajuvonen
Waldek Mastykarz - @waldekm
Vincent Biret - @baywet
Westley - westleyMS
PnP Team
PnP Team manages the PnP community work in the GitHub and also coordinates different open-source projects around Microsoft 365 topics. PnP Team members have a significant impact on driving adoption of Microsoft 365 topics. They have shown their commitment to the open-source and community-driven work by constantly contributing to the benefit of the others in the community. Thank you for all that you do!
- Albert-Jan Schot (Portiva) - @appieschot
- Alex Terentiev (SharePointalist) - @alexaterentiev
- Andrew Connell (Voitanos) – @andrewconnell
- Andrew Koltyakov (ARVO Systems) – @andrewkoltyakov
- Beau Cameron (Aerie Consulting) - @Beau__Cameron
- Chris Kent (DMI) – @theChrisKent
- David Warner II (Catapult) - @DavidWarnerII
- Elio Struyf (Struyf Consulting) – @eliostruyf
- Emily Mancini (Sympraxis Consulting) - @EEMancini
- Eric Overfield (PixelMill) - @EricOverfield
- Erwin van Hunen (Valo Intranet) – @erwinvanhunen
- Frank Cornu (aequos) - @FranckCornu
- Garry Trinder (CPS Solutions) - @garrytrinder
- Julie Turner (Sympraxis Consulting) - @jfj1997
- Laura Kokkarinen (Sulava) - @LauraKokkarinen
- Luise Freese - @LuiseFreese
- Marc D Anderson (Sympraxis Consulting) - @sympmarc
- Paolo Pialorsi (Piasys.com) – @PaoloPia
- Paul Bullock (CaPa Creative Ltd) - @pkbullock
- Rabia Williams (Engage Squared) - @williamsrabia
- Stefan Bauer (n8d) – @StfBauer
- Velin Georgiev (Pramerica) – @velingeorgiev
- Veronique Lengelle (CPS) - @veronicageek
- Wictor Wilen (Avanade) - @wictor
- Yannick Plenevaux (PVX Solutions) - @yp_code Here are the Microsoft Internal PnP Core team members:
- April Dunnam - @aprildunnam
- Bert Jansen – @O365Bert
- Bob German - @Bob1German
- Hugo Bernier - @bernierh
- Koen Zomers - @koenzomers
- Mikael Svenson – @mikaelsvenson
- Patrick Rodgers – @mediocrebowler
- Rabia Williams - @williamsrabia
- Sébastien Levert - @sebastienlevert
- Vesa Juvonen – @vesajuvonen
- Waldek Mastykarz – @waldekm
Next steps
See all of the available community calls, tools, components and other assets from https://aka.ms/m365pnp. Get involved! Got ideas or feedback on the topics to cover, additional partnerships, product feature capabilities? - let us know. Your input is important for us, so that we can support your journey in Microsoft 365. “Sharing is caring”
Microsoft 365 Community (PnP) – April 13th 2021