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:
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.
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.
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
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 \
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
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!
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 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.
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.
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
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-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
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 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:
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.
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.
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!
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”