Course Overview

Modern SharePoint and Office 365 Development is an intensive four-day training course designed to teach professional developers and architects how to create custom solutions for SharePoint Online and Office 365 using modern developer tools and today’s best practice techniques. This course provides deep coverage of the SharePoint Framework, but it first spends the time to teach the prerequisites including TypeScript, Node.js, NPM, Gulp, Webpack, Visual Studio Code and the ever-popular React.js library. This course is well suited for experienced SharePoint developers looking to move beyond legacy development models such as SharePoint Farm Solutions and SharePoint Add-ins.

In addition to learning to develop with the SharePoint Framework, this course teaches students how to secure custom applications with Azure Active Directory and how to write code to authenticate users, acquire access tokens and execute authorized web service calls against commonly-used Microsoft APIs including the SharePoint Rest API, the Microsoft Graph API and the Power BI Service API.

Key Learning Areas

  • Understanding SharePoint Development Strategies
  • Programming the Client-side Object Model (CSOM)
  • Understanding Azure as a Development Platform
  • Using Azure to create Web Apps and SQL Databases
  • Developing with TypeScript and Interfaces
  • Developing Client-side with Strongly-typed Programming
  • Introduction to Node.JS and NPM
  • Installing and Updating Packages in Visual Studio Code
  • Adding TypeScript Support to a Node.js Project
  • Configuring Node.js with Server-side Debugging Support
  • Using Gulp to Automate Running Development Tasks
  • Developing Projects using Webpack
  • Creating SPAs using React.js and TypeScript
  • Designing a React Component Hierarchy
  • Using JSX/TSX Syntax to Generate HTML
  • Understanding the React Component Lifecycle Methods
  • Calling Across the Network using the Fetch API
  • Extending a React Project with the React Router
  • Creating SPFX Projects using the Yeoman Generator
  • Testing & Debugging Projects in SharePoint Workbench
  • Creating Application Customizers
  • Creating Field Customizers and Command Sets.
  • Creating a Web Part with Custom Properties
  • Managing Styles using SCSS Files and CSS Modules
  • Designing and Developing React Web Parts
  • Web Part Properties versus React Component State
  • Leveraging the Office UI Fabric React Library
  • Developing Web Parts using the SharePoint REST API
  • Designing Web Parts to Manage SharePoint Lists
  • Displaying a Loading Indicator When Retrieving Data
  • Creating the App Catalog Site in SharePoint Online
  • Packaging SPFX Solutions for Production
  • Packaging JavaScript Libraries as External References
  • Customizing SPFX Builds with Gulp and Webpack
  • Publishing and Updating SPFX Solutions
  • Installing an SPFX Solution in a SharePoint Site
  • Overview of Microsoft Graph API
  • Programming with AadHttpClient and MSGraphClient
  • Configuring SPFX API Permission Requests
  • Granting API Permissions in SharePoint Admin Center
  • Creating Users and Groups in Azure AD
  • Programming Email Messages and Calendar Events
  • Introducing Power BI and the Power BI Service API
  • Calling the Power BI Service API using AadHttpClient
  • Overview of the Embedding Features in Power BI
  • Retrieving Embedding Data with the Power BI Service API
  • Embedding Reports with the Power BI JavaScript API
  • Writing Code to Interact with an Embedded Report

Course Outline

  • Introduction to Modern Software Development
  • Developing with Node.js and Visual Studio Code
  • Developing SPAs with React and JSX/TSX
  • Introduction to the SharePoint Framework
  • Developing React Web Parts
  • Packaging and Deploying SharePoint Framework Solutions
  • Programming with the Microsoft Graph API
  • Embedding Power BI Reports using SPFX


Each attendee requires their own Windows PC to complete lab exercises. Attendees should be in good health and should have professional development experience with Visual Studio, JavaScript, C#, the .NET Framework, and ASP.NET.