<?xml version="1.0"?>
<oembed><version>1.0</version><provider_name>Microsoft 365 Developer Blog</provider_name><provider_url>https://devblogs.microsoft.com/microsoft365dev</provider_url><author_name>SharePoint team</author_name><author_url>https://devblogs.microsoft.com/microsoft365dev/author/sharepoint_team/</author_url><title>Updated SharePoint Framework developer training package now available (2019)! - Microsoft 365 Developer Blog</title><type>rich</type><width>600</width><height>338</height><html>&lt;blockquote class="wp-embedded-content" data-secret="LiUd1pHdiB"&gt;&lt;a href="https://devblogs.microsoft.com/microsoft365dev/updated-sharepoint-framework-developer-training-package-now-available-2019/"&gt;Updated SharePoint Framework developer training package now available (2019)!&lt;/a&gt;&lt;/blockquote&gt;&lt;iframe sandbox="allow-scripts" security="restricted" src="https://devblogs.microsoft.com/microsoft365dev/updated-sharepoint-framework-developer-training-package-now-available-2019/embed/#?secret=LiUd1pHdiB" width="600" height="338" title="&#x201C;Updated SharePoint Framework developer training package now available (2019)!&#x201D; &#x2014; Microsoft 365 Developer Blog" data-secret="LiUd1pHdiB" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" class="wp-embedded-content"&gt;&lt;/iframe&gt;&lt;script type="text/javascript"&gt;
/* &lt;![CDATA[ */
/*! This file is auto-generated */
!function(d,l){"use strict";l.querySelector&amp;&amp;d.addEventListener&amp;&amp;"undefined"!=typeof URL&amp;&amp;(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&amp;&amp;!/[^a-zA-Z0-9]/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret="'+t.secret+'"]'),o=l.querySelectorAll('blockquote[data-secret="'+t.secret+'"]'),c=new RegExp("^https?:$","i"),i=0;i&lt;o.length;i++)o[i].style.display="none";for(i=0;i&lt;a.length;i++)s=a[i],e.source===s.contentWindow&amp;&amp;(s.removeAttribute("style"),"height"===t.message?(1e3&lt;(r=parseInt(t.value,10))?r=1e3:~~r&lt;200&amp;&amp;(r=200),s.height=r):"link"===t.message&amp;&amp;(r=new URL(s.getAttribute("src")),n=new URL(t.value),c.test(n.protocol))&amp;&amp;n.host===r.host&amp;&amp;l.activeElement===s&amp;&amp;(d.top.location.href=t.value))}},d.addEventListener("message",d.wp.receiveEmbedMessage,!1),l.addEventListener("DOMContentLoaded",function(){for(var e,t,s=l.querySelectorAll("iframe.wp-embedded-content"),r=0;r&lt;s.length;r++)(t=(e=s[r]).getAttribute("data-secret"))||(t=Math.random().toString(36).substring(2,12),e.src+="#?secret="+t,e.setAttribute("data-secret",t)),e.contentWindow.postMessage({message:"ready",secret:t},"*")},!1)))}(window,document);
/* ]]&gt; */
&lt;/script&gt;
</html><thumbnail_url>https://devblogs.microsoft.com/microsoft365dev/wp-content/uploads/sites/73/2019/01/spfx-training-package-promo.png</thumbnail_url><thumbnail_width>1308</thumbnail_width><thumbnail_height>736</thumbnail_height><description>We are pleased to announce the availability of a&#xA0;completely updated SharePoint Framework training package which is targeted to be used for self-learning or for redelivering provided material as a local training delivery inside of your own company or for your customers. All materials are provided for you to reuse anyway you preferred without any needs for asking permissions or notifying anyone ("sharing is caring").</description></oembed>
