BLOG > ARTICLE

SharePoint Framework webinar Q&A follow-up. Part 3 – SharePoint Framework Developer Tooling

5 min read

SharePointFramework

Can you use the same SharePoint Framework solution both on-line and on-premises? Can you build SharePoint Framework solutions without Internet access? Do I need to switch to Visual Studio Code rather than using Visual Studio?

SharePoint Framework ask-me-anything

Recently we had the pleasure of hosting two webinars introducing the SharePoint Framework – a new model for building SharePoint customizations. Bill Baer and Vesa Juvonen from the Microsoft SharePoint Product Group presented the vision behind the SharePoint Framework and how it will help organizations build modern SharePoint solutions.

SharePoint Framework Developer Tooling

Recordings and presentations from both webinars are available online at

During the webinars you asked Bill and Vesa over 200 questions! While they couldn’t answer all of them during the webinar, we promised you to follow up on them. Following is the first set of questions related to the SharePoint Framework and Bill’s and Vesa’s answers. In this articles series we will share more questions and answers on the topics:

Webinar Q&A: SharePoint Framework Developer Tooling

Q3.1 Can the same SharePoint Framework solution be used with SharePoint Online and on-premises?

Generally speaking the same Web Part should work both in SharePoint Online and on-premises. As the SharePoint Framework evolves and new capabilities are added to it, the support for the particular capability will depend on the patch level of the particular tenant hosted on-premises.

Q3.2 Does the SharePoint Framework require the app infrastructure (App Catalog, wildcard DNS subdomain) to work properly?

SharePoint Framework does require app catalog for the deployment, but does not take advantage of the app/add-in web, which means that there’s no requirements for the wildcard DNS domain.

Q3.3 Are there modern libraries available to simplify communication with SharePoint or must we use the JavaScript Object Model?

The SharePoint Patterns & Practices team has started a community initiative to build a modern library for communicating with SharePoint for use with SharePoint Framework and other client-side SharePoint solutions. More information about the library is available on GitHub athttps://github.com/OfficeDev/PnP-JS-Core.

Q3.4 Is it possible to call PowerShell from Gulp?

While it is possible to call PowerShell from Gulp you should keep in mind, that while Gulp works on every platform, PowerShell might not. Should you have other developers in your team working on a non-Windows operating system, referencing PowerShell could break their development experience. Gulp offers many plugins for different purposes and you should be able to accomplish everything you would do with PowerShell.

To learn more about extending the SharePoint Framework build pipeline see https://rencore.com/blog/extending-sharepoint-framework-build-process-custom-tasks/.

Q3.5 How can developers on closed networks work with the SharePoint Framework without the ability to install node packages from the Internet?

The SharePoint Framework toolchain depends on Internet connectivity but only for scaffolding new projects. In cases where the developers don’t have access to the Internet, you could store the dependencies locally and copy them to your project. The engineering team is currently researching the ability to scaffold new SharePoint Framework projects without installing dependencies which would further simplify developing SharePoint Framework solutions in off-line scenarios.

Q3.6 What is the end-result of building a SharePoint Framework project?

After building a SharePoint Framework project you get an .spapp file that contains the manifest of all Web Parts in that project and which should be deployed to your SharePoint tenant, and JavaScript files that contain optimized Web Part source code. These files can be hosted on a CDN or any other location accessible to users who will be working with these Web Parts.

To learn more about the different pieces of a SharePoint Framework project see https://rencore.com/blog/deploy-vs-dist-vs-lib-sharepoint-framework-build-folders/.

Q3.7 Scaffolding new projects using the SharePoint Framework Yeoman generator takes long. Can we expect some improvements in that area?

With the latest release of the SharePoint Framework the engineering team has already improved the process of scaffolding new SharePoint Framework projects. At the moment the engineering team is researching some other possibilities to improve the process of scaffolding new projects even further. For more information and the current status of this topic follow the issues in the GitHub repository at https://github.com/SharePoint/sp-dev-docs.

Q3.8 Is it possible to develop on the SharePoint Framework using Visual Studio Community?

You can use any editor or IDE to build solutions on the SharePoint Framework. The support for the specific capabilities offered in the particular editor or IDE vary per case.

Q3.9 Is it safe for a large organization to use Node.js from the security point of view?

SharePoint Framework uses Node.js only for development-time tooling. Node.js is not used in production. All of the tooling used by the SharePoint Framework is open-source and organizations are free to review it if they have specific concerns.

Q3.10 Can we use custom Webpack loaders with the SharePoint Framework?

Currently webpack.config is generated dynamically during the build process and cannot be altered by us. The engineering team is looking into ways to provide us with some flexibility with using Webpack. We should see more information in this area in the future. If you have specific issues or requirements submit them as an issue in the SharePoint Framework GitHub repo at https://github.com/SharePoint/sp-dev-docs.

Q3.11 How can you interact with SharePoint Lists when you’re developing locally?

When building SharePoint Framework solutions locally, developers can use the SharePoint Workbench to preview their Web Part. SharePoint Framework provides developers with the information about the environment that is currently being used (ie. Workbench vs. live website) and using that information developers can choose to load data from a real list or to use mock data.

Q3.12 I’m currently using Visual Studio Enterprise. Shall I keep using it for the SharePoint Framework or shall I be using Visual Studio Code instead?

The tooling provided with the developer preview of the SharePoint Framework represents the first step towards supporting enterprise developers in working with the SharePoint Framework. The engineering team is currently investigating ways to make better use of Visual Studio and help enterprise developers be more productive when building solutions on the SharePoint Framework.

Q3.13 Which JavaScript frameworks are recommended to use when building SharePoint Framework solutions?

While at this moment the SharePoint Framework Yeoman generator allows for scaffolding Client-Side Web Parts using React or Knockout you can use any JavaScript framework and there is no particular recommendation for which framework you should be using. Different frameworks excel in different scenarios and you are free to choose which one meets your needs the best.

Q3.14 Is it possible to extend the standard build pipeline with other tooling that my organization is using?

SharePoint Framework uses a Gulp-based task system for its build pipeline that can be extended with additional tasks. The engineering team is working on documentation describing how to include additional tasks to the standard SharePoint Framework build process and more information about this should be available in the near future.

To learn more about extending the SharePoint Framework build pipeline see https://rencore.com/blog/extending-sharepoint-framework-build-process-custom-tasks/.

Q3.15 Is it necessary to learn Node, Yeoman, Gulp, Webpack and TypeScript to work with the new SharePoint Framework?

SharePoint Framework uses open-source toolchain that works the same way across the different operating systems. While it’s not necessary for you to have extensive knowledge of the tools used by the SharePoint Framework, having a basic understanding will help you be more productive when building solutions on the SharePoint Framework.

To learn more about the skills and technology you should learn to get the most out of SharePoint Framework see /blog/learn-prepare-developing-solutions-sharepoint-framework/.

Q3.16 Visual Studio not being deprecated – that is great news!

Enterprise developers play important role in the SharePoint ecosystem. While at the moment the toolchain used by the SharePoint Framework is based on open-source tooling, enterprise developers can expect better integration with Visual Studio in the future.

Q3.17 Does Workbench simulate SharePoint?

SharePoint Workbench helps developers test their Web Parts on their development machines. While Workbench provides mock information about the context it doesn’t simulate SharePoint and it doesn’t for example offer access to SharePoint APIs or lists. While in the Workbench developers can work with mock data. After deploying the Web Part to SharePoint developers can test the Web Part against SharePoint APIs and lists.

More answers coming soon

In the next article we will share more of Bill’s and Vesa’s answers, this time related to SharePoint Framework-specific guidance. Meanwhile, if you have any more questions related to SharePoint Framework Developer Tooling, please don’t hesitate to ask using the comments and we will try to get you an answer.

Waldek Mastykarz

Waldek is a Microsoft Office Development MVP and Head of Product at Rencore. He reinforces our product development adding loads of business experience from working as a SharePoint consultant for more than 10 years. Waldek is passionate about what he does and shares his enthusiasm through his blog and as a regular speaker at conferences and community events all over Europe. Recently, Waldek joined the SharePoint Patterns and Practices (PnP) Core Team to help developers make better use of the SharePoint and Office 365 platforms.