**THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.**
---
## Prerequisites
- Office 365 subscription with SharePoint Online and Exchange
- Site Collection created under the **/sites/** Managed Path
## Minimal Path to Awesome
- clone this repo
- in the command line execute:
-`npm i`
-`gulp serve --nobrowser`
- create a copy of the **./temp/workbench.html** file and change its extension to **.aspx**
- upload the **workbench.aspx** file to a Document Library in your site
- copy the URL of the workbench page uploaded to your SharePoint site, ie. _https://contoso.sharepoint.com/sites/my-team/documents/workbench.aspx_
- in the Azure Active Directory corresponding to your Office 365 tenant register a new Web Application:
- as the **Sign-on URL** enter the URL of the workbench page uploaded to SharePoint
- enable OAuth implicit flow
- grant the application the **Microsoft Graph/Read user calendars** permission
- copy the application's ID
- in the command line stop the `gulp serve` task
- in the **src/webparts/upcomingMeetings/AdalConfig.ts** file in the **clientId** property enter the application ID registered in Azure
- in the command line execute `gulp serve --nobrowser`
## Features
Sample web part in this solution illustrates the following concepts on top of the SharePoint Framework:
- using React for building SharePoint Framework client-side web parts
- using Office UI Fabric React components for building user experience consistent with SharePoint and Office
- on-demand authentication with the Azure Active Directory using the ADAL JS library
- communicating with the Microsoft Graph using its REST API
- using the ADAL JS library with SharePoint Framework web parts built using React
- using custom Webpack loader for exposing pieces of non-AMD scripts