Who and Where can the SharePoint Framework (SPFx) be used?
When evaluating the SharePoint Framework, you need to determine not just what you can do, but if your SharePoint environment supports specific customizations and where you can apply those customizations. In this post, learn not only what versions of SharePoint support which SharePoint Framework customizations, but where these customizations can be applied to the page.
by Andrew Connell
Last updated September 21, 2024
Who can use the SharePoint Framework?
The SharePoint Framework (SPFx) was released in February 2017 to SharePoint Online.
SharePoint Online: all versions
Ever since then, each release of the SPFx is deployed to SharePoint Online. This means that regardless of the SPFx version your component is created with, it will work in SharePoint Online.
SharePoint Server 2016: SPFx v1.1
Initially the SPFx wasn’t available outside of SharePoint Online. In late 2017, Microsoft shipped Feature Pack 2 (FP2) for SharePoint Server 2016. FP2 included the SharePoint Framework v1.1.
Due to the nature of SPFx being primarily a cloud-first extensibility model for SharePoint Online, the SharePoint Server 2016 implementation of SPFx has not received any updates beyond v1.1, nor has Microsoft stated any future plans to update it.
SharePoint Server 2019: SPFx v1.4.1
When Microsoft shipped SharePoint Server 2019 in September 2018, they included the SPFx v1.4.1.
Just like SharePoint Server 2016, Microsoft has not shipped any updates to the SPFx for SharePoint Server 2019, nor have they stated any future plans to update it.
In summary, the answer to the question “who can use the SharePoint Framework”, it is customers who have the following SharePoint environments:
- SharePoint Online (all SPFx versions)
- SharePoint Server 2019 (SPFx v1.4.1)
- SharePoint Server 2016 with Feature Pack 2 (SPFx v1.1.0)
Where can the SharePoint Framework be used?
Now let’s answer the question where can you use SPFx. For this, I’m going to focus on the capabilities in the SPFx as far as where they can be used. Some features are only available in specific user experiences (classic vs. modern) while others are only available in a hosted environment vs. on-premises SharePoint installations.
SharePoint Online (modern experience) supports everything
The SPFx was built as the preferred way to customize the modern experience in SharePoint. This means that everything the SPFx has to offer will work within modern experience, including client-side web parts & extensions.
SPFx Extensions: SharePoint Online & SharePoint Server 2019 (modern only)
However, the classic experience in SharePoint Online only supports client-side web parts; SPFx extensions are not supported & don’t work in the SharePoint classic experience.
SPFx Web Parts available everywhere
SPFx client-side web parts are available in all supported versions of SharePoint previously mentioned as well as in both the classic and modern experiences.
Features exclusively available to SharePoint Online
Some features in the SPFx are only available within SharePoint Online due to their cloud-nature. This includes the following features that are only available within SharePoint Online:
- Tenant-wide deployment
- Search extensions
- Microsoft Graph API support (MSGraphClientFactory & MSGraphClient)
- Microsoft Entra ID-secured endpoint support (AADHttpClientFactory & AadHttpClient)
SharePoint page customization areas
In this post, I explained how Microsoft established a contract with developers for which parts of a page could be customized or modified. These modifications shouldn’t be done using the DOM, rather they should use the API provided to developers.
Customization areas enabled by the SharePoint Framework
- Top placeholder from an application customizer SPFx extension.
- Bottom placeholder from an application customizer SPFx extension.
- Client-side web part.
- Property pane with the associated client-side web part.
Customization areas enabled by the SharePoint Framework's UI Extensions
- Command set extensions allow developers to add buttons to the toolbars in lists and libraries.
- Using command set extensions to add menu items to the context menu of items within lists and libraries.
- Field customizer extension can be used to control how a cell is rendered for all items in this list.
Conclusion
My goal in this post was to answer the question Who & Where can the SharePoint Framework be used? By now you should have a good grasp on what SPFx components are available to developers to customize SharePoint, what versions of SharePoint support those customizations, and where these customizations can be applied.