Edit

SharePoint community open-source projects

The Microsoft 365 & Power Platform Community includes open-source libraries, tools, controls, and samples for SharePoint development. This article highlights current projects and distinguishes them from archived or historical resources. See the repository catalog for source repositories and sample collections.

Active community libraries and tools

Project Purpose
PnP Core SDK A .NET SDK with a unified object model for SharePoint Online and Teams.
PnP Framework A .NET library for SharePoint Online that includes the PnP provisioning engine and CSOM extensions. The successor to PnP Sites Core.
PnP PowerShell Cross-platform PowerShell cmdlets for Microsoft 365 administration and automation. See the project documentation for supported workloads and authentication requirements.
PnPjs Fluent JavaScript libraries for working with SharePoint and Microsoft Graph APIs.
CLI for Microsoft 365 A community CLI for Microsoft 365 administration, automation, and SPFx project management.
SPFx reusable React controls React controls for use in SharePoint Framework solutions.
SPFx reusable property pane controls Property pane controls for SharePoint Framework web parts.

Use each project's documentation to select a compatible version. An active repository doesn't mean that every sample or package version supports SPFx 1.24 or your target SharePoint environment.

Scaffolding tools

  • SharePoint Framework CLI and templates is Microsoft's open-source SPFx scaffolding project. Its release status and template versions are separate from the SPFx runtime release; see the repository and SPFx CLI documentation for current guidance.
  • PnP SPFx Yeoman generator is a community extension to the Microsoft Yeoman generator. It isn't the official SPFx CLI. Check its documented SPFx and toolchain requirements before use.

The CLI for Microsoft 365 listed above is a separate community tool, not another name for the official SPFx CLI.

Solution and provisioning references

These repositories contain broader solutions or historical tooling. Check their README files and dependencies before reusing them; an unarchived repository alone isn't a compatibility or maintenance guarantee.

Repository Scope and considerations
SharePoint Starter Kit A collection of SharePoint extensibility examples. Check the selected version's prerequisites; older branches have separate maintenance status.
SharePoint provisioning templates Templates previously used by the SharePoint Look Book provisioning service. Their availability doesn't imply that the service is available.
SharePoint modernization Legacy modernization tools and scripts. For new assessment work, see Assess SharePoint modernization.

Archived projects

These repositories are archived and aren't starting points for new projects.

Archived repository Current direction
PnP Sites Core Use PnP Framework for its SharePoint Online provisioning and CSOM extensions. Review the differences in supported environments rather than assuming a drop-in replacement for on-premises solutions.
Legacy PnP-PowerShell Move to the current PnP PowerShell project and review its installation, authentication, and migration guidance.
PnP-JS-Core Use PnPjs. Review API and version changes before migrating.
Visual Studio extension for SPFx Historical Visual Studio 2015/2017 integration. Follow the current SPFx development environment setup instead.
PnP provisioning schema Archived schema repository. For provisioning engine usage, start with the current PnP Framework documentation.

Supportability of open-source projects

PnP projects are community-provided, not Microsoft product offerings. Follow each repository's support guidance and license. Report a library, control, or sample defect to its owning repository; don't assume a Microsoft support agreement covers community code.

A defect in an underlying supported Microsoft service has its own product support route. See Support and feedback to distinguish product bugs, documentation issues, how-to questions, and community-project defects.