Be a Modern SharePoint Developer
About Me
Suhail Jamaldeen
Consultant & Trainer – Office 365 | SharePoint
Microsoft MVP – Office Apps & Services
Speaker
Blogger – www.Suhail.Cloud
www.twitter.com/SuhailCloud
www.facebook.com/Suhail.Cloud
#SuhailCloud
• SharePoint PnP community
• SharePoint Web Parts on Microsoft Teams
• Microsoft Graph for SharePoint Online
• Office 365 CLI
• Online resources
Agenda
• SharePoint PnP is a community driven open source
initiative.
• Microsoft and external community members are involved in
sharing their learning's around implementation practices for
SharePoint and Office 365.
• This community controls SharePoint development
• Documentation
• Samples
• reusable controls
• and other relevant open-source initiatives
SharePoint PnP community
Community call When Description
Monthly community call Second Tuesday of each month at
8:00 AM PT / 4:00 PM GMT
Monthly community call covering
the latest changes in SharePoint
development-related topics
within the last month, including
news, UserVoice updates, and
community contributions
Special interest group call for
SharePoint Framework
Bi-weekly on Thursdays at 7:00
AM PT / 3:00 PM GMT
SharePoint Engineering updates,
SharePoint Framework, PnPJS,
Office 365 CLI, and reusable SPFx
controls
Special interest group call for
general SharePoint development
Bi-weekly on Thursdays at 7:00
AM PT / 3:00 PM GMT
SharePoint Engineering updates,
end-to-end solution designs,
provisioning, PnP CSOM, and PnP
PowerShell
Community calls
PnPJS
• PnPJS is a fluent JavaScript API for consuming SharePoint and
Office 365 REST APIs
• Works well with both TypeScript and JavaScript
PnP-PowerShell
• The commands use a combination of CSOM and REST behind the
scenes
• Works with both SharePoint Online as SharePoint On-Premises
PnP Libraries
Starts with SharePoint Framework 1.7 (Announced in MS Ignite)
Hosted within SharePoint without any need for external
services.
Not available generally as on 30th November 2018 (currently in
preview)
SharePoint Web Parts on Microsoft Teams
SharePoint API in Microsoft Graph supports the following core
scenarios:
• Access to SharePoint sites, lists, and drives (document
libraries)
• Read-only support for site resources (no ability to create
new sites)
• Read-write support for lists, listItems, and driveItems
• Address resources by SharePoint ID, URL, or relative path
Microsoft Graph for SharePoint Online
import { graph } from "@pnp/graph";
enables SharePoint solutions to communicate with Graph
Api
• Office 365 CLI is an open-source project driven by the
SharePoint Patterns and Practices initiative.
• Publicly available on November 2017
• Office 365 CLI cross-platform command-line interface that
you can use on any platform no matter if they use
Windows, macOS or Linux.
Office 365 CLI
• The project is built and managed publicly on GitHub
at https://github.com/SharePoint/office365-cli and accepts
community contributions.
• Office 365 CLI is not PnP-PowerShell
Prerequisites
• Node.js (Node.js versions 6 and higher, recommended Node.js
LTS)
The Office 365 CLI is distributed as an NPM package. To use it,
install it globally using:
Installing Office 365 CLI
Immersive mode
• Office 365 CLI will start a new command prompt where you can
directly interact with it and its commands.
• Office365
• o365
Non-immersive mode
• In this way, each CLI command must be prepended with office365
or o365
• Eg. o365 spo list list --webUrl <url>
Start the CLI
• Each command in the Office 365 CLI comes with help
describing the command's purpose
• Basic Help
• Eg. o365 help spo list get
• Complete Help
• Eg. o365 spo list get --help
Navigating through Help
< > Required options
[ ] Optional option
Required and optional command options
Connect to SharePoint Online
• spo connect <url>
• Retrieve all the lists in a site
• spo list list --webUrl <url>
• Create a modern site
• spo site add --title “SharePoint Sri Lanka" --alias spsl
• More: https://sharepoint.github.io/office365-cli/cmd/spo/connect/
Commands
• All the commands will be can present the output as plain-
text or as JSON
• --output json
• –o text
Office 365 CLI output mode
<service> disconnect
• http://aka.ms/o365cli
• https://github.com/SharePoint/office365-cli
Disconnect from an Office 365 service
Reference
• Documentation and guidance from PnP Community -
http://aka.ms/spdev-docs
• SharePoint Developer Community – PnP YouTube Channel
Online resources
Questions
and
Answers
Thank You
www.Suhail.Cloud
@SuhailCloud
fb.com/Suhail.Cloud

Be a Modern SharePoint Developer

  • 1.
    Be a ModernSharePoint Developer
  • 2.
    About Me Suhail Jamaldeen Consultant& Trainer – Office 365 | SharePoint Microsoft MVP – Office Apps & Services Speaker Blogger – www.Suhail.Cloud www.twitter.com/SuhailCloud www.facebook.com/Suhail.Cloud #SuhailCloud
  • 3.
    • SharePoint PnPcommunity • SharePoint Web Parts on Microsoft Teams • Microsoft Graph for SharePoint Online • Office 365 CLI • Online resources Agenda
  • 4.
    • SharePoint PnPis a community driven open source initiative. • Microsoft and external community members are involved in sharing their learning's around implementation practices for SharePoint and Office 365. • This community controls SharePoint development • Documentation • Samples • reusable controls • and other relevant open-source initiatives SharePoint PnP community
  • 5.
    Community call WhenDescription Monthly community call Second Tuesday of each month at 8:00 AM PT / 4:00 PM GMT Monthly community call covering the latest changes in SharePoint development-related topics within the last month, including news, UserVoice updates, and community contributions Special interest group call for SharePoint Framework Bi-weekly on Thursdays at 7:00 AM PT / 3:00 PM GMT SharePoint Engineering updates, SharePoint Framework, PnPJS, Office 365 CLI, and reusable SPFx controls Special interest group call for general SharePoint development Bi-weekly on Thursdays at 7:00 AM PT / 3:00 PM GMT SharePoint Engineering updates, end-to-end solution designs, provisioning, PnP CSOM, and PnP PowerShell Community calls
  • 6.
    PnPJS • PnPJS isa fluent JavaScript API for consuming SharePoint and Office 365 REST APIs • Works well with both TypeScript and JavaScript PnP-PowerShell • The commands use a combination of CSOM and REST behind the scenes • Works with both SharePoint Online as SharePoint On-Premises PnP Libraries
  • 7.
    Starts with SharePointFramework 1.7 (Announced in MS Ignite) Hosted within SharePoint without any need for external services. Not available generally as on 30th November 2018 (currently in preview) SharePoint Web Parts on Microsoft Teams
  • 9.
    SharePoint API inMicrosoft Graph supports the following core scenarios: • Access to SharePoint sites, lists, and drives (document libraries) • Read-only support for site resources (no ability to create new sites) • Read-write support for lists, listItems, and driveItems • Address resources by SharePoint ID, URL, or relative path Microsoft Graph for SharePoint Online
  • 10.
    import { graph} from "@pnp/graph"; enables SharePoint solutions to communicate with Graph Api
  • 11.
    • Office 365CLI is an open-source project driven by the SharePoint Patterns and Practices initiative. • Publicly available on November 2017 • Office 365 CLI cross-platform command-line interface that you can use on any platform no matter if they use Windows, macOS or Linux. Office 365 CLI
  • 12.
    • The projectis built and managed publicly on GitHub at https://github.com/SharePoint/office365-cli and accepts community contributions. • Office 365 CLI is not PnP-PowerShell
  • 13.
    Prerequisites • Node.js (Node.jsversions 6 and higher, recommended Node.js LTS) The Office 365 CLI is distributed as an NPM package. To use it, install it globally using: Installing Office 365 CLI
  • 14.
    Immersive mode • Office365 CLI will start a new command prompt where you can directly interact with it and its commands. • Office365 • o365 Non-immersive mode • In this way, each CLI command must be prepended with office365 or o365 • Eg. o365 spo list list --webUrl <url> Start the CLI
  • 15.
    • Each commandin the Office 365 CLI comes with help describing the command's purpose • Basic Help • Eg. o365 help spo list get • Complete Help • Eg. o365 spo list get --help Navigating through Help
  • 16.
    < > Requiredoptions [ ] Optional option Required and optional command options
  • 17.
    Connect to SharePointOnline • spo connect <url> • Retrieve all the lists in a site • spo list list --webUrl <url> • Create a modern site • spo site add --title “SharePoint Sri Lanka" --alias spsl • More: https://sharepoint.github.io/office365-cli/cmd/spo/connect/ Commands
  • 18.
    • All thecommands will be can present the output as plain- text or as JSON • --output json • –o text Office 365 CLI output mode
  • 19.
    <service> disconnect • http://aka.ms/o365cli •https://github.com/SharePoint/office365-cli Disconnect from an Office 365 service Reference
  • 20.
    • Documentation andguidance from PnP Community - http://aka.ms/spdev-docs • SharePoint Developer Community – PnP YouTube Channel Online resources
  • 21.
  • 22.