SlideShare a Scribd company logo
1 of 50
May 20th, 2017
SharePoint Saturday
Madrid
Introducción al SharePoint Framework SPFx
Gustavo Velez
Gustavo Velez
MVP Office Servers And Services
Portiva
http://www.gavd.net
gustavo@gavd.net
http://www.compartimoss.com
Introducción
 Que es el SharePoint Framework SPFx
 WebParts de Cliente
 Herramientas para desarrollar con el SPFx
 Configuración de maquinas de desarrollo
 Configuración de Office 365
 Que nos trae el futuro
 Conclusiones, preguntas, etc.
SharePoint UX – Evolución a través de sus versiones
2009
SharePoint
Server 2010
2006
Office SharePoint
Server 2007
2003
SharePoint
Portal Server 2003
2001
SharePoint
Portal Server 2001
2012
SharePoint
Server 2013
2016 …
SharePoint
Server 2016, SPO
SharePoint Framework
SharePoint Framework
Entonces el SharePoint Framework es:
The SharePoint Framework is
made for “Modern Pages”
Demo Paginas Modernas en SharePoint
Modern Pages: mobile, fast, and powerful
Web Parts
SharePoint WebParts
SPFx Client-Side WebParts
Demo Client-Site WebParts
Open source tooling
IIS Express
Project Templates
Server/Client Side WebParts tool comparison
MSBuild C#
npm – Node Package Manager
• Similar ways as NuGet is for .NET framework managed code
https://www.npmjs.com/
Yeoman - Templates
• Similar ways as Templates is for Visual Studio
http://yeoman.io
gulp – Your task and build manager
• Task manager in similar ways as MS Build has been classically for
Visual Studio projects
http://gulpjs.com/
TypeScript – Typed JavaScript
https://www.typescriptlang.org/
Office UI Fabric
Fonts, icons Colors
1. Install developer tools
2. Install Yeoman and gulp
3. Install Yeoman SharePoint generator
4. Install optional tools
Setting Up Your Computer: Steps
Linux
Install developer tools – NodeJS and npm
NodeJS
homebrew
sudo npm install -g npm@3
npm install -g npm@3
** It will also install NodeJS, but we need only npm…
Install developer tools – Windows Build Tools
sudo yum install make automake gcc gcc-c++ kernel-devel
npm install -g --production windows-build-tools
sudo apt-get install build-essential
** It will also install Python 2.7 (and Visual C++ Build Tools 2015) …
Yeoman helps you kick-start new projects
SharePoint client-side development tools include a Yeoman
generator for creating new web parts.
Install Yeoman and gulp
npm install -g yo gulp
The Yeoman SharePoint web part generator helps you quickly create a
SharePoint client-side solution project with the right toolchain and
project structure.
Install Yeoman SharePoint generator
npm install -g @microsoft/generator-sharepoint
Install developer tools – Code Editors
Visual Studio Code
Sublime
Atom
Webstorm
** Not all these tools are required. Just install the ones you want to use
Install developer tools – Visual Studio
Visual Studio 2015
Visual Studio Update 3 or later
Node.js Tools for Visual Studio
• Fiddler (HTTP debugging by recording Web traffic)
• Postman plugin for Chrome (Fiddler on steroids)
• Cmder for Windows (console emulator)
• Oh My Zsh for Mac (??)
• Git source control tools
• Etc., etc., etc…
Install optional tools
Demo Development machine
• Sign up for an Office 365 Developer Tenant
• Create app catalog site
• Create a new Developer Site collection
• SharePoint Workbench
Office 365 Developer Tenant Setup Steps
http://dev.office.com/sharepoint/docs/spfx/set-up-your-developer-tenant
• Sign up for the Office Developer Program (https://dev.office.com/devprogram)
• Gets one-year, free Office 365 developer subscription
• You will receive a welcome mail with a link to sign up for an Office 365
Developer Tenant
• One user allowed
• Or go to https://products.office.com and
• Make a 30 days trial tenant (choose “Office 365 Business Premium”)
• 25 users allowed
• Create a new Azure AD Tenant
• Not obligatory
• Necessary to experiment with some functionality (PnP for example)
• Trial for 30 days
• Only one AD Tenant for each Credit Card
Sign up for an Office 365 Developer Tenant
https://yourtenantprefix-admin.sharepoint.com
Create app catalog site
https://yourtenantprefix-admin.sharepoint.com
Create a new Developer Site collection
Workbench simulates the use of a Client-Site WebPart:
- In the development machine for testing:
- Starts a browser with the WebPart loaded
- No data-connection, but it can be simulated
- In SharePoint 365 tenant for testing:
- You can access the SharePoint Workbench from any SharePoint site
in your tenancy by browsing to the URL https://your-sharepoint-
site/_layouts/workbench.aspx
- Allows data-connection with SharePoint environment
SharePoint Workbench
Demo Client WebPart
• On-premises support (Shipping as part of Feature Pack)
• Client-Side web parts++ and add-ins
• Easy access to Graph API to access user specific information
• Part-to-part communication
• JS Framework isolation
• Azure AD Registration
• Build Add-Ins with SharePoint Framework
• The same tool chain and deployment model as client side web parts
• Derive from a strongly typed base class wherever possible rather than manipulating the page DOM directly
• Replacing custom actions and JSLinks with SharePoint Framework-based extensions
• Application Lifecyle Management
• Owner initiate the approval process
• Tenant admin gets automatically notified
• ALM REST APIs - Deploy, activate, delete and upgrade apps and add-ins
• ALM REST APIs targeted to support everything in the App Catalog, including add-ins
• Automatic CDN hosting for code
SPFx Roadmap
• Developer Experience
• SharePoint Framework Workbench 2.0: Development story beyond web parts with support for new
component types on top of client-side web parts
• Additional Yeoman Templates
• Full Page Apps
• Build SharePoint Framework apps, which render in full page mode, rather than as a client-side web part
• List level: custom view item, edit item, delete item, add item
• Page level: assign an app to a page to a full custom page experience
SPFx Roadmap
- Las herramientas de trabajo son feas… comandos y mas comandos
- Proyecto de 35.000 archivos para producir UN archivo de código
- Conflictos de autorización (no separación en WebParts)
- Es código de cliente: como lo aseguro para que no me lo copien?
- (Algo bueno, por favor) Comparado con el desarrollo de WebParts de
Servidor, las de Cliente son mas fáciles de desarrollar (opinión personal)
- (Otro bueno) Maquina de desarrollo de muy, muy bajo costo
- Significan las WebParts de Cliente una resurrección del desarrollo para
SharePoint?
Lo malo, lo feo… y lo bueno
- Nueva forma para crear WebParts (y personalizaciones) para
SharePoint
- SPFx esta aquí para quedarse (por el momento, al menos)…
- Si no maneja JavaScript, comience a aprenderlo, lo va a necesitar…
Preguntas
Sumario
Gold sponsors ______________
Silver sponsors
Bronze sponsors
Collaborate
Platinum sponsor
INSTALLATION
01 - Install NodeJS Long Term Support (LTS) (latest version) (https://nodejs.org/en/)
02 - Install npm --> npm install -g npm@3
03 - Install windows-build-tools --> npm install -g --production windows-build-tools
04 - Install Yeoman and Gulp --> npm install -g yo gulp
05 - Install Yeoman SharePoint generator --> npm install -g @microsoft/generator-sharepoint
WEBPART
06 - Create directory --> md blabla --> cd blabla
07 - Create project with Yeoman (5 min) --> yo @microsoft/sharepoint
08 - Start VS Code (don't forget " .") --> code .
09 - Install dev. certif. (only one time) --> gulp trust-dev-cert
DEPLOY TO LOCAL WORKBENCH
10 - Build and preview the WebPart --> gulp serve (stop with Ctrl+C)
DEPLOY TO SHAREPOINT FROM LOCAL
11 - Generate the package for SP Catalog --> gulp package-solution (Pack in "..sharepointsolution")
12 - Start Gulp in dev environment --> gulp serve --nobrowser
13 - Install package .sppkg in Catalog ==> Install App is Site Coll ==> Install WebPart in page
DEPLOY TO SHAREPOINT FROM SHAREPOINT LIBRARY
14 - Create Library in SharePoint
15 - In "config/write-manifests.json" --> use the Library full path as cdnBasePath (and Save)
16 - Create the files to deploy --> gulp bundle --ship ("--ship" for release build version)
17 - Copy the generated files --> (files in "..tempdeploy") to the Library
18 - Generate the package for SP Catalog --> gulp package-solution --ship (Pack in "..sharepointsolution")
19 - Install package .sppkg in Catalog ==> Install App is Site Coll ==> Install WebPart in page
DEPLOY TO SHAREPOINT FROM SHAREPOINT CDN
20 - Configure SharePoint CDN --> Run Cmdlets to make one Library or folder the SharePoint CDN
Needs to have the SP Online PowerShell Cmdlets already installed (https://www.microsoft.com/en-
us/download/details.aspx?id=35588)
$creds = Get-Credential
Connect-SPOService -Url https://contoso-admin.sharepoint.com/ -Credential $creds
Set-SPOTenant -PublicCdnEnabled $true
New-SPOPublicCdnOrigin -Url "https://contoso.sharepoint.com/siteassets/folder1"
21 - Get the ID of the SP CDN Library --> Get-SPOPublicCdnOrigins (Copy the ID of the SharePoint CDN repository)
22 - In "config/write-manifests.json" --> use the following path as cdnBasePath (and Save)
"https://publiccdn.sharepointonline.com/<tenant host name>/<ID of the SharePoint CDN>/<sub-path under the origin>"
for example, if the Library is in the root of the Tenant:
"https://publiccdn.sharepointonline.com/contoso.sharepoint.com/17280044dc65df7..."
23 - Create the files to deploy --> gulp bundle --ship ("--ship" for release build version)
24 - Copy the generated files --> (files in "..tempdeploy") to the SP CDN Library
25 - Generate the package for SP Catalog --> gulp package-solution --ship (Pack in "..sharepointsolution")
26 - Install package .sppkg in Catalog ==> Install App is Site Coll ==> Install WebPart in page
DEPLOY TO SHAREPOINT FROM AZURE CDN
- In Azure create a Resource Group
- In the Resource Group create a Storage Account (example spfxstoragegavd)
- In the Storage create a Blob Container (example ss01webpart)
- In the Resource Group create a CDN Profile
- In the CDN Profile create a CDN Endpoint (example ss01webpartendpoint)
- In "config/deploy-azure-storage.json" --> Change the values (and save):
account == The Storage Account Name (in the example spfxstoragegavd)
container == The Blob Container Name (in the example ss01webpart)
accessKey == In the storage account dashboard, choose Access Key in the dashboard and copy the first access keys
- In "config/write-manifests.json" --> in the cdnBasePath use (and save):
"https:// + "Endpoint hostname" + ".azureedge.net/" + Name of the Container in the Storage Blob + "/"
in the example: "https://ss01webpartendpoint.azureedge.net/ss01webpart/")
- Buil the assets (.js, .css, etc.) --> gulp bundle --ship
- Deploy the assets to the Azure Storage --> gulp deploy-azure-storage
- Generate the package for SP Catalog --> gulp package-solution --ship (Pack in "..sharepointsolution")
- Install package .sppkg in Catalog ==> Install App is Site Coll ==> Install WebPart in page

More Related Content

What's hot

Microsoft SharePoint
Microsoft SharePointMicrosoft SharePoint
Microsoft SharePointUmar Farooq
 
ESPC19 - Build Your First Microsoft Teams App Using SPFx
ESPC19 - Build Your First Microsoft Teams App Using SPFxESPC19 - Build Your First Microsoft Teams App Using SPFx
ESPC19 - Build Your First Microsoft Teams App Using SPFxSébastien Levert
 
Technical Overview of Microsoft SharePoint Online - Presented by Atidan
Technical Overview of Microsoft SharePoint Online - Presented by AtidanTechnical Overview of Microsoft SharePoint Online - Presented by Atidan
Technical Overview of Microsoft SharePoint Online - Presented by AtidanDavid J Rosenthal
 
Overview of SharePoint Framework (SPFx)
Overview of SharePoint Framework (SPFx)Overview of SharePoint Framework (SPFx)
Overview of SharePoint Framework (SPFx)Małgorzata Borzęcka
 
Introduction to SharePoint Framework
Introduction to SharePoint FrameworkIntroduction to SharePoint Framework
Introduction to SharePoint FrameworkMałgorzata Borzęcka
 
CCI 2017 - Introduzione a SharePoint Framework (SPFx) - Fabio Franzini
CCI 2017 - Introduzione a SharePoint Framework (SPFx) - Fabio FranziniCCI 2017 - Introduzione a SharePoint Framework (SPFx) - Fabio Franzini
CCI 2017 - Introduzione a SharePoint Framework (SPFx) - Fabio Franziniwalk2talk srl
 
Journey to PNP Core & PNP
Journey to PNP Core & PNPJourney to PNP Core & PNP
Journey to PNP Core & PNPNIFTIT
 
ASP.NET Core 2.1: The Future of Web Apps
ASP.NET Core 2.1: The Future of Web AppsASP.NET Core 2.1: The Future of Web Apps
ASP.NET Core 2.1: The Future of Web AppsShahed Chowdhuri
 
SharePoint 2010 Application Development
SharePoint 2010 Application DevelopmentSharePoint 2010 Application Development
SharePoint 2010 Application Developmentmattbremer
 
ECS19 - Bill Ayers - UNLOCK YOUR BUSINESS KNOWLEDGE WITH THE MICROSOFT GRAPH,...
ECS19 - Bill Ayers - UNLOCK YOUR BUSINESS KNOWLEDGE WITH THE MICROSOFT GRAPH,...ECS19 - Bill Ayers - UNLOCK YOUR BUSINESS KNOWLEDGE WITH THE MICROSOFT GRAPH,...
ECS19 - Bill Ayers - UNLOCK YOUR BUSINESS KNOWLEDGE WITH THE MICROSOFT GRAPH,...European Collaboration Summit
 
Flex vs. HTML5 for RIAS
Flex vs. HTML5 for RIASFlex vs. HTML5 for RIAS
Flex vs. HTML5 for RIASPamela Fox
 
Share point 2013 apps and i mean it
Share point 2013 apps and i mean itShare point 2013 apps and i mean it
Share point 2013 apps and i mean itEric Overfield
 
The Greatest Introduction to SharePoint Framework (SPFx) on earth!
The Greatest Introduction to SharePoint Framework (SPFx) on earth!The Greatest Introduction to SharePoint Framework (SPFx) on earth!
The Greatest Introduction to SharePoint Framework (SPFx) on earth!Małgorzata Borzęcka
 
Use the PnP SharePoint Starter Kit to create your intranet in a box
Use the PnP SharePoint Starter Kit to create your intranet in a boxUse the PnP SharePoint Starter Kit to create your intranet in a box
Use the PnP SharePoint Starter Kit to create your intranet in a boxFabio Franzini
 
SPUnite17 SPFx Extensions
SPUnite17 SPFx ExtensionsSPUnite17 SPFx Extensions
SPUnite17 SPFx ExtensionsNCCOMMS
 
Teams Day Online III - A Hub to rule all your Tasks - Tasks in teams
Teams Day Online III - A Hub to rule all your Tasks - Tasks in teamsTeams Day Online III - A Hub to rule all your Tasks - Tasks in teams
Teams Day Online III - A Hub to rule all your Tasks - Tasks in teamsJuan Carlos Gonzalez
 
O365Con18 - Security and Compliance - Liz Sundet
O365Con18 - Security and Compliance - Liz SundetO365Con18 - Security and Compliance - Liz Sundet
O365Con18 - Security and Compliance - Liz SundetNCCOMMS
 
O365Con18 - Best Practice with Company Video on Microsoft Stream - Michael Greth
O365Con18 - Best Practice with Company Video on Microsoft Stream - Michael GrethO365Con18 - Best Practice with Company Video on Microsoft Stream - Michael Greth
O365Con18 - Best Practice with Company Video on Microsoft Stream - Michael GrethNCCOMMS
 
Chris O'Brien - Introduction to the SharePoint Framework for developers
Chris O'Brien - Introduction to the SharePoint Framework for developersChris O'Brien - Introduction to the SharePoint Framework for developers
Chris O'Brien - Introduction to the SharePoint Framework for developersChris O'Brien
 

What's hot (20)

Microsoft SharePoint
Microsoft SharePointMicrosoft SharePoint
Microsoft SharePoint
 
ESPC19 - Build Your First Microsoft Teams App Using SPFx
ESPC19 - Build Your First Microsoft Teams App Using SPFxESPC19 - Build Your First Microsoft Teams App Using SPFx
ESPC19 - Build Your First Microsoft Teams App Using SPFx
 
Technical Overview of Microsoft SharePoint Online - Presented by Atidan
Technical Overview of Microsoft SharePoint Online - Presented by AtidanTechnical Overview of Microsoft SharePoint Online - Presented by Atidan
Technical Overview of Microsoft SharePoint Online - Presented by Atidan
 
Overview of SharePoint Framework (SPFx)
Overview of SharePoint Framework (SPFx)Overview of SharePoint Framework (SPFx)
Overview of SharePoint Framework (SPFx)
 
Introduction to SharePoint Framework
Introduction to SharePoint FrameworkIntroduction to SharePoint Framework
Introduction to SharePoint Framework
 
CCI 2017 - Introduzione a SharePoint Framework (SPFx) - Fabio Franzini
CCI 2017 - Introduzione a SharePoint Framework (SPFx) - Fabio FranziniCCI 2017 - Introduzione a SharePoint Framework (SPFx) - Fabio Franzini
CCI 2017 - Introduzione a SharePoint Framework (SPFx) - Fabio Franzini
 
Journey to PNP Core & PNP
Journey to PNP Core & PNPJourney to PNP Core & PNP
Journey to PNP Core & PNP
 
All about SPFx
All about SPFxAll about SPFx
All about SPFx
 
ASP.NET Core 2.1: The Future of Web Apps
ASP.NET Core 2.1: The Future of Web AppsASP.NET Core 2.1: The Future of Web Apps
ASP.NET Core 2.1: The Future of Web Apps
 
SharePoint 2010 Application Development
SharePoint 2010 Application DevelopmentSharePoint 2010 Application Development
SharePoint 2010 Application Development
 
ECS19 - Bill Ayers - UNLOCK YOUR BUSINESS KNOWLEDGE WITH THE MICROSOFT GRAPH,...
ECS19 - Bill Ayers - UNLOCK YOUR BUSINESS KNOWLEDGE WITH THE MICROSOFT GRAPH,...ECS19 - Bill Ayers - UNLOCK YOUR BUSINESS KNOWLEDGE WITH THE MICROSOFT GRAPH,...
ECS19 - Bill Ayers - UNLOCK YOUR BUSINESS KNOWLEDGE WITH THE MICROSOFT GRAPH,...
 
Flex vs. HTML5 for RIAS
Flex vs. HTML5 for RIASFlex vs. HTML5 for RIAS
Flex vs. HTML5 for RIAS
 
Share point 2013 apps and i mean it
Share point 2013 apps and i mean itShare point 2013 apps and i mean it
Share point 2013 apps and i mean it
 
The Greatest Introduction to SharePoint Framework (SPFx) on earth!
The Greatest Introduction to SharePoint Framework (SPFx) on earth!The Greatest Introduction to SharePoint Framework (SPFx) on earth!
The Greatest Introduction to SharePoint Framework (SPFx) on earth!
 
Use the PnP SharePoint Starter Kit to create your intranet in a box
Use the PnP SharePoint Starter Kit to create your intranet in a boxUse the PnP SharePoint Starter Kit to create your intranet in a box
Use the PnP SharePoint Starter Kit to create your intranet in a box
 
SPUnite17 SPFx Extensions
SPUnite17 SPFx ExtensionsSPUnite17 SPFx Extensions
SPUnite17 SPFx Extensions
 
Teams Day Online III - A Hub to rule all your Tasks - Tasks in teams
Teams Day Online III - A Hub to rule all your Tasks - Tasks in teamsTeams Day Online III - A Hub to rule all your Tasks - Tasks in teams
Teams Day Online III - A Hub to rule all your Tasks - Tasks in teams
 
O365Con18 - Security and Compliance - Liz Sundet
O365Con18 - Security and Compliance - Liz SundetO365Con18 - Security and Compliance - Liz Sundet
O365Con18 - Security and Compliance - Liz Sundet
 
O365Con18 - Best Practice with Company Video on Microsoft Stream - Michael Greth
O365Con18 - Best Practice with Company Video on Microsoft Stream - Michael GrethO365Con18 - Best Practice with Company Video on Microsoft Stream - Michael Greth
O365Con18 - Best Practice with Company Video on Microsoft Stream - Michael Greth
 
Chris O'Brien - Introduction to the SharePoint Framework for developers
Chris O'Brien - Introduction to the SharePoint Framework for developersChris O'Brien - Introduction to the SharePoint Framework for developers
Chris O'Brien - Introduction to the SharePoint Framework for developers
 

Similar to Introducción al SharePoint Framework SPFx

M365 global developer bootcamp 2019 Intro to SPFx Version
M365 global developer bootcamp 2019 Intro to SPFx VersionM365 global developer bootcamp 2019 Intro to SPFx Version
M365 global developer bootcamp 2019 Intro to SPFx VersionThomas Daly
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)Brian Culver
 
Real World SharePoint Framework and Azure Services
Real World SharePoint Framework and Azure ServicesReal World SharePoint Framework and Azure Services
Real World SharePoint Framework and Azure ServicesBrian Culver
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)Brian Culver
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Brian Culver
 
M365 global developer bootcamp 2019 PA
M365 global developer bootcamp 2019  PAM365 global developer bootcamp 2019  PA
M365 global developer bootcamp 2019 PAThomas Daly
 
SPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFxSPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFxNCCOMMS
 
M365 global developer bootcamp 2019
M365 global developer bootcamp 2019M365 global developer bootcamp 2019
M365 global developer bootcamp 2019Thomas Daly
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hourConvert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hourBrian Culver
 
Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...Fabio Franzini
 
Free Online SharePoint Framework Webinar
Free Online SharePoint Framework WebinarFree Online SharePoint Framework Webinar
Free Online SharePoint Framework WebinarManoj Mittal
 
Deep dive into share point framework webparts
Deep dive into share point framework webpartsDeep dive into share point framework webparts
Deep dive into share point framework webpartsPrabhu Nehru
 
Introduction to Office Development Topics
Introduction to Office Development TopicsIntroduction to Office Development Topics
Introduction to Office Development TopicsHaaron Gonzalez
 
Build Your First SharePoint Framework Webpart
Build Your First SharePoint Framework WebpartBuild Your First SharePoint Framework Webpart
Build Your First SharePoint Framework WebpartEric Overfield
 
Best of barcelona symposium experience
Best of barcelona symposium experienceBest of barcelona symposium experience
Best of barcelona symposium experienceThe Reference
 
2014 SharePoint Saturday Melbourne Apps or not to Apps
2014 SharePoint Saturday Melbourne Apps or not to Apps2014 SharePoint Saturday Melbourne Apps or not to Apps
2014 SharePoint Saturday Melbourne Apps or not to AppsGilles Pommier
 
German introduction to sp framework
German   introduction to sp frameworkGerman   introduction to sp framework
German introduction to sp frameworkBob German
 
Heading to the Cloud : Introduction to deploying a Provider-Hosted App in Azure
Heading to the Cloud : Introduction to deploying a Provider-Hosted App in AzureHeading to the Cloud : Introduction to deploying a Provider-Hosted App in Azure
Heading to the Cloud : Introduction to deploying a Provider-Hosted App in AzureXenox Garavito
 
Leveraging SharePoint as a development platform for the modern intranet
Leveraging SharePoint as a development platform for the modern intranetLeveraging SharePoint as a development platform for the modern intranet
Leveraging SharePoint as a development platform for the modern intranetMicrosoft Tech Community
 
SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem.
SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem. SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem.
SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem. Kushan Lahiru Perera
 

Similar to Introducción al SharePoint Framework SPFx (20)

M365 global developer bootcamp 2019 Intro to SPFx Version
M365 global developer bootcamp 2019 Intro to SPFx VersionM365 global developer bootcamp 2019 Intro to SPFx Version
M365 global developer bootcamp 2019 Intro to SPFx Version
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
Real World SharePoint Framework and Azure Services
Real World SharePoint Framework and Azure ServicesReal World SharePoint Framework and Azure Services
Real World SharePoint Framework and Azure Services
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
M365 global developer bootcamp 2019 PA
M365 global developer bootcamp 2019  PAM365 global developer bootcamp 2019  PA
M365 global developer bootcamp 2019 PA
 
SPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFxSPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFx
 
M365 global developer bootcamp 2019
M365 global developer bootcamp 2019M365 global developer bootcamp 2019
M365 global developer bootcamp 2019
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hourConvert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
 
Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...
 
Free Online SharePoint Framework Webinar
Free Online SharePoint Framework WebinarFree Online SharePoint Framework Webinar
Free Online SharePoint Framework Webinar
 
Deep dive into share point framework webparts
Deep dive into share point framework webpartsDeep dive into share point framework webparts
Deep dive into share point framework webparts
 
Introduction to Office Development Topics
Introduction to Office Development TopicsIntroduction to Office Development Topics
Introduction to Office Development Topics
 
Build Your First SharePoint Framework Webpart
Build Your First SharePoint Framework WebpartBuild Your First SharePoint Framework Webpart
Build Your First SharePoint Framework Webpart
 
Best of barcelona symposium experience
Best of barcelona symposium experienceBest of barcelona symposium experience
Best of barcelona symposium experience
 
2014 SharePoint Saturday Melbourne Apps or not to Apps
2014 SharePoint Saturday Melbourne Apps or not to Apps2014 SharePoint Saturday Melbourne Apps or not to Apps
2014 SharePoint Saturday Melbourne Apps or not to Apps
 
German introduction to sp framework
German   introduction to sp frameworkGerman   introduction to sp framework
German introduction to sp framework
 
Heading to the Cloud : Introduction to deploying a Provider-Hosted App in Azure
Heading to the Cloud : Introduction to deploying a Provider-Hosted App in AzureHeading to the Cloud : Introduction to deploying a Provider-Hosted App in Azure
Heading to the Cloud : Introduction to deploying a Provider-Hosted App in Azure
 
Leveraging SharePoint as a development platform for the modern intranet
Leveraging SharePoint as a development platform for the modern intranetLeveraging SharePoint as a development platform for the modern intranet
Leveraging SharePoint as a development platform for the modern intranet
 
SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem.
SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem. SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem.
SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem.
 

More from SUGES (SharePoint Users Group España)

Transforming your full-trust solutions to the Add-in model / SharePoint Frame...
Transforming your full-trust solutions to the Add-in model / SharePoint Frame...Transforming your full-trust solutions to the Add-in model / SharePoint Frame...
Transforming your full-trust solutions to the Add-in model / SharePoint Frame...SUGES (SharePoint Users Group España)
 
How to execute SharePoint 2016 upgrade strategy and ensure business continuity
How to execute SharePoint 2016 upgrade strategy and ensure business continuityHow to execute SharePoint 2016 upgrade strategy and ensure business continuity
How to execute SharePoint 2016 upgrade strategy and ensure business continuitySUGES (SharePoint Users Group España)
 

More from SUGES (SharePoint Users Group España) (18)

SharePoint Saturday Madrid 2017 - KeyNote
SharePoint Saturday Madrid 2017 - KeyNoteSharePoint Saturday Madrid 2017 - KeyNote
SharePoint Saturday Madrid 2017 - KeyNote
 
How to use SharePoint PnP assets in real world use cases
How to use SharePoint PnP assets in real world use casesHow to use SharePoint PnP assets in real world use cases
How to use SharePoint PnP assets in real world use cases
 
Domotica #Skype4 b #IoT #Azure #Windows10IoTCore
Domotica #Skype4 b #IoT #Azure #Windows10IoTCoreDomotica #Skype4 b #IoT #Azure #Windows10IoTCore
Domotica #Skype4 b #IoT #Azure #Windows10IoTCore
 
Beyond cards: How to get the most out of Delve
Beyond cards: How to get the most out of DelveBeyond cards: How to get the most out of Delve
Beyond cards: How to get the most out of Delve
 
Probots: Azure Bots y Project Online
Probots: Azure Bots y Project OnlineProbots: Azure Bots y Project Online
Probots: Azure Bots y Project Online
 
Cómo gestionar el ciclo de vida de soluciones SPFx
Cómo gestionar el ciclo de vida de soluciones SPFxCómo gestionar el ciclo de vida de soluciones SPFx
Cómo gestionar el ciclo de vida de soluciones SPFx
 
Extending Microsoft Teams
Extending Microsoft TeamsExtending Microsoft Teams
Extending Microsoft Teams
 
Transforming your full-trust solutions to the Add-in model / SharePoint Frame...
Transforming your full-trust solutions to the Add-in model / SharePoint Frame...Transforming your full-trust solutions to the Add-in model / SharePoint Frame...
Transforming your full-trust solutions to the Add-in model / SharePoint Frame...
 
How to execute SharePoint 2016 upgrade strategy and ensure business continuity
How to execute SharePoint 2016 upgrade strategy and ensure business continuityHow to execute SharePoint 2016 upgrade strategy and ensure business continuity
How to execute SharePoint 2016 upgrade strategy and ensure business continuity
 
Bots & Teams: el poder de Grayskull
Bots & Teams: el poder de GrayskullBots & Teams: el poder de Grayskull
Bots & Teams: el poder de Grayskull
 
Análisis de sentimiento con Flow y Text Analytics
Análisis de sentimiento con Flow y Text AnalyticsAnálisis de sentimiento con Flow y Text Analytics
Análisis de sentimiento con Flow y Text Analytics
 
JS Patterns Applied to a Real World Example
JS Patterns Applied to a Real World ExampleJS Patterns Applied to a Real World Example
JS Patterns Applied to a Real World Example
 
Text Analytics y Machine Learning como sistema de catalogación
Text Analytics y Machine Learning como sistema de catalogaciónText Analytics y Machine Learning como sistema de catalogación
Text Analytics y Machine Learning como sistema de catalogación
 
Proyecto 360: Combinar lo mejor de Azure y Office 365
Proyecto 360: Combinar lo mejor de Azure y Office 365Proyecto 360: Combinar lo mejor de Azure y Office 365
Proyecto 360: Combinar lo mejor de Azure y Office 365
 
Empowering SharePoint with search capabilities
Empowering SharePoint with search capabilitiesEmpowering SharePoint with search capabilities
Empowering SharePoint with search capabilities
 
SharePoint Framework y React
SharePoint Framework y ReactSharePoint Framework y React
SharePoint Framework y React
 
PowerApps, Flow y Power BI: Gestiona tus procesos corporativos.
PowerApps, Flow y Power BI: Gestiona tus procesos corporativos.PowerApps, Flow y Power BI: Gestiona tus procesos corporativos.
PowerApps, Flow y Power BI: Gestiona tus procesos corporativos.
 
Aprovisionamiento remoto de SharePoint con Azure Functions
Aprovisionamiento remoto de SharePoint con Azure FunctionsAprovisionamiento remoto de SharePoint con Azure Functions
Aprovisionamiento remoto de SharePoint con Azure Functions
 

Recently uploaded

Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 

Recently uploaded (20)

Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 

Introducción al SharePoint Framework SPFx

  • 1. May 20th, 2017 SharePoint Saturday Madrid Introducción al SharePoint Framework SPFx Gustavo Velez
  • 2. Gustavo Velez MVP Office Servers And Services Portiva http://www.gavd.net gustavo@gavd.net http://www.compartimoss.com
  • 3.
  • 4. Introducción  Que es el SharePoint Framework SPFx  WebParts de Cliente  Herramientas para desarrollar con el SPFx  Configuración de maquinas de desarrollo  Configuración de Office 365  Que nos trae el futuro  Conclusiones, preguntas, etc.
  • 5.
  • 6. SharePoint UX – Evolución a través de sus versiones 2009 SharePoint Server 2010 2006 Office SharePoint Server 2007 2003 SharePoint Portal Server 2003 2001 SharePoint Portal Server 2001 2012 SharePoint Server 2013 2016 … SharePoint Server 2016, SPO
  • 9. Entonces el SharePoint Framework es:
  • 10. The SharePoint Framework is made for “Modern Pages”
  • 11. Demo Paginas Modernas en SharePoint
  • 12. Modern Pages: mobile, fast, and powerful
  • 13.
  • 17.
  • 19. IIS Express Project Templates Server/Client Side WebParts tool comparison MSBuild C#
  • 20. npm – Node Package Manager • Similar ways as NuGet is for .NET framework managed code https://www.npmjs.com/
  • 21. Yeoman - Templates • Similar ways as Templates is for Visual Studio http://yeoman.io
  • 22. gulp – Your task and build manager • Task manager in similar ways as MS Build has been classically for Visual Studio projects http://gulpjs.com/
  • 23. TypeScript – Typed JavaScript https://www.typescriptlang.org/
  • 24. Office UI Fabric Fonts, icons Colors
  • 25.
  • 26. 1. Install developer tools 2. Install Yeoman and gulp 3. Install Yeoman SharePoint generator 4. Install optional tools Setting Up Your Computer: Steps
  • 27. Linux Install developer tools – NodeJS and npm NodeJS homebrew sudo npm install -g npm@3 npm install -g npm@3 ** It will also install NodeJS, but we need only npm…
  • 28. Install developer tools – Windows Build Tools sudo yum install make automake gcc gcc-c++ kernel-devel npm install -g --production windows-build-tools sudo apt-get install build-essential ** It will also install Python 2.7 (and Visual C++ Build Tools 2015) …
  • 29. Yeoman helps you kick-start new projects SharePoint client-side development tools include a Yeoman generator for creating new web parts. Install Yeoman and gulp npm install -g yo gulp
  • 30. The Yeoman SharePoint web part generator helps you quickly create a SharePoint client-side solution project with the right toolchain and project structure. Install Yeoman SharePoint generator npm install -g @microsoft/generator-sharepoint
  • 31. Install developer tools – Code Editors Visual Studio Code Sublime Atom Webstorm ** Not all these tools are required. Just install the ones you want to use
  • 32. Install developer tools – Visual Studio Visual Studio 2015 Visual Studio Update 3 or later Node.js Tools for Visual Studio
  • 33. • Fiddler (HTTP debugging by recording Web traffic) • Postman plugin for Chrome (Fiddler on steroids) • Cmder for Windows (console emulator) • Oh My Zsh for Mac (??) • Git source control tools • Etc., etc., etc… Install optional tools
  • 35.
  • 36. • Sign up for an Office 365 Developer Tenant • Create app catalog site • Create a new Developer Site collection • SharePoint Workbench Office 365 Developer Tenant Setup Steps http://dev.office.com/sharepoint/docs/spfx/set-up-your-developer-tenant
  • 37. • Sign up for the Office Developer Program (https://dev.office.com/devprogram) • Gets one-year, free Office 365 developer subscription • You will receive a welcome mail with a link to sign up for an Office 365 Developer Tenant • One user allowed • Or go to https://products.office.com and • Make a 30 days trial tenant (choose “Office 365 Business Premium”) • 25 users allowed • Create a new Azure AD Tenant • Not obligatory • Necessary to experiment with some functionality (PnP for example) • Trial for 30 days • Only one AD Tenant for each Credit Card Sign up for an Office 365 Developer Tenant
  • 40. Workbench simulates the use of a Client-Site WebPart: - In the development machine for testing: - Starts a browser with the WebPart loaded - No data-connection, but it can be simulated - In SharePoint 365 tenant for testing: - You can access the SharePoint Workbench from any SharePoint site in your tenancy by browsing to the URL https://your-sharepoint- site/_layouts/workbench.aspx - Allows data-connection with SharePoint environment SharePoint Workbench
  • 42.
  • 43. • On-premises support (Shipping as part of Feature Pack) • Client-Side web parts++ and add-ins • Easy access to Graph API to access user specific information • Part-to-part communication • JS Framework isolation • Azure AD Registration • Build Add-Ins with SharePoint Framework • The same tool chain and deployment model as client side web parts • Derive from a strongly typed base class wherever possible rather than manipulating the page DOM directly • Replacing custom actions and JSLinks with SharePoint Framework-based extensions • Application Lifecyle Management • Owner initiate the approval process • Tenant admin gets automatically notified • ALM REST APIs - Deploy, activate, delete and upgrade apps and add-ins • ALM REST APIs targeted to support everything in the App Catalog, including add-ins • Automatic CDN hosting for code SPFx Roadmap
  • 44. • Developer Experience • SharePoint Framework Workbench 2.0: Development story beyond web parts with support for new component types on top of client-side web parts • Additional Yeoman Templates • Full Page Apps • Build SharePoint Framework apps, which render in full page mode, rather than as a client-side web part • List level: custom view item, edit item, delete item, add item • Page level: assign an app to a page to a full custom page experience SPFx Roadmap
  • 45. - Las herramientas de trabajo son feas… comandos y mas comandos - Proyecto de 35.000 archivos para producir UN archivo de código - Conflictos de autorización (no separación en WebParts) - Es código de cliente: como lo aseguro para que no me lo copien? - (Algo bueno, por favor) Comparado con el desarrollo de WebParts de Servidor, las de Cliente son mas fáciles de desarrollar (opinión personal) - (Otro bueno) Maquina de desarrollo de muy, muy bajo costo - Significan las WebParts de Cliente una resurrección del desarrollo para SharePoint? Lo malo, lo feo… y lo bueno
  • 46.
  • 47. - Nueva forma para crear WebParts (y personalizaciones) para SharePoint - SPFx esta aquí para quedarse (por el momento, al menos)… - Si no maneja JavaScript, comience a aprenderlo, lo va a necesitar… Preguntas Sumario
  • 48. Gold sponsors ______________ Silver sponsors Bronze sponsors Collaborate Platinum sponsor
  • 49. INSTALLATION 01 - Install NodeJS Long Term Support (LTS) (latest version) (https://nodejs.org/en/) 02 - Install npm --> npm install -g npm@3 03 - Install windows-build-tools --> npm install -g --production windows-build-tools 04 - Install Yeoman and Gulp --> npm install -g yo gulp 05 - Install Yeoman SharePoint generator --> npm install -g @microsoft/generator-sharepoint WEBPART 06 - Create directory --> md blabla --> cd blabla 07 - Create project with Yeoman (5 min) --> yo @microsoft/sharepoint 08 - Start VS Code (don't forget " .") --> code . 09 - Install dev. certif. (only one time) --> gulp trust-dev-cert DEPLOY TO LOCAL WORKBENCH 10 - Build and preview the WebPart --> gulp serve (stop with Ctrl+C) DEPLOY TO SHAREPOINT FROM LOCAL 11 - Generate the package for SP Catalog --> gulp package-solution (Pack in "..sharepointsolution") 12 - Start Gulp in dev environment --> gulp serve --nobrowser 13 - Install package .sppkg in Catalog ==> Install App is Site Coll ==> Install WebPart in page DEPLOY TO SHAREPOINT FROM SHAREPOINT LIBRARY 14 - Create Library in SharePoint 15 - In "config/write-manifests.json" --> use the Library full path as cdnBasePath (and Save) 16 - Create the files to deploy --> gulp bundle --ship ("--ship" for release build version) 17 - Copy the generated files --> (files in "..tempdeploy") to the Library 18 - Generate the package for SP Catalog --> gulp package-solution --ship (Pack in "..sharepointsolution") 19 - Install package .sppkg in Catalog ==> Install App is Site Coll ==> Install WebPart in page
  • 50. DEPLOY TO SHAREPOINT FROM SHAREPOINT CDN 20 - Configure SharePoint CDN --> Run Cmdlets to make one Library or folder the SharePoint CDN Needs to have the SP Online PowerShell Cmdlets already installed (https://www.microsoft.com/en- us/download/details.aspx?id=35588) $creds = Get-Credential Connect-SPOService -Url https://contoso-admin.sharepoint.com/ -Credential $creds Set-SPOTenant -PublicCdnEnabled $true New-SPOPublicCdnOrigin -Url "https://contoso.sharepoint.com/siteassets/folder1" 21 - Get the ID of the SP CDN Library --> Get-SPOPublicCdnOrigins (Copy the ID of the SharePoint CDN repository) 22 - In "config/write-manifests.json" --> use the following path as cdnBasePath (and Save) "https://publiccdn.sharepointonline.com/<tenant host name>/<ID of the SharePoint CDN>/<sub-path under the origin>" for example, if the Library is in the root of the Tenant: "https://publiccdn.sharepointonline.com/contoso.sharepoint.com/17280044dc65df7..." 23 - Create the files to deploy --> gulp bundle --ship ("--ship" for release build version) 24 - Copy the generated files --> (files in "..tempdeploy") to the SP CDN Library 25 - Generate the package for SP Catalog --> gulp package-solution --ship (Pack in "..sharepointsolution") 26 - Install package .sppkg in Catalog ==> Install App is Site Coll ==> Install WebPart in page DEPLOY TO SHAREPOINT FROM AZURE CDN - In Azure create a Resource Group - In the Resource Group create a Storage Account (example spfxstoragegavd) - In the Storage create a Blob Container (example ss01webpart) - In the Resource Group create a CDN Profile - In the CDN Profile create a CDN Endpoint (example ss01webpartendpoint) - In "config/deploy-azure-storage.json" --> Change the values (and save): account == The Storage Account Name (in the example spfxstoragegavd) container == The Blob Container Name (in the example ss01webpart) accessKey == In the storage account dashboard, choose Access Key in the dashboard and copy the first access keys - In "config/write-manifests.json" --> in the cdnBasePath use (and save): "https:// + "Endpoint hostname" + ".azureedge.net/" + Name of the Container in the Storage Blob + "/" in the example: "https://ss01webpartendpoint.azureedge.net/ss01webpart/") - Buil the assets (.js, .css, etc.) --> gulp bundle --ship - Deploy the assets to the Azure Storage --> gulp deploy-azure-storage - Generate the package for SP Catalog --> gulp package-solution --ship (Pack in "..sharepointsolution") - Install package .sppkg in Catalog ==> Install App is Site Coll ==> Install WebPart in page

Editor's Notes

  1. This slide is mandatory. Please do not remove.
  2. This slide is mandatory. Please do not remove and try to use it during Q&A at the end of your session. Thank you!