Quantcast
Channel: Blog
Viewing all 429 articles
Browse latest View live

SharePoint PnP Webcast – ALM APIs for SharePoint Framework solutions and add-ins

$
0
0

In this PnP Webcast, we concentrated on the new SharePoint Application Lifecycle Management APIs, which enable you to manage SharePoint Framework solutions and SharePoint add-ins in SharePoint Online. You can use these APIs for all needed operations around automating your customizations to be installed on SharePoint Online sites. Natively SharePoint Online provides REST APIs for the solution management, but you can also use community-driven PnP CSOM extension or PnP PowerShell cmdlets to automate your solution or add-in management.

Presentation covers following discussion points:

  • ALM API logical design
  • What is the ALM APIs providing?
  • Supported operations through REST, PnP CSOM and PnP cmdlets

Webcast demo shows following things:

  • Demonstration of different automation scenarios by using provide APIs
  • Using PnP PowerShell cmdlets for SharePoint Framework solution management

Webcast presenters: Erwin van HunenVesa Juvonen

The presentation used in this webcast is available from new PnP SlideShare locations at https://www.slideshare.net/SharePointPnP.

Video on YouTube.

Additional resources

See following resources on the covered topics.

What is SharePoint / Office Dev Patterns & Practices (PnP) webcast series?

SharePoint / Office Dev Patterns and Practices

SharePoint / Office Dev Patterns & Practices (PnP) webcast series covers different patterns, practices and topics around development with Office 365 and SharePoint. The majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release a new webcast weekly or bi-weekly with few slides and a live demo on the covered topic. All webcasts are published at the PnP YouTube channel with additional references to the existing materials.

PnP is a community-driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen in our GitHub repositories under dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open to anyone from the community. Download invite from http://aka.ms/SPPnP-Call

This is work done by the community for the community without any actual full-time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently, the program is facilitated by Microsoft, but already at this point, we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the Microsoft Tech Community (SharePoint Developer group).

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, SharePoint, Microsoft - 27th of November 2017


Announcing Office 365 CLI for managing your Office 365 tenant on any platform

$
0
0

Developers on all platforms build solutions for Office 365. Using the Office 365 CLI, they can manage the different settings of SharePoint and Office 365 no matter if they use Windows, macOS or Linux.

There are 1 million SharePoint and Office 365 developers across the world. Thanks to the various Microsoft investments spanning from Office web add-ins to the SharePoint Framework, these developers can build rich solutions on any platform. Using market-standard web technologies, they can apply their existing experience and build solutions for some of the 200.000 organizations worldwide using SharePoint as their collaboration platform.

While building solutions for SharePoint and Office 365 expands beyond the Windows operating system, managing many of the platform settings is possible only through PowerShell on Windows. To better support developers on other platforms, we are pleased to introduce the cross-platform Office 365 CLI.

Manage your Office 365 tenant on any platform

Office 365 CLI is a cross-platform command-line interface that you can use on any platform to manage some of your Office 365 settings, such as enabling the Office 365 CDNmanaging tenant properties or the application lifecycle of your SharePoint add-ins and SharePoint Framework solutions.

See the Office 365 CLI in action:

Getting started

Office 365 CLI is built in Node.js and distributed as an npm package. You can install it using npm by typing in the command line:


npm install --global @pnp/office365-cli

After installing the Office 365 CLI, start it, by typing in the command line:


office365

Running the `office365` command will start the immersive CLI with its own command prompt.

Start managing the settings of your Office 365 tenant by connecting to it, using the `spo connect <url>` site, for example:


o365$ spo connect https://contoso-admin.sharepoint.com

Depending on which settings you want to manage, you might need to connect either to your tenant admin site (URL with `-admin`) in it, or to a regular SharePoint site. For more information refer to the help of the command you want to use.
To list all available commands, in the Office 365 CLI prompt type `help`:


o365$ help

To exit the CLI, type "exit":


o365$ exit

The full documentation of the Office 365 CLI and its commands is available at https://sharepoint.github.io/office365-cli.

About the Office 365 CLI

Office 365 CLI is an open-source project driven by the SharePoint Patterns and Practices initiative. The project is built and managed publicly on GitHub at https://github.com/SharePoint/office365-cli and accepts community contributions. We would encourage you to try it and tell us what you think. We would also love your help! We have a number of feature requests that are a good starting point to contribute to the project.

“Sharing is caring”


SharePoint PnP team - 30th of November 2017

SharePoint PnP Webcast – Migrating to SharePoint Framework Extensions

$
0
0

In this PnP Webcast, we concentrated on having a closer look at the steps around transforming or migrating your existing JavaScript-based implementations in the SharePoint Online to be implemented as SharePoint Framework Extensions. There are multiple advantages of doing this transformation like that you will have centralized control on how and where your customizations are used in your SharePoint Online tenant with the capabilities of SharePoint Framework. SharePoint Framework extensions also work with "modern" sites, like with modern team sites and with communications sites. They enable you to extend the end user experience by adding, for example, additional widgets or functionalities on to the pages cross your Site Collection.

SharePoint Framework Extensions enable you to implement similar capabilities as with User Custom Actions or with JSLink property but in more structural and reliable way. Especially User Custom Actions based capabilities (JavaScript Embedding) have been dependent on the code taking a dependency on the dom structure of the HTML page. This might work for a while, but when the user interfaces of SharePoint Online will evolve, your JavaScript dependent on the dom structure of the page will break. This is where SharePoint Framework will help you for example with well-known page placeholders which provide you a capability to take a dependency on the page structure in the more reliable way. 

Presentation covers following discussion points:

  • Available SharePoint Framework Extensions
  • SharePoint Framework ExtensionExecution Logic

Webcast demo shows following things:

  • Walkthrough of example scenarios which are also available as step-by-step tutorials - see additional resources section below for links
  • Example scenario for UserCustomAction migration
  • Example scenario for JSLink migration
  • Example scenario for ECB menu migration

Webcast presenters: Paolo PialorsiVesa Juvonen

The presentation used in this webcast is available from new PnP SlideShare locations at https://www.slideshare.net/SharePointPnP.

Video on YouTube.

Additional resources

See following resources on the covered topics.

What is SharePoint / Office Dev Patterns & Practices (PnP) webcast series?

SharePoint / Office Dev Patterns and Practices

SharePoint / Office Dev Patterns & Practices (PnP) webcast series covers different patterns, practices and topics around development with Office 365 and SharePoint. The majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release a new webcast weekly or bi-weekly with few slides and a live demo of the covered topic. All webcasts are published at the PnP YouTube channel with additional references to the existing materials.

PnP is a community-driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen in our GitHub repositories under dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open to anyone from the community. Download invite from http://aka.ms/SPPnP-Call

This is work done by the community for the community without any actual full-time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently, the program is facilitated by Microsoft, but already at this point, we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the Microsoft Tech Community (SharePoint Developer group).

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, SharePoint, Microsoft - 4th of December 2017

SharePoint Framework 1.4 and new site updates now available

$
0
0

SharePoint Framework 1.4 tooling and packages are now available, bringing with them a new set of deployment tools as previously discussed in this blog post.

Asset Packaging - Simplify your SharePoint Framework Deployments

With SharePoint Framework 1.4, you can now package together all the resources your SharePoint Framework project uses, along with a descriptive manifest, into one package. The JavaScript, CSS, and other resources are automatically deployed to an integrated SharePoint CDN, dramatically simplifying the steps needed to deploy SharePoint Framework updates compared to separate CDN and package deployment processes.  

To get started with SharePoint Framework 1.4, please read the release notes, or watch the SharePoint Framework tutorial videos which now describe how you can take advantage of integrated asset packaging in your deployments.

More Deployment Flexibility with Site Collection App Catalogs

Also, SharePoint tenancies are also now fully enabled to support site collection app catalog deployment for both SharePoint Framework packages as well as SharePoint add-ins. With this, you can target specific packages to particular site collections – for example, deploying a set of Marketing Key Performance Indicator web parts solely to the site collection where a marketing department communication site is located.  Discover how you can use PowerShell to create site collection app catalogs for your SharePoint tenancy.


Site Collection App Catalog

As you start to use these capabilities, we welcome your issues and feedback via Github. We’re also monitoring your feature requests and votes via UserVoice, which helped influence these scenarios – so please let us know if there are additional capabilities that would streamline your scenarios. Happy coding!

SharePoint PnP Webcast – Including assets in SharePoint Framework solution packages

$
0
0

In this PnP Webcast, we concentrated on asset packaging, which is the default behavior in SharePoint Framework solutions starting from SharePoint Framework v1.4. Starting from version 1.4 JavaScript assets and other static solution files are automatically included in the sppkg file, which is deployed to app catalog. These assets are automatically hosted from the app catalog URL address. If Office 365 Public CDN is enabled in the tenant, it's automatically used when the SharePoint Framework solution files are being requested. If Office 365 CDN is not however enabled, assets are served directly from the app catalog site collection. 

Starting from version 1.4, solution assets are automatically included in the sppkg file. This behavior can, however, be controlled from the package-solution.json file with includeClientSideAssetsproperty.

Presentation covers following discussion points:

  • Deployment process for SharePoint Framework assets starting from 1.4 version
  • Why is asset packaging a great improvement for SharePoint Framework solutions?

Webcast demo shows following things:

  • How to control asset packaging feature using package-solution.json file
  • How asset packaging changes packaging process for SharePoint Framework solutions

Webcast presenters: Vesa JuvonenWaldek Mastykarz

The presentation used in this webcast is available from new PnP SlideShare locations at https://www.slideshare.net/SharePointPnP.

Video on YouTube.

Additional resources

See following resources on the covered topics.

What is SharePoint / Office Dev Patterns & Practices (PnP) webcast series?

SharePoint / Office Dev Patterns and Practices

SharePoint / Office Dev Patterns & Practices (PnP) webcast series covers different patterns, practices and topics around development with Office 365 and SharePoint. The majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release a new webcast weekly or bi-weekly with few slides and a live demo of the covered topic. All webcasts are published at the PnP YouTube channel with additional references to the existing materials.

PnP is a community-driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen in our GitHub repositories under dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open to anyone from the community. Download invite from http://aka.ms/SPPnP-Call

This is work done by the community for the community without any actual full-time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently, the program is facilitated by Microsoft, but already at this point, we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the Microsoft Tech Community (SharePoint Developer group).

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, SharePoint, Microsoft - 11th of December 2017

SharePoint PnP Webcast – Including assets in SharePoint Framework solution packages

$
0
0

In this PnP Webcast, we concentrated on asset packaging, which is the default behavior in SharePoint Framework solutions starting from SharePoint Framework v1.4. Starting from version 1.4 JavaScript assets and other static solution files are automatically included in the sppkg file, which is deployed to app catalog. These assets are automatically hosted from the app catalog URL address. If Office 365 Public CDN is enabled in the tenant, it's automatically used when the SharePoint Framework solution files are being requested. If Office 365 CDN is not however enabled, assets are served directly from the app catalog site collection. 

Starting from version 1.4, solution assets are automatically included in the sppkg file. This behavior can, however, be controlled from the package-solution.json file with includeClientSideAssetsproperty.

Presentation covers following discussion points:

  • Deployment process for SharePoint Framework assets starting from 1.4 version
  • Why is asset packaging a great improvement for SharePoint Framework solutions?

Webcast demo shows following things:

  • How to control asset packaging feature using package-solution.json file
  • How asset packaging changes packaging process for SharePoint Framework solutions

Webcast presenters: Vesa JuvonenWaldek Mastykarz

The presentation used in this webcast is available from new PnP SlideShare locations at https://www.slideshare.net/SharePointPnP.

Video on YouTube.

Additional resources

See following resources on the covered topics.

What is SharePoint / Office Dev Patterns & Practices (PnP) webcast series?

SharePoint / Office Dev Patterns and Practices

SharePoint / Office Dev Patterns & Practices (PnP) webcast series covers different patterns, practices and topics around development with Office 365 and SharePoint. The majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release a new webcast weekly or bi-weekly with few slides and a live demo of the covered topic. All webcasts are published at the PnP YouTube channel with additional references to the existing materials.

PnP is a community-driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen in our GitHub repositories under dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open to anyone from the community. Download invite from http://aka.ms/SPPnP-Call

This is work done by the community for the community without any actual full-time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently, the program is facilitated by Microsoft, but already at this point, we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the Microsoft Tech Community (SharePoint Developer group).

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, SharePoint, Microsoft - 11th of December 2017

Microsoft Graph Community Call: December 5th, 2017

$
0
0

The Microsoft Graph Community Call is our monthly event for developers to stay in sync with the Microsoft Graph API. On the first Tuesday of each month, we’ll share updates, tips and connect you to the product teams behind Microsoft Graph. In addition, we’ll have a technical deep dive on a specific topic: from tooling, to practical use cases, (eg. scripting, workflow automation) to highlighting how organizations leverage Microsoft Graph. At the end of each call, there’s an opportunity to ask us questions and share feedback.

This month, we re-capped the new APIs made available in Microsoft Graph since September, shared community contributions and walked through scenarios for calling Microsoft Graph from Python. Next month’s call will take place on January 2nd, 2018.

Watch the call here.

View the slide presentation below.

We look forward to having you join us next month!

SharePoint Patterns & Practices – December 2017 update

$
0
0

SharePoint Dev Ecosystem / SharePoint Patterns and Practices (PnP) December 2017 update is out with new contributions from the community to the community. This post contains all the details related to what was included with the release and what else has been happening in the SharePoint Dev ecosystem during the past month.

What is SharePoint Patterns & Practices (PnP)?

SharePoint / Office Dev Patterns and Practices

SharePoint PnP is a nick-name for SharePoint Dev Ecosystem activities coordinated by SharePoint engineering. SharePoint PnP is community driven open source initiative where Microsoft and external community members are sharing their learning's around implementation practices for SharePoint and Office 365. Active development and contributions happen in GitHub by providing contributions on the samples, reusable components, and documentation.

PnP is owned and coordinated by SharePoint engineering, but this is work done by the community for the community. The initiative is currently facilitated by Microsoft, but already at this point, we have multiple community members as part of the PnP Core team and we are looking to extend the Core team with more community members.

Notice that since this is open source community initiative, there’s no SLAs for the support for the samples provided through GitHub. Obviously, all officially released components and libraries are under official support from Microsoft. You can use SharePoint Developer group in the Microsoft Tech Community for providing input and to ask any questions about the existing materials.

Some key statistics around PnP program from November 2017

  • GitHub repository forks at most popular repositories in SharePoint GitHub organization 
  • Unique visitors during past 2 weeks in SharePoint organization repositories - 34207
  • Merged pull requests across SharePoint repositories (cumulative) - 4159
  • Closed issues and enhancements ideas cross SharePoint repositories (cumulative) - 2631
  • SharePoint Online CSOM NuGet package downloads (cumulative) - 319162
  • PnP Core component NuGet package downloads (cumulative) - 121692
  • Page views in SharePoint Dev pages at docs.microsoft.com during November 2017 - 625394
  • Unique tenants using PnP components during November 2017 - 8108
  • Http requests towards SharePoint Online from PnP components during November 2017 - 5545920557
  • SharePoint Dev YouTube channel had 24387 views with 148705 minutes watch time during November 2017

Main resources around SharePoint PnP and SharePoint development

December 2017 monthly community call

Agenda for the Tuesday 12th of December 2017 SharePoint Dev Ecosystem / Patterns and Practices community call at 8 AM PST / 5 PM CEST:

Monthly community call will get recorded and release to PnP YouTube channel typically within 24 hours after the recording is ended. If you have any questions, comments or feedback, please participate in our discussions in the Microsoft Tech Community under SharePoint developer group

SharePoint Dev Blog posts

Here are the latest blog posts and announcements around SharePoint development topics from dev.office.com/blogs.

PnP Webcasts

We started new PnP Webcast series in October 2015 and have continued releasing new videos since that. All new webcasts are released on PnP YouTube Channel. Old webcasts and other demo videos are also found in the PnP Channel 9 section. Here are the new webcasts released after the last monthly release. We are looking into continuing the releases of the webcast in the future using weekly or bi-weekly schedule depending on the topics to be covered.

General Dev, CSOM, PnP Core, PnP PowerShell SIG Bi-Weekly Call Special Interest Group (SIG)

General SP Dev, CSOM PnP Sites Core, PowerShell and Provisioning Special Interest Group (SIG) have bi-weekly meetings to cover the general SharePoint topics, CSOM and latest in the PnP CSOM core component, PnP PowerShell and in the PnP remote provisioning engine. These calls have also free Q&A section if you have any questions about SharePoint development in on-premises or in the cloud. Need to get a recommendation for your design or having a hard time with some APIs? - Drop by, ask a question and we'll help you.

You can download invite for the bi-weekly meeting from the following location. 

All SIG meetings are being recorded and are available for view from PnP YouTube Channel. Here are the latest recordings of the SIG calls.

  • 30th of November - Miscellaneous announcements. Preview of upcoming Site Designs and Site Scripts with PnP PowerShell. Manage modern pages with code. Building self-service site collection provisioning solution for modern sites.

SharePoint Framework (SPFX) and JavaScript Special Interest Group (SIG)

SharePoint Framework and JavaScript Special Interest Group (SIG) has bi-weekly meetings to cover latest changes in the SharePoint Framework side, from the engineering perspective and to cover also latest development related to the PnP JS Core library. These calls are designed to have 50%/50% of content and demos and there has been already great community demos on the new SharePoint Framework Client-side web parts. If you're interested in showing your code, just let us know.

All SharePoint Framework and JS SIG meetings are recorded, so that you can check the demos and discussions if you can't make the actual call. You can find the latest recordings from the PnP YouTube Channel. Here are the latest recordings.

  • 7th of December - Latest news on SharePoint Framework and PnP JS Core. Security Grid sample web part for showing permission details from site. SPFx property controls sample. 
  • 23rd of November - Latest news on SharePoint Framework. Updates on SharePoint Dev Roadmap. ALM APIs live demo. Site collection app catalog live demo. Asset packaging live demo. 
  • 9th of November - Latest news on SharePoint Framework. Serve.json usage with SPFx extension debugging. Instance notifications to web parts and extensions using webhooks. Mega menu implementation with SPFx extensions.

SharePoint Dev Ecosystem in GitHub

There are quite a few different GitHub repositories under the SharePoint brand since we wanted to ensure that you can easily find and reuse what's relevant to you. We do also combine multiple solutions to one repository so that you can more easily sync and get latest changes of our released guidance and samples. In general, we do recommend you to use the PnP sample search tool at dev.office.com for locating relevant material for you. This should be easier and faster than trying to locate relevant material from GitHub.

On top of the specific PnP repositories, PnP initiative also controls the new repositories under the SharePoint organization. 

Here's the current repository structure, including a short description for each of them.

What's supportability story around PnP material?

Following statements apply across all of the PnP samples and solutions, including samples, core component(s) and solutions, like PnP Partner Pack.

  • PnP guidance and samples are created by Microsoft & by the Community
  • PnP guidance and samples are maintained by Microsoft & community
  • PnP uses supported and recommended techniques
  • PnP implementations are reviewed and approved by Microsoft engineering
  • PnP is open source initiative by the community – people who work on the initiative for the benefit of others, have their normal day job as well
  • PnP is NOT a product and therefore it’s not supported by Premier Support or other official support channels
  • PnP is supported in similar ways as other open source projects done by Microsoft with support from the community by the community
  • There are numerous partners that utilize PnP within their solutions for customers. Support for this is provided by the Partner. When PnP material is used in deployments, we recommend being clear with your customer/deployment owner on the support model

Latest changes

SharePoint Framework samples

These are samples which are available from the SharePoint client-side web part sample repository at https://github.com/SharePoint/sp-dev-fx-webparts or from the SharePoint Framework Extensions repository at https://github.com/SharePoint/sp-dev-fx-extensions.  

  • New web part sample react-collapsible-textboxio allows contributors to create rich text content in modern SharePoint pages using collapsible sections and the third party Textbox.io editor
  • New web part sample react-securitygrid that uses React and Office-UI-Fabric to render a grid showing which users have access to which lists/libraries/folders/files on a Web
  • New web part sample js-propertycontrols-svg that displays a Scalable Vector Graphics (SVG) image using properties to customize how it is rendered. The web part utilizes the PnP SPFx Property Controls package (specifically the SpinButton and ColorPicker) to set these properties.
  • New web part sample react-list-form showing adding a list form to any page. It provides a working example of implementing generic SharePoint list forms using React and Office UI Fabriclibraries
  • New web part sample js-skype-status demonstrates how to use the UCWA JS SDK for Skype in the SharePoint Framework
  • New web part sample react-skype-status demonstrates how to use the UCWA JS SDK for skype with React based implementation
  • Updated web part react-content-query-webpart to support it also with SP2016 FP2 deployments
  • Updated web part vuejs-todo-single-file-component to include sample CRUD operations with Vue framework

  • New Application Customizer sample react-application-my favorites showing how to use page placeholders and right side panel for advanced end-user experience
  • New tutorial sample tutorial-migrate-ecbmenu showing how to migrate from ecb menus to SharePoint Framework Extension
  • New tutorial sample tutorial-migrate-jslink showing how to migrate from JSLink implementation to SharePoint Framework Field Customizer
  • New tutorial sample tutorial-migrate-usercustomaction showing how to migrate from UserCustomAction based JavaScript implementation to SharePoint Framework Extension
  • Updates to numerous other samples to polish the code and documentation

Reusable open source controls for SharePoint Framework

New reusable controls initiative was announced in Ignite 2017 during September. There are two new npm packages and source code repositories for the reusable controls which you can use in your SharePoint Framework solutions. We do welcome community contributions to these initiatives as well. There are two different repositories: sp-dev-fx-property-controls and sp-dev-fx-controls-react. Here are the changes on these repositories.

  • Controls updated to use latest SharePoint Framework version
  • New WebPartTitle control added
  • Call out support added for the property controls for additional description around the control

Community column formatting definitions

SharePoint Columns Formatting capability was released for First Release customers during October 2017. As part of the availability, we also announced the availability of open source repository for sharing different column formatting definitions. Following lists the changes in the column formatting area.

Office 365 CLI

Office 365 CLI was released in November 2017. This is an open source tool which enables you to controls tenant level properties in SharePoint Online or in Office 365 without the need of using PowerShell. SharePoint Online Management Shell is only available for Windows operating system. New commands during November are following.

  • spocustomaction get - gets information about the specific user custom action
  • spo app add - add an app to the specified SharePoint Online app catalog
  • spo app deploy - deploy the specified app in the tenant app catalog
  • spo app get - get information about the specific app from the tenant app catalog 
  • spo app install - install an app from the tenant app catalog in the site 
  • spo app list - list apps from the tenant app catalog 
  • spo app retract - retract the specified app from the tenant app catalog 
  • spo app uninstall - uninstall an app from the site 
  • spo app upgrade - upgrade app in specific site

PnP CSOM Core and Provisioning Engine

PnP CSOM Core component is a wrapper on top of native SharePoint CSOM and REST API, which simplifies complex scenarios with remote APIs, one of the example is the PnP Provisioning Engine for remote templates. The first version of the PnP remote provisioning engine was released with the May 2015 release. This list contains the main updates in this release:

  • Various small bug fixes and improvements
  • Added support for beta 2018-10 pnp provisioning schema
    • ALM at Provisioning Template level
    • Tenant Settings: App Catalog, CDN
    • New attributes for Client-Side Pages
    • New attributes for Navigation
    • Removed AddIns element
  • Provisioning engine changes
    • Schema v201801 preview included
    • ALM capability in preview
    • New token parsing for CustomAction IDs
    • Added support for custom JSLink in List/Library views for classic experience
    • Added support for attributes for FieldRefs in List/Library views
    • Fixes to better support DataRows updates
    • Fixes to better support Workflow updates
  • Updated to use latest SPO CSOM NuGet package
  • Unit/Integration test improvements
  • Updated base templates for the SPO, 2013 and 2016 - used in delta handling

See also https://testautomation.sharepointpnp.com for day-to-day results and executed tests.

PnP JavaScript Core Library

No actual updates on the Patterns and Practices JavaScript Core Library, but there have been active discussions on the package in Gitter channel. Here are the changes since last monthly communications. 

  • Support for SharePoint ALM APIs
  • Add support to delete multiple attachments
  • Add support for GetStorageEntity endpoint
  • Add capability of getting external lists items by getImteByStringId
  • Add support for SiteUserInfoList endpoint
  • Fixed and issue with getAs and caching not rehydrating objects from cache
  • Cleaned up utilities class to use shared clone method

This is a similar effort as what PnP initiative previously has done with the PnP CSOM Core Component together with the community. 

PnP PowerShell 

PnP PowerShell providers more than two hundred additional PowerShell cmdlets, which can be used to manipulate content in SharePoint Online and in on-premises (SP2013, SP2016). These cmdlets are additive for SharePoint Online management shell, which concentrate more on the administrative tasks with SharePoint Online. 

Here are the latest changes in the PnP PowerShell

  • Various small bug fixes, improvements and documentation updates
  • Added additional authentication option with Connect-PnPOnline allowing you use an existing Access Token for authentication
  • New cmdlet Add-PnPSiteDesign
  • New cmdlet Add-PnPSiteScript
  • New cmdlet Get-PnPSiteDesign
  • New cmdlet Get-PnPSiteScript
  • New cmdlet Get-PnPSiteDesignRights
  • New cmdlet Grant-PnPSiteDesignRights
  • New cmdlet Remove-PnPSiteDesign
  • New cmdlet Remove-PnPSiteScript
  • New cmdlet Revoke-PnPSiteDesignRights
  • New cmdlet Get-PnPClientSideComponent
  • New cmdlet Move-PnPClientSideComponent
  • New cmdlet Remove-PnPClientSideComponent
  • New cmdlet Set-PnPClientSideText
  • New cmdlet Set-PnPClientSideWebPart
  • Numerous other updates cross existing commands
  • Overall quality improvements and bug fixes
  • Updated automatically generated PnP PowerShell cmdlet documentation at docs.microsoft.com

PnP sample library

Here are updates across the PnP code sample library by the community on the code and documentation, which is a great way to contribute as well.

SharePoint Dev articles

SharePoint Dev articles are surfaced currently in docs.microsoft.com/en-us/sharepoint/dev. ´Since the last release, we have now merged also SharePoint PnP Solution guidance to docs.microsoft.com platform, so you'll only have one location to follow all relevant SharePoint Dev documentation and guidance. You can provide contributions to these documents by submitting documentation improvements using GitHub tooling. All of the SharePoint Dev docs are stored and surfaced from the sp-dev-docs repository

Here are new/updated articles on the SharePoint Development. 

PnP Guidance videos

You can find all PnP videos on our YouTube Channel at http://aka.ms/sppnp-videos. This location contains already a significant amount of detailed training material, demo videos, and community call recordings. 

Key contributors to the December 2017 update

Here’s the list of active contributors (in alphabetical order) since last release details in SharePoint Dev repositories or community channels. PnP is really about building tooling and knowledge together with the community for the community, so your contributions are highly valued across the Office 365 customers, partners and obviously also at Microsoft.

Thank you for your assistance and contributions on the behalf of the community. You are making a difference!

Companies: Here's the companies, which provided support for PnP initiative for this month by allowing their employees working for the benefit of others in the PnP initiative. There were also people who contributed from other companies during last month, but we did not get their logos and approval to show them in time for these communications. If you still want your logo for this month's release, please let us know and share the logo with us. Thx.

Affecto
aequos
Blue Meteorite
ClearPeople
Constellation Solutions
Content and Code
CPS
Digia
DMI
piasys
 Puzzlepart
 onebit software
 RapidCircle
 rencore
 SharePointalist
Skybow
Solution pour SharePoint
n8d
Sympraxis Consulting
Wortell
 


Microsoft people:
Here’s the list of Microsoft people who have been closely involved with the PnP work during last month.

Next steps

  • December 2017 monthly community call is on Tuesday 12th of December at 8 AM PT / 5 PM CEST / 4 PM GMT for latest release details with demos - Download recurrent invite to monthly community call with a detailed schedule for your time zone from http://aka.ms/sppnp-call.

PnP Resources in one picture - numerous links mentioned in this blog post

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, SharePoint, Microsoft - 12th of December 2017


Reusable controls for your SharePoint Framework solutions

$
0
0

The usage of SharePoint Framework keeps on growing and while there are already great solutions build, we have noticed that a lot of developers try to achieve the same thing. Also, many developers asked us to open source the first party solutions to learn from the SharePoint engineering team and re-use some of the code. 

We want to announce the availability of two types of libraries that include reusable SharePoint Framework controls. This allows you to speed up your development process by not rewriting these components for every project. 

Today the following types of controls types are available:

The two projects are coordinated by the SharePoint Patterns and Practices initiative and are open to community contributions.

Property pane controls

The property pane controls project contains a set of reusable controls that can be used while configuring the web part. Like, for example, a term picker control which allows you to select terms from various term sets without writing a lot of code.

Taxonomy control

The following controls are currently available:

The following controls are extended controls that show a callout next to the label

If you want to get started with these controls, check out the getting started documentation for these controls: https://sharepoint.github.io/sp-dev-fx-property-controls/getting-started/.

React controls

The React controls library contains a set of reusable controls that can be used in your React driven components. For example, a list view control which allows you to render your arrays as SharePoint like list views which allows sorting, grouping and other typical capabilities.

List view control

The following components are currently available:

  • FileTypeIcon - Component that shows the icon of a specified file path or application
  • ListView - List view component
  • Placeholder - Component that can be used to show an initial placeholder if the web part has to be configured
  • SiteBreadcrumb - Breadcrumb component
  • WebPartTitle - Title control for web parts in similar ways as many out-of-the-box web parts have

Share your ideas and how to contribute

The SharePoint Framework reusable controls is an open-source project driven by the SharePoint Patterns and Practices initiative. The projects are built and managed publicly on GitHub at https://github.com/SharePoint/sp-dev-fx-property-controls/ and https://github.com/SharePoint/sp-dev-fx-controls-react/. We accept community contributions. If you have ideas of controls you are currently missing, and want to see being added to the projects, please share these ideas via the appropriate project issue lists. We will be harvesting ideas and reusable patterns also from the out of the box code used by the out-of-the-box client-side web parts, so you will be seeing some familiar capabilities from those web parts in these controls.

Let’s make our lives easier by making these great controls together.

“Sharing is caring”


SharePoint PnP team / SharePoint Engineering - 15th of December 2017

SharePoint PnP Webcast – Site collection app catalog

$
0
0

In this PnP Webcast, we concentrated on the site collection app catalog features, which enables you to have SharePoint add-ins/apps or SharePoint Framework solutions in site collection scope. Tenant administrator can enable site collection app catalog by using SharePoint Online Management Shell in any site collection and after that site collection owners can release add-ins/apps or SharePoint Framework solutions specifically only to that site collection. 

Presentation covers following discussion points:

  • Logical architecture of site collection app catalog
  • Why is site collection app catalog important?

Webcast demo shows following things:

  • How to enable site collection app catalog by using SharePoint Online Management Shell?
  • How to use site collection app catalog for deploying your SharePoint Framework solution only to specific site collection?

Webcast presenters: Vesa JuvonenWaldek Mastykarz

The presentation used in this webcast is available from new PnP SlideShare locations at https://www.slideshare.net/SharePointPnP.

Video on YouTube.

Additional resources

See following resources on the covered topics.

What is SharePoint / Office Dev Patterns & Practices (PnP) webcast series?

SharePoint / Office Dev Patterns and Practices

SharePoint / Office Dev Patterns & Practices (PnP) webcast series covers different patterns, practices and topics around development with Office 365 and SharePoint. The majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release a new webcast weekly or bi-weekly with few slides and a live demo of the covered topic. All webcasts are published at the PnP YouTube channel with additional references to the existing materials.

PnP is a community-driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen in our GitHub repositories under dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open to anyone from the community. Download invite from http://aka.ms/SPPnP-Call

This is work done by the community for the community without any actual full-time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently, the program is facilitated by Microsoft, but already at this point, we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the Microsoft Tech Community (SharePoint Developer group).

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, SharePoint, Microsoft - 18th of December 2017

Announcing the beta release of the Microsoft Graph APIs for educational resources

$
0
0

The Microsoft Graph API provides a unified endpoint that enables you to interact with a wealth of resources and relationships in order to build intelligent apps. Today, we’re announcing the release of the Microsoft Graph education APIs. The education APIs enable you to enrich teaching and learning scenarios by integrating education resources like roster and assignment data into your apps.

Microsoft Graph enhanced with education resources map

Microsoft Graph enhanced with education resources

Connecting teachers to students by using roster data

Millions of students around the world use apps for everyday learning scenarios. This often requires the teacher or the school IT admin to keep the app up to date with the latest roster. With Microsoft Graph education APIs, apps can programmatically access the roster data dynamically and at no cost to keep in sync with the latest school roster. This data is powered by Microsoft School Data Sync, which brings student identity and roster information to Microsoft Azure Active Directory (Azure AD).

The roster APIs support the following scenarios, and more:

Assignments in Microsoft Teams

Microsoft Teams for Education was launched in June 2017,  as a communication hub for schools. Among its other capabilities, Microsoft Teams for Education also provides a built-in assignment service for managing assignments and grading. The education APIs in Microsoft Graph enable programmatic access to assignments, submissions, and grades to third-party applications. This empowers scenarios like:

Making roster sync easier for school IT admins

Microsoft School Data Sync serves as a bridge for bringing student identity and roster information into Azure AD. To set up this sync, school IT admins can use a CSV file or a supported SIS API connector. Now, admins can set up a sync using simple and easy-to-use sync management APIs. These APIs support the following scenarios, and more:

You can learn more about the Microsoft Graph education APIs by browsing the content at aka.ms/edugraph. If you’re interested in trying out the APIs, you can contact us via our partner signup page.

New SharePoint CSOM version released for SharePoint Online - December 2017

$
0
0

We are happy to announce the availability of new SharePoint Client-Side Object Model (CSOM) version targeted for the Office 365 or more specifically for SharePoint and Project Online. This release again contains updates on the existing SharePoint and Project CSOM assemblies. Notice that some of the below new capabilities do NOT work in normal tenants until the capability is truly released and enabled. There will be separate communications around availability fo the new capabilities when they are available.

You can find the latest CSOM package for SharePoint Online, including the Project Online CSOM assembly, from the NuGet gallery with an id of 'Microsoft.SharePointOnline.CSOM'. We are also working on updating the redistributable package at some point, but you can already right now start using some of these new capabilities in your solutions. We do recommend you to use the NuGet Package to gain access to the latest version, rather than downloading the SDK to your machine.

The version of the newly released CSOM package is 16.1.7206.1200. Previous versions of the NuGet have not been removed so that your existing solutions will continue working without issues and you can decide when the new version is taken into use. Notice that even though the NuGet version is increased to 16.1.7206.1200, actual assembly version of the released assemblies is 16.1.0.0. You can also check the version of the assemblies from the File Version attribute, which aligns with the NuGet version.

CSOM package visible in the NuGet gallery view at Visual Studio

SharePoint Online Management Shell has been also updated to match with this CSOM release. You can find a new set of cmdlets listed in this article. 

Notice that since this NuGet package is targeted to SharePoint Online, you cannot use it directly in on-premises environments (SharePoint 2013 or 2016). This is because of the server side dependencies of the APIs. CSOM versioning model and dependency to your target environment are clarified in following blog post - Using correct Client-Side Object Model (CSOM) version for SharePoint customizations. We have released separate NuGet packages for on-premises. See following blog post for additional details - SharePoint CSOM versions for on-premises released as NuGet packages.

New properties and methods across assemblies

Here's a raw list of all the changes in the classes, properties and methods within this package. 

Microsoft.SharePoint.Client

Following properties, classes and methods have been added.

  • public property Microsoft.SharePoint.Client.Alert.AllProperties
  • public property Microsoft.SharePoint.Client.AlertCreationInformation.Properties

  • public property Microsoft.SharePoint.Client.CamlQuery.AllowIncrementalResults

  • public property Microsoft.SharePoint.Client.List.IsEnterpriseGalleryLibrary
  • public method Microsoft.SharePoint.Client.ListCollection.EnsureClientRenderedSitePagesLibrary

  • public property Microsoft.SharePoint.Client.Site.HubSiteId
  • public property Microsoft.SharePoint.Client.Site.IsHubSite

  • public property Microsoft.SharePoint.Client.ViewCreationInformation.baseViewId

Microsoft.Online.SharePoint.Client.Tenant

Following properties, classes and methods have been added.

  • public method Microsoft.Online.SharePoint.TenantAdministration.Tenant.CreateGroupForSite
  • public class Microsoft.Online.SharePoint.TenantManagement.GroupCreationParams
  • public method Microsoft.Online.SharePoint.TenantManagement.Office365Tenant.CreateGroupForSite

Microsoft.ProjectServer.Client

Following properties, classes and methods have been added.

  • public property Microsoft.ProjectServer.Client.DraftAssignment.Delay
  • public property Microsoft.ProjectServer.Client.DraftAssignment.DelayTimeSpan
  • public property Microsoft.ProjectServer.Client.PublishedAssignment.Delay
  • public property Microsoft.ProjectServer.Client.PublishedAssignment.DelayTimeSpan

Following properties, classes and methods have been removed.

  • public property Microsoft.ProjectServer.Client.Assignment.Delay
  • public property Microsoft.ProjectServer.Client.Assignment.DelayTimeSpan

New PowerShell cmdlets in SharePoint Online Management Shell release

Following cmdlets have been added to the latest release of SPO Managment Shell. Notice that some of the below commands do NOT work in normal tenants until the capability is truly released and enabled. There will be separate communications around availability fo the new capabilities when they are released

  • Set-SPOSiteOffice365Group
  • Get-SPOHideDefaultThemes - renamed from Get-HideDefaultThemes
  • Set-SPOHideDefaultThemes - renamed from Set-HideDefaultThemes 

PowerShell documentation has been also moved to docs.microsoft.com platform and will be updated more frequently in the future.

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, OneDrive-SharePoint Engineering, Microsoft - 21st of December 2017

SharePoint PnP Webcast – Reusable controls for your SharePoint Framework solutions

$
0
0

In this PnP Webcast, we concentrated on the reusable controls which are available for your SharePoint Framework solutions. These controls are designed to increase your productivity when you are building your solutions for SharePoint. They are open-source and community driven controls, which are also reviewed by SharePoint engineering. There are two types of controls available: Web part property pane controls and content controls. The web part property pane controls can be used with any JavaScript framework to provide consistent web part property pane editing experience. Content controls are currently only provided for React based implementation, but we are looking into extending this effort for other JavaScript frameworks, depending on the demand and interest of the community.

Presentation covers following discussion points:

  • Quick intro to available controls
  • Why would you use these re-usable controls
  • Using controls in your solution

Webcast demo shows following things:

Webcast presenters: Elio StruyfVesa Juvonen

The presentation used in this webcast is available from new PnP SlideShare locations at https://www.slideshare.net/SharePointPnP.

Video on YouTube.

Additional resources

See following resources on the covered topics.

What is SharePoint / Office Dev Patterns & Practices (PnP) webcast series?

SharePoint / Office Dev Patterns and Practices

SharePoint / Office Dev Patterns & Practices (PnP) webcast series covers different patterns, practices and topics around development with Office 365 and SharePoint. The majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release a new webcast weekly or bi-weekly with few slides and a live demo of the covered topic. All webcasts are published at the PnP YouTube channel with additional references to the existing materials.

PnP is a community-driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen in our GitHub repositories under dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open to anyone from the community. Download invite from http://aka.ms/SPPnP-Call

This is work done by the community for the community without any actual full-time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently, the program is facilitated by Microsoft, but already at this point, we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback on SharePoint Development topics, PnP program or this blog post, please use the Microsoft Tech Community (SharePoint Developer group).

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, SharePoint, Microsoft - 2nd of January 2018

Microsoft Graph Community Call: Jan 2nd, 2018

$
0
0

The Microsoft Graph Community Call is our monthly event for developers to stay in sync with the Microsoft Graph API. On the first Tuesday of each month, we’ll share updates, tips and connect you to the product teams behind Microsoft Graph. In addition, we’ll have a technical deep dive on a specific topic: from tooling, to practical use cases, (eg. scripting, workflow automation) to highlighting how organizations leverage Microsoft Graph. At the end of each call, there’s an opportunity to ask us questions and share feedback.

This month, we went over API changes, UserVoice suggestions and walked through how to generate .NET models for /beta resources in the Microsoft Graph. Next month’s call will take place on February 6th, 2018.

Watch the call here

View the presentation here

We look forward to having you join us next month!

New Python Quick Start and samples for Microsoft Graph

$
0
0

We are pleased to introduce a new Microsoft Graph Quick Start experience for Python. This Quick Start walks you through building an application, including registering a new application and scaffolding the code to send a new email. This is a great way to get up and running quickly with a Python web app that calls the Microsoft Graph API.

Try out the new Python quick start

New Python samples

We’re also excited to introduce new scenario-specific samples that show you how to integrate Microsoft Graph functionality into your Python applications. These in-depth samples will guide you through the process of calling Microsoft Graph, from authentication, to sending mail, to paging through large collections (such as messages in inboxes). These samples explain how to accomplish the task and demystify the concepts behind the scenes.

Python Samples for send mail

Try the new Python samples today and let us know what you think!

We look forward to seeing what you’ll build with Python and Microsoft Graph!


SharePoint PnP Webcast – Asynchronous Pattern for Creating Modern SharePoint Sites

$
0
0

In this PnP Webcast, we concentrated on demonstrating how to build self-service site collection provisioning solution using an asynchronous pattern with Azure Functions or with Azure WebJobs. This pattern is widely used in the classic SharePoint Online self-service provisioning solutions and you can easily also use this kind of pattern with the modern experiences or simply modernize the backend running in the Azure side without potentially changing settings in your existing user interface. Video and sample also demonstrate the usage of the user's personal access token while provisioning the site collection. Using this model for the access token handling, you do not need to use app-only patterns on the Azure side with high permissions to your tenant.

In general, with SharePoint Online, you can take either advantage of the out of the box site provisioning experience, which also supports extensibility options with Site Designs and Site Scripts, or you can build a custom provisioning experience. Since the Site Designs and Site Scripts capability is a new functionality, there are many customers who have already build their own self-service solutions. In general, we do recommend on utilizing the out-of-the-box Site Designs and Site Scripts, if possible from your business and functional requirement perspective. If you, however, have requirements, which cannot be met with the out-of-the-box capabilities, you can always take advantage of Azure and remote SharePoint APIs (REST, CSOM, Graph) to fulfill your requirements.

Presentation covers following discussion points:

Webcast demo shows following things:

  • Solution structure and design in Visual Studio
  • Demonstration of the solution user interface and end-user experience
  • Azure Function processing of the provisioning requests
  • Code explanation on how the requests are added to Azure Storage Queue for processing and how the sites are provisioned using PnP CSOM extensions
  • Needed configuration in Azure Active Directory for the demonstrated solution

Webcast presenters: Paolo PialorsiVesa Juvonen

The presentation used in this webcast is available from new PnP SlideShare locations at https://www.slideshare.net/SharePointPnP.

Video on YouTube.

Additional resources

See following resources on the covered topics.

What is SharePoint / Office Dev Patterns & Practices (PnP) webcast series?

SharePoint / Office Dev Patterns and Practices

SharePoint / Office Dev Patterns & Practices (PnP) webcast series covers different patterns, practices and topics around development with Office 365 and SharePoint. The majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release a new webcast weekly or bi-weekly with few slides and a live demo of the covered topic. All webcasts are published at the PnP YouTube channel with additional references to the existing materials.

PnP is a community-driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen in our GitHub repositories under dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open to anyone from the community. Download invite from http://aka.ms/SPPnP-Call

This is work done by the community for the community without any actual full-time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently, the program is facilitated by Microsoft, but already at this point, we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the Microsoft Tech Community (SharePoint Developer group).

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, SharePoint, Microsoft - 8th of January 2017

SharePoint Patterns & Practices – January 2018 update

$
0
0

SharePoint Dev Ecosystem / SharePoint Patterns and Practices (PnP) January 2018 update is out with a summary of the latest guidance, samples, and solutions from SharePoint engineering or from the community for the community. This post contains all the details related to what was included with the release and what else has been happening in the SharePoint Dev ecosystem during the past month.

What is SharePoint Patterns & Practices (PnP)?

SharePoint / Office Dev Patterns and Practices

SharePoint PnP is a nick-name for SharePoint Dev Ecosystem activities coordinated by SharePoint engineering. SharePoint PnP is community driven open source initiative where Microsoft and external community members are sharing their learning's around implementation practices for SharePoint and Office 365. Active development and contributions happen in GitHub by providing contributions on the samples, reusable components, and documentation.

PnP is owned and coordinated by SharePoint engineering, but this is work done by the community for the community. The initiative is currently facilitated by Microsoft, but already at this point, we have multiple community members as part of the PnP Core team and we are looking to extend the Core team with more community members.

Notice that since this is open source community initiative, there’s no SLAs for the support for the samples provided through GitHub. Obviously, all officially released components and libraries are under official support from Microsoft. You can use SharePoint Developer group in the Microsoft Tech Community for providing input and to ask any questions about the existing materials.

Some key statistics around SharePoint Dev topics from December 2017

Main resources around SharePoint PnP and SharePoint development

January 2018 monthly community call

Agenda for the Tuesday 9th of January 2018 SharePoint Dev Ecosystem / Patterns and Practices community call at 8 AM PST / 5 PM CEST:

Monthly community call will get recorded and release to PnP YouTube channel typically within 24 hours after the recording is ended. If you have any questions, comments or feedback, please participate in our discussions in the Microsoft Tech Community under SharePoint developer group

SharePoint Dev Blog posts

Here are the latest blog posts and announcements around SharePoint development topics from dev.office.com/blogs.

PnP Webcasts

We started new PnP Webcast series in October 2015 and have continued releasing new videos since that. All new webcasts are released on PnP YouTube Channel. Old webcasts and other demo videos are also found in the PnP Channel 9 section. Here are the new webcasts released after the last monthly release. We are looking into continuing the releases of the webcast in the future using weekly or bi-weekly schedule depending on the topics to be covered.

General Dev, CSOM, PnP Core, PnP PowerShell SIG Bi-Weekly Call Special Interest Group (SIG)

General SP Dev, CSOM PnP Sites Core, PowerShell and Provisioning Special Interest Group (SIG) have bi-weekly meetings to cover the general SharePoint topics, CSOM and latest in the PnP CSOM core component, PnP PowerShell and in the PnP remote provisioning engine. These calls have also free Q&A section if you have any questions about SharePoint development in on-premises or in the cloud. Need to get a recommendation for your design or having a hard time with some APIs? - Drop by, ask a question and we'll help you.

You can download invite for the bi-weekly meeting from the following location. 

All SIG meetings are being recorded and are available for view from PnP YouTube Channel. Here are the latest recordings of the SIG calls.

  • 28th of December - Cancelled due holiday season
  • 14th of December - Miscellaneous announcements. A detailed look at new provisioning schema capabilities in PnP provisioned engine. Scanner Framework for SharePoint Online.
  • 30th of November - Miscellaneous announcements. Preview of upcoming Site Designs and Site Scripts with PnP PowerShell. Manage modern pages with code. Building self-service site collection provisioning solution for modern sites.

SharePoint Framework (SPFX) and JavaScript Special Interest Group (SIG)

SharePoint Framework and JavaScript Special Interest Group (SIG) has bi-weekly meetings to cover latest changes in the SharePoint Framework side, from the engineering perspective and to cover also latest development related to the PnP JS Core library. These calls are designed to have 50%/50% of content and demos and there has been already great community demos on the new SharePoint Framework Client-side web parts. If you're interested in showing your code, just let us know.

All SharePoint Framework and JS SIG meetings are recorded, so that you can check the demos and discussions if you can't make the actual call. You can find the latest recordings from the PnP YouTube Channel. Here are the latest recordings.

  • 4th of January - PnP JS Core library updates, SharePoint Framework update, Reusable controls for SPFx - Live demos on upcoming Graph capabilities with SPFx, reusable controls and async with JSOM.
  • 21st of December - PnP JS Core library updates, SharePoint Framework update, Q&A.
  • 7th of December - Latest news on SharePoint Framework and PnP JS Core. Security Grid sample web part for showing permission details from the site. SPFx property controls sample. 

SharePoint Dev Ecosystem in GitHub

There are quite a few different GitHub repositories under the SharePoint brand since we wanted to ensure that you can easily find and reuse what's relevant to you. We do also combine multiple solutions to one repository so that you can more easily sync and get latest changes of our released guidance and samples. In general, we do recommend you to use the PnP sample search tool at dev.office.com for locating relevant material for you. This should be easier and faster than trying to locate relevant material from GitHub.

On top of the specific PnP repositories, PnP initiative also controls the new repositories under the SharePoint organization. 

Here's the current repository structure, including a short description for each of them.

What's supportability story around PnP material?

Following statements apply across all of the PnP samples and solutions, including samples, core component(s) and solutions, like PnP Partner Pack.

  • PnP guidance and samples are created by Microsoft & by the Community
  • PnP guidance and samples are maintained by Microsoft & community
  • PnP uses supported and recommended techniques
  • PnP implementations are reviewed and approved by Microsoft engineering
  • PnP is open source initiative by the community – people who work on the initiative for the benefit of others, have their normal day job as well
  • PnP is NOT a product and therefore it’s not supported by Premier Support or other official support channels
  • PnP is supported in similar ways as other open source projects done by Microsoft with support from the community by the community
  • There are numerous partners that utilize PnP within their solutions for customers. Support for this is provided by the Partner. When PnP material is used in deployments, we recommend being clear with your customer/deployment owner on the support model

Latest changes

SharePoint Framework samples

These are samples which are available from the SharePoint client-side web part sample repository at https://github.com/SharePoint/sp-dev-fx-webparts or from the SharePoint Framework Extensions repository at https://github.com/SharePoint/sp-dev-fx-extensions.  

  • New solution sample ColumnFormatter web part which has been designed to give the full power of VS Code editing while providing easy to use templates and wizards all within the browser! The goal is to make writing and applying Column Formatting easier and quicker for both developers and end users.

  • New List View Command Set sample js-command-lock-item illustrates the ability to lock/unlock selected item/document for the current user. 
  • New Application Customizer sample react-msal-bot sample demonstrates how to integrate a bot within a SharePoint Online portal supporting authentication to access Azure AD protected APIs like Microsoft graph resources.
  • New Field Customizer Sample react-field-text-analytics-api which demonstrates how to use the Text Analytics API (Cognitive Services) to render a sentiment icon based on the text of a field in the List
  • Updates to numerous other samples to polish the code and documentation

Reusable open source controls for SharePoint Framework

New reusable controls initiative was announced in Ignite 2017 during September. There are two new npm packages and source code repositories for the reusable controls which you can use in your SharePoint Framework solutions. We do welcome community contributions to these initiatives as well. There are two different repositories: sp-dev-fx-property-controls and sp-dev-fx-controls-react. Here are the changes on these repositories.

  • Controls updated to use latest SharePoint Framework version
  • Added the option to the people picker to allow you to specify single or multi-selection
  • General improvements and adjustments

Community column formatting definitions

SharePoint Columns Formatting capability was released for First Release customers during October 2017. As part of the availability, we also announced the availability of open source repository for sharing different column formatting definitions. Following lists the changes in the column formatting area.

SharePoint Site Script samples

SharePoint Columns Formatting capability was released for First Release customers during October 2017. As part of the availability, we also announced the availability of open source repository for sharing different column formatting definitions. Following lists the changes in the column formatting area.

Office 365 CLI

Office 365 CLI was released in November 2017. This is an open source tool which enables you to controls tenant level properties in SharePoint Online or in Office 365 without the need of using PowerShell. SharePoint Online Management Shell is only available for Windows operating system. Changes since last monthly summary are following.

PnP CSOM Core and Provisioning Engine

PnP CSOM Core component is a wrapper on top of native SharePoint CSOM and REST API, which simplifies complex scenarios with remote APIs, one of the example is the PnP Provisioning Engine for remote templates. The first version of the PnP remote provisioning engine was released with the May 2015 release. This list contains the main updates in this release:

  • Various small bug fixes and improvements
  • Updated to use latest SPO CSOM NuGet package
  • Completed support for 2018 01 schema - this will be the default schema as of the February 2018 release
  • Support for installing apps in synchronous mode
  • Unit/Integration test improvements
  • Updated base templates for the SPO, 2013 and 2016 - used in delta handling

See also https://testautomation.sharepointpnp.com for day-to-day results and executed tests.

PnP JavaScript Core Library

No actual updates on the Patterns and Practices JavaScript Core Library, but there have been active discussions on the package in Gitter channel. Here are the changes since last monthly communications. 

  • Preparations for the new library version from the @pnp scope
  • Improved docs for the new @pnp scope version
  • Various smaller improvements and fixes

This is a similar effort as what PnP initiative previously has done with the PnP CSOM Core Component together with the community. 

PnP PowerShell 

PnP PowerShell providers more than two hundred additional PowerShell cmdlets, which can be used to manipulate content in SharePoint Online and in on-premises (SP2013, SP2016). These cmdlets are additive for SharePoint Online management shell, which concentrate more on the administrative tasks with SharePoint Online. 

Here are the latest changes in the PnP PowerShell

  • Various small bug fixes, improvements and documentation updates
  • Updated signing certificate to use Microsoft organization certs
  • New cmdlet Get-PnPTenantAppCatalogUrl 
  • New cmdlet Start-PnPWorkflowInstance
  • New cmdlet Get-PnPWorkflowInstance
  • New cmdlet Get-PnPUnifiedGroupMembers
  • New cmdlet Get-PnPUnifiedGroupOwners
  • Numerous other updates cross existing commands
  • Overall quality improvements and bug fixes
  • Updated automatically generated PnP PowerShell cmdlet documentation at docs.microsoft.com

Notice. Due signing certificate change in December 2017 release, you cannot update PnP PowerShell cmdlet using the upgrade-module command. You'll need to first uninstall and then re-install module.

PnP sample library

Here are updates across the PnP code sample library by the community on the code and documentation, which is a great way to contribute as well.

  • Updates to Business.StarterIntranet solution sample, which is a generic, enterprise intranet publishing solution, compatible with SharePoint 2013, 2016 and SharePoint Online.

SharePoint Dev articles

SharePoint Dev articles are surfaced currently in docs.microsoft.com/en-us/sharepoint/dev. ´Since the last release, we have now merged also SharePoint PnP Solution guidance to docs.microsoft.com platform, so you'll only have one location to follow all relevant SharePoint Dev documentation and guidance. You can provide contributions to these documents by submitting documentation improvements using GitHub tooling. All of the SharePoint Dev docs are stored and surfaced from the sp-dev-docs repository

Here are new/updated articles on the SharePoint Development. 

PnP Guidance videos

You can find all SharePoint Dev videos on our YouTube Channel at http://aka.ms/sppnp-videos. This location contains already a significant amount of detailed training material, demo videos, and community call recordings. 

Key contributors to the January 2017 update

Here’s the list of active contributors (in alphabetical order) since last release details in SharePoint Dev repositories or community channels. PnP is really about building tooling and knowledge together with the community for the community, so your contributions are highly valued across the Office 365 customers, partners and obviously also at Microsoft.

Thank you for your assistance and contributions on the behalf of the community. You are making a difference!

Companies: Here's the companies, which provided support for PnP initiative for this month by allowing their employees working for the benefit of others in the PnP initiative. There were also people who contributed from other companies during last month, but we did not get their logos and approval to show them in time for these communications. If you still want your logo for this month's release, please let us know and share the logo with us. Thx.

aequos
ClearPeople
CPS
DMI
piasys
 Puzzlepart
 onebit software
 rencore
 Storm Technology
 SharePointalist
Wortell
 


Microsoft people:
Here’s the list of Microsoft people who have been closely involved with the PnP work during last month.

Next steps

  • January 2018 monthly community call is on Tuesday 9th of January at 8 AM PT / 5 PM CEST / 4 PM GMT for latest release details with demos - Download recurrent invite to monthly community call with a detailed schedule for your time zone from http://aka.ms/sppnp-call.

PnP Resources in one picture - numerous links mentioned in this blog post

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, SharePoint, Microsoft - 8th of January 2018

New version of Office 365 CLI (v0.4.0)

$
0
0

We have just published a new version of the Office 365 CLI with more commands, support for building scripts and completing your input when using the CLI directly in the shell.

Office 365 CLI

Office 365 CLI is a cross-platform CLI that allows you to manage various configuration settings of Office 365 no matter which operating system you use.

While building solutions for Office 365 expands beyond the Windows operating system, managing many of the platform settings is possible only through PowerShell on Windows. As more and more users work on non-Windows machines, it's inconvenient for them to have to use a Windows virtual machine to configure their tenants. The Office 365 CLI allows them to configure their tenants no matter which operating system they use.

New version of Office 365 CLI - v0.4.0

After a busy holiday season, we are proud to share with you a new version of the Office 365 CLI (v0.4.0) packed with new capabilities.

Working with custom actions

If you're working with modern sites in Office 365 you can extend their capabilities by building SharePoint Framework client-side web parts and extensions. If you want to use your extensions consistently across the different sites, you will most likely deploy them using a tenant-wide deployment and register them in the different sites using a custom action.

Velin Georgiev did an awesome job shipping commands for the Office 365 CLI that allow you to manage custom actionsin your sites. Using the Office 365 CLI you can see which custom actions are configured on your sites, get detailed information about each custom action and register new custom action, which is exactly what you need to install SharePoint Framework extensions on your sites.

For example, to enable a tenant-wide deployed SharePoint Framework application customizer, you would execute:


o365 spo customaction add -u https://contoso.sharepoint.com/sites/test --title "YourAppCustomizer"
--name "YourName" --location "ClientSideExtension.ApplicationCustomizer"
--clientSideComponentId b41916e7-e69d-467f-b37f-ff8ecf8f99f2
--clientSideComponentProperties '{"testMessage":"Test message"}'

For more information and examples of managing custom actions using the Office 365 CLI, see the documentation at aka.ms/o365cli.

Managing site collection app catalogs

Using site collection app catalogs, SharePoint tenant administrators can decentralize the management and scope the deployment of SharePoint add-ins and SharePoint Framework solutions to specific sites. For more information on working with site collection app catalogs, see the official documentation at https://docs.microsoft.com/en-us/sharepoint/dev/general-development/site-collection-app-catalog.

For this latest release, Andrew Connell contributed commands that allow you to manage site collection app catalogs in your tenant.

To add a site collection app catalog to your site, execute:


o365 spo site appcatalog add --url https://contoso.sharepoint/sites/site

To disable the site collection app catalog, execute:


o365 spo site appcatalog remove --url https://contoso.sharepoint/sites/site

Git animation on using Office365 cli to enable site collection app catalog

For more information and examples of managing site collection app catalogs using the Office 365 CLI, see the documentation at aka.ms/o365cli.

Working with modern team and communication sites

Office 365 customers can create modern team and communication sites to collaborate and communicate more effectively.

Using the Office 365 CLI you can now manage a modern team and communication sites in your Office 365 tenant.

To create a modern team site with a public group, execute:


o365 spo site add --type TeamSite --alias team1 --title "Team 1" --isPublic

To create a communication site for your team or department, you would use:


o365 spo site add --type CommunicationSite --url https://contoso.sharepoint.com/sites/marketing --title Marketing

Office 365 CLI commands for managing sites in Office 365 are very useful if you want to automate creating sites or have to create a number of sites in a bulk.

For more information and examples of managing modern sites using the Office 365 CLI, see the documentation at aka.ms/o365cli.

Managing SharePoint Online service principal

When working on the CLI, we're trying to balance including functionality that you can use already today with functionality that you will be able to use very soon. Office 365 is evolving continuously and we strive to keep up with changes so that you can benefit from the latest capabilities introduced in Office 365.

In the latest version of the Office 365, we added a few commands related to service principal and permission requests as well as managing the Azure Active Directory. More information about these commands is coming soon, once the related Office 365 capabilities have been made publicly available.

Build scripts using the Office 365 CLI

Initially, when we started working on the CLI, it could be used only in immersive (interactive) mode. In the command line, you would type office365oro365, which would take you to a separate command prompt where you could execute the different commands available as a part of the Office 365 CLI.

If you look at how developers and administrators use PowerShell, you'll see two different scenarios. They manage their tenant by executing cmdlets directly in the shell or they build scripts that they can execute to perform a number of tasks. The way the Office 365 CLI was built initially, supported the first scenario. With the improvements included in this release (v0.4.0), the Office 365 CLI supports being used directly in the shell and building scripts.

For example, to deploy all apps not yet deployed in the tenant app catalog, you could execute in Bash:


# get all apps available in the tenant app catalog

apps=$(o365 spo app list -o json)

# get IDs of all apps that are not deployed notDeployed
AppsIds=($(echo$apps | jq -r '.[] | select(.Deployed == false) | {ID} | .[]'))
# deploy all not deployed apps
for appId in$notDeployedAppsIds; do
o365 spo app deploy -i $appId --skipFeatureDeployment
done

You could do the same even easier in PowerShell:


# get all apps available in the tenant app catalog
$apps = o365 spo app list -o json | ConvertFrom-Json

# get all apps that are not yet deployed and deploy them
$apps | ? Deployed -eq$false | % { o365 spo app deploy -i $_.ID --skipFeatureDeployment }

Notice though that if you are using PowerShell, you can also use the native PnP PowerShell cmdlets to achieve this exactly the same operation, which would be absolutely the recommended pattern in Windows platform.

For more information about how Office 365 CLI supports building scripts, see the blog post introducing the capability at https://blog.mastykarz.nl/building-scripts-office-365-cli/.

Command completion

As we're adding more and more commands to the Office 365 CLI, we find it important that you can keep working with it efficiently. To help you navigate between the different commands, we added support for completing your input: when typing a command, either press TAB twice to see the list of available options, of start typing and press TAB once, to complete your input.

Gif animation demonstrating command completion

Office 365 CLI command completion works in Zsh, Bash and Fish as well as in Clink (cmder) on Windows. You can find information on how to set it up in the documentation.

Bug fixes and improvements

The latest release includes a number of bug fixes and minor improvements. For the full list of changes see the release notes in the Office 365 CLI documentation.

Sharing is caring

This release wouldn't be possible without community contributions from Andrew Connell, Velin Georgiev and many others who tried our betas and provided their feedback, as well as past contributions to other PnP efforts, such as PnP PowerShell, PnP Core ComponentandPnP JavaScript Core Library.

Next steps

Install the latest version of the Office 365 CLI from npm using:


npm i -g @pnp/office365-cli

or yarn:


yarn global add @pnp/office365-cli

We regularly publish a beta version with the latest additions and improvements which you can install using:


npm i -g @pnp/office365-cli@next

If you have any feedback or questions, don't hesitate to reach out on twitter with hashtag #Office365CLI or on the Office 365 CLI Gitter.

“Sharing is caring”


SharePoint PnP Team - 10th of January 2018

SharePoint Dev Ecosystem / Patterns and Practices - January 2018 monthly community call recording

$
0
0

SharePoint monthly community call is our monthly event for SharePoint developers to stay up to date on the latest changes around SharePoint Dev topics from engineering and community perspective. This monthly community call is on every second Tuesday of each month where we go through the summary of SharePoint Development engineering news, latest guidance, status in UserVoice, community contributions and other relevant topics. You can also check the latest updates from the monthly summary at dev.office.com/blogs. You can download a recurrent invite for these monthly calls from http://aka.ms/spdev-call.

This is the recording of SharePoint Dev Ecosystem / Patterns and Practices (PnP) community call from Tuesday 9th of January 2018.  

Here's agenda for January 2018 call with direct links to specific sections, if you want to directly jump to a specific topic (will redirect your browser to SharePoint Dev YouTube Channel).

Notice that we had an unfortunate failure on the recording and we lost some of the call content. Paolo's demo was post recorded, but we missed Alex's demo completely. 

Full recording - available from SharePoint Developer YouTube channel - http://aka.ms/spdev-videos.

Presentation slides used in the call

Additional resources

Additional resources on covered topics and discussions.

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, SharePoint, Microsoft  - 10th of January 2018

SharePoint PnP Webcast – Introduction to SharePoint Site Designs and Site Scripts

$
0
0

In this PnP Webcast, we concentrated on introducing the new SharePoint Site Design and Site Script capability, which enables you to modify the default out-of-the-box site collection provisioning logic in SharePoint Online. Site Design defines the configuration for the end users and also which Site Scripts will be activated when a new modern team site or communication site is created using the out-of-the-box experience. You can also configure a default site design, which is automatically applied to modern SharePoint site collections regardless from where they are actually created. 

Site Designs and Site Scripts are currently in Preview status (January 2018) with an initial set of actions and capabilities. You can also extend the provisioning logic by associating a Microsoft Flow to be activated as part of the site collection creation. This enables you to further customize the provisioning logic as needed. 

Presentation covers following discussion points:

  • Introduction to Site Designs and Site Scripts
  • Site provisioning flow
  • Anatomy of a site script
  • Supported actions - Status on January 2018
  • Extensibility with Site Designs

Webcast demo shows following things:

  • Creation of Site Design and Site Script
  • Using PowerShell to configure the settings in Office 365 tenant
  • End-user experience with Site Designs
  • Role of the Site Design and the Site Script - why there is one-to-many connection
  • Extending Site Design provisioning flow with Azure Functions or Azure WebJobs by using the Trigger Flow Action

Webcast presenters: Erwin van HunenVesa Juvonen

The presentation used in this webcast is available from new PnP SlideShare locations at https://www.slideshare.net/SharePointPnP.

Video on YouTube.

Additional resources

See following resources on the covered topics.

What is SharePoint / Office Dev Patterns & Practices (PnP) webcast series?

SharePoint / Office Dev Patterns and Practices

SharePoint / Office Dev Patterns & Practices (PnP) webcast series covers different patterns, practices and topics around development with Office 365 and SharePoint. The majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release a new webcast weekly or bi-weekly with few slides and a live demo of the covered topic. All webcasts are published at the PnP YouTube channel with additional references to the existing materials.

PnP is a community-driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen in our GitHub repositories under dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open to anyone from the community. Download invite from http://aka.ms/SPPnP-Call

This is work done by the community for the community without any actual full-time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently, the program is facilitated by Microsoft, but already at this point, we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the Microsoft Tech Community (SharePoint Developer group).

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, SharePoint, Microsoft - 22nd of January 2018

Viewing all 429 articles
Browse latest View live