PnP Webcast - SharePoint Framework Modern Search Web Part

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
[Music] so welcome everybody this is SharePoint patterson practices the webcast and this time we're covering something insanely cool so an insanely cool stuff which is available for anybody today take advantage from the PNP repositories contributed by the community which is the SharePoint framework modern shape assert web part and this is really really really really cool functionality which has been built by numerous persons and there's this multiple persons contributing that but the main developers of this one has been absolutely Frank corny and then tear out has added a really cool capabilities on the web part as well my name is Erin and I'm a senior program manager from SharePoint engineering but I will not be actually presenting on this one so I will let Frank and Terrell to actually do the real presentation so we'll get the information for in the right way but let's do a quick intros in here so let's start first from you Frank so who are you and what's your role in the in the web part because it's my own company based in Canada Montreal and this solution with sterile yep and Frank a lot on other other kids up at the other rip other samples as well in the in the PMP site but now tear out what about you so who are you yes thank you I am I am obviously to fight developer and I work in puzzle part in Norway and I've been using PMP webparts for a long time now and was found the time for me to start contributing myself so I've been contributing some extra functionality to the search social finance red-pawed excellent thank you tear out and and and it's actually cute to see how the the nowadays the technology also works in a way that we were obviously people have contributed even though people are working from Canada and Norway and whatever so it doesn't matter it's brilliant technology and now let's actually deep drive on the web part itself and I'll let Frank actually take it away doing the introductions and let me know because I'm explaining all the video Watchers as well I'm the person who's clicking the the presentation so Frank let me know when we move forward on the slides yeah sure so a quick introduction and I will start with simple questions of why this webpart and I will ask this question by another question so do you miss the old content so - apart from the on premise one that would be a good summary of why these web parts so you may see in this web part as another name as modern ways but on such web part you will see reacted search refiners so this is basically the the same the main goal of this Web part is to fill the gap regarding the search capabilities in the modern UI so actually we have some limitation right now with the with this search in the middle on UI so there is no way to create a custom search Center like before so you can you can't add your own search box your search wizard web part and your refiners and customize like according new requirements so it can be very difficult for this specific use case and about the components you have only the highlighted content web part which is quite limited for advanced in i/o so you can choose for multiple sources and select your fields and so on then you don't have a fine control variable sub square e or the way the results are displayed even if you have some built in that's a displacement you can say I want this metadata here I want this title in bold and so on so the main goals and objectives for these reports is to provide the way to customize the search experience in the modern UI so the original ID was taken from the been taken from the real content query web part which is another another report using templating features and we producing the content query web part from the on premise world so the modern search way part it's basically the same concept as the contents of a part the old contents of a part and as a theory components because we've the modern search well actually you have not only one web Portsmith but two you have the search box and a search results web part which are independent issue so main goal is to fill the gap like I said for search based component the modal UI and it has to be super generics and flexible I use this webpart for my customers projects and the the many requirements it's always the same things the the requirement is about how I can displays results in the way I want I want to configure the query according my information architecture but the the technical part is always the same so first of all I don't want to even do it every time so I built it's a web part super flexible and super generic and for end users it has to be very friendly so they don't have to to know about about the search but they can they can do a customization very easily so this is the main goals and objective for this this web part so let's go through the the available features to be before we got there actually just Frank are we reiterating what we were saying so and that's a really important point as well because this way part is is highly customizable or configurable let's put it this way not customizable configurable it's right turn to use and you can actually define the temp out good templates and and the gif animation is awesome because it actually presents how you can modify the templates and and that is really in the classic SharePoint that we were using then XSLT to make that happen what are we using with this web part how does it actually work from a defining a template yeah so it's like the old display templates mechanism so we use an HTML Javascript templating engine which is handlebars and the bus sorry so for an end user perspective it's yes to know the this language HTML and CSS to perform some basic action let's say at the field for result items or let's add a meta data and so on so it's selected all these play templates mechanism yeah absolutely Maxim's cool now and available features you mentioned that quite a few interesting capabilities which is out of the box capabilities does not yet at least yet hub right anything one of the other two box web part does not have all of the K all of these capabilities at least yet so anything what you want to really pinpoint from the list of things yes first of all there is the search query configuration so like I said you can fine-tune your query so select the keywords the query template the selected fields you want so if you know the keyword query language this is this is you can configure configure your query you can also connect the source box and multiple search results so you can build complete search center within your page you have also like we said the templating feature so basically the built-in feature use Android bars to create some basic HTML CSS templates you can use also external files if you don't want to embed you Tom Paine with Tom place directly in the components you have a built-in previews for of his documents and 5065 videos not streaming of Microsoft's doing but office uses five videos we have also a result type features to select a specific template for a condition let's say you want a template for yeah for Word documents you can can do something like that you ever saw the refiners supports with multilingual values you can add refiners or according to your requirement or with sauce options and and cool options like Beijing zuv or business supports so a lot of built-in features so it only requires configuration either in your web part directly on in your shopping tenant but you have also adult features so these features are they require additional development but they are supported within the web parts the first is the search query enhancements using NLP tools so to recognize some entities inside your query and apply or modify the query input for the search with those web parts and the other one is the custom order renderer so this feature was made bad towers turret I will let you explain the goal of this feature okay thank you so the main goal or the main problem I saw with handlebars even though it's really powerful is that you can't really hook into JavaScript events so we thought of a way to hook in custom-built SharePoint framework components and let them receive the data from the social finest web part and display them on a node in the view or on a HTML node so what this means is that developers can use or create and as perfect web part and hook into the methods they need to hook into and then get the data and display them in the way they prefer and also who came to Yahveh script events and for example used obviously a fabric react library if they prefer that so it's a little bit easier to get like this generic generic Microsoft year as well yep absolutely really cool stuff and the dose would be the customer interest would be the ones which you then creating a customer case or based on a deployment fine that's how it works yeah we cover the case when you are pretty pretty limited with underbust on place if you want to inject dynamic features let's say to enter a clique or something it's better to use customer and the rest for this because in are you yeah absolutely absolutely makes sense and we'll see all of this in in practice quite now quickly still before we go to the demo so where do we actually get this and and what are the learnings around the web part yes it is available through the PNP repository the SP dev solution repository so this is not a specific sample is the solution so so go to the s/pdif solution repository and some things that are good to know this is designed specifically for shop and online so you can't use it or you have to modify it to use it for unpromising the latest a fix 1.7.1 version and even if you don't use this webpart directly for your search so now you can you can just see the code because it also showcases multiple aesthetics concepts and patterns i think about especially the dynamic data and the connection between multiple web parts and also dynamic loading and performance optimization that you can see in this web part and if you want to add some features or fix some burrs pull requests are very welcome on this project finally if you have some issues or question with this solution go to the issue list and the s/pdif solution with auditoria and mention either meal Terral door Michael and we wouldn't show your question as that yeah chance has to clarify papa is Michael's Vincent work as well so I never understood why he's using Papa as his his alias but hey that's everybody can choose their own alias that's fine now really cool stuff and let you see the wet part in practice so let's go to the actual demo and see how this web part actually works after I did this simple solution to your site you know able to add these reports on your page here I've created an empty page from a communication site and I will show you the first use case in i/o for this web part which is the static query configuration to display static sets of results with a new page so to do that I will grab these search results web part and configure a base query so on the first page of the property pane the first option for me is to configure a base query so here I can configure I can enter either full text terms like give me all the documents containing SharePoint with the content or title or I can request a specific property here or I can request for all the contents using the specific character here the special character in so in this box you will have to use the keyword query language syntax of some point to define your base query on the next page you can define your query more precisely so for those who are familiar with such API this is basically the same options you are here so the first one is the query template the query templates is used to add some terms or values to your base query so the first token the search terms is basically replaced by the base query terms so in this case this and you can use some out-of-the-box tokens like sides or if I want to request on a specific scope it's a collection okay I can use for instance the site collection token so this webpart supports all several tokens Auto debauch tokens but we've defined also additional tokens for more advanced scenario so to demonstrate this capability let's say I want to filter this set of resource based on on specific page property so in this given page define a taxonomy value with specific terms so here it's of SV 65 and I want to filter this set of results according to this value so to do this I can use a special token which is the page token so that the internal name of the column I want to use here it's volume and because it's the taxonomy value I can choose I can choose to use the level of this in : or either the the table ID and as you can see the result is filter accounting my page value it means if I change the value here for let's say a point and I say if I go back here the results are displayed according to this value so this is for the curvy template to get all the tokens supported by this webpart you can go on the readme file within the repository the github repository and you will see all the supported out-of-the-box tokens and like I showed you the page token and so on so this is for the query template now we're gonna talk the result source parameter so in this way pal you are able to use specific result source like the old content such web part and to do this I will create a new is also within the site so you can use results we'll define in the site or in the tenant it doesn't really matter so to do this I will create new one let's say I want office 365 documents talking about 365 so we configure very basic where we with documents with 55 in the title save and to interact with the web part we have to get the idea of the weather sauce so to get it just click on the newly created result source and in the URL use this specific ID and put it in the text box here and as you can see the query defined in my vessel sauce applies here so this is for the red sauce identifier the next option is the initial sort order so this option by default sort these results by specific value so here is the created date and the size so here you can choose to use your own values and the direction you want to use so ascending descending or to use to not use the any any sort order so you have to make sure if you use some values here you have to make sure this manage poverty here is suitable is configured as suitable within the search schema so the next option is also sort option only more targeted to end user within the UI so in this option I'm able to specify like before like the previous option a manage property here so let's say I want to use the I want to sort my result on the modified date here is the friendly name displayed in the UI so the modified date here and if I specify some field here you will see a new a new control here in the UI allow you to sorts the result dynamically so you have the ascending and descending option for the soft order and you can also add multiple here and it will appear in this combo box here the with this option the sword is applied on what field at the time so so I'll be careful of this the next option of the web part is the ability to support wearables so quibbles with pebbles you are involved basically to change the query dynamically based on certain keywords or to promote some links to some links according to certain keywords so to demonstrate that I've created in my site settings some query rules so for the defaults shop ones source I have created a career wall Hill to display some promoted wizards to display some links based on specific keywords so here for the 365 keyword and sharpen keyword I want to display some static links already defined links so for link where we can specify the title the URL and quick description here if I save this for the wall and I go back here and enable this option I can test my keyword here so if I type 365 I have my link displayed here based on this keyword so it is a convenient way to promote some content based on keywords ok so the next option now is selected properly I won't talk about this properly now we will see it in the styling configuration so I will jump to the refiner option we final allow you to filters to filter the results dynamically based on certain property so by default you have some filter defined so the created date size and all the taxonomy tag tags apply to your content but you can define your or or you can just remove all the refiners to to to ID the filter button but if I want to apply my own filters I will have to specify my search managed properly so he'll make sure your probably is defined as refine able so basically we have to use the predefined manage properly like with variables doing or refine able data and so on and you can use the ideas here instead of the programmatic value let's say so here i've defined a property based on the taxonomy value and I can show the friend need display name on the filter panel so let's say to show the document type I configure here and if I go on the filter I have now my newly created value with all the corresponding values here so I can filter values as you can see my filter values that display in English because my site languages in English so everything is fine but let's say I want to configure my filters in nother language so for instance I will switch my side to French so if I go to the language setting and if I switch to French and I go back to my search page so my side my side is in French and my referral values are still in English so it's basically a limitation of some point for the taxonomy refiners so these webparts for the automatic translation to cover this you skate for multilingual infinite so to use the automatic translation you will have to configure your source schema in a special way so to do this I will go to my search schema and define a new refundable manage properly so nice a schema if I take the refiner property I used before you can see I have now two refiner findable strings define here this is the one I used but if I want to to benefit off the automatic translation I have to create a new refiner world by refundable swing properly let's use the tax ID crawled properly okay so if I take this one here and I go back to the configuration of my webpart and I add this here document type I did you get the difference and if I here you will see the difference so here based on the text hopefully and here is the one based on the tax ie property so this value are translated automatically based on the equivalent user language site use of the site language sorry so it can be useful very useful for multilingual internet so this way you are able to update those level let's say live so I will show you this right now if I go back the site settings and to the terms for ten store settings let's say I want to update the form value in French right [Music] and I go back here you will have your your level updated automatically here with that they need to recall something order so it can be pretty convenient to to update your taxonomy schema toxemia hierarchy on the fly so if I go back to the last option of the source code the source query configuration the last option is the ability to configure the number of results displayed on this web part so very basic option can choose the number here and this is pretty it for the first second page of configuration about the query and in the the next page we will talk about the styling options the study options will allow you to customize the display of the search results according to your requirements so we begin with the first options here so the first option is the ability to configure a title for your web part so this title will be displayed in edit mode and display mode okay the next option is the ability to control if it is better to show nothing if the query doesn't get any result or a friendly message so if I go here and type something really weird in this in edit mode you will have a message saying this specific query doesn't get any result and in display mode you will have basically nothing if I go get back here I'll check this option basically you will have a friendly message appearing here so we revert this query the next option is the ability to show the result code for this query so in 30 on according to requirements and the last option is the ability to show a page in control at the bottom of the component so the number of pages are automatically defined and this option works with the previous settings allowing to configure the number of item per page so the number of pages is determined automatically according to the number of results and you can switch paging another query to to get new set of results let's review now the templating feature of this web part so like the old content search were part of shop points you are able to customize the way results are displayed within the components so like the old display templates capability so in these web parts we provide two default layouts for results so the first one is the list layout coming with cool feature like document preview so I can with this layout display preview of an office document so it works for PowerPoint Word Excel pdf so you have an interactive preview of document directly within the results itself so it works for office documents but also for videos for office 65 office 365 video so I will show you it is right now so if I go to the site setting I will grab the video results of the built-in video with all sauce for shopping for fifty sixty five videos so what I need the ID of this visual source and if I go here risk up to the whole tenants I have already a couple of videos here and the same concept if I click here I can play I can play this video result so it works only for a 50 to 65 video and night and not Microsoft swing so we're back here the other layouts provided tile layouts or another way to display results and if you are not satisfied with these layouts you have the ability to customize your own experience so this is much like the old display template feature you have the choice to start from let's say blank template just by clicking here you have the basic structure to format your result according to your requirements or you can just start from an existing template so the basic scenario is I want to show a specific metadata from my information educated architecture so let's say I want to keep the least layout but I just want to add some field here so you can start from here and click here you have the code for this template and let's say I want to add the older meta data so basically I will get the same same structure and I have the title copy-paste this line and the cool thing here is that we can just use the fields name here so let's say I want to use the manage property holder what I have to do is type this value here and save and it doesn't work why it doesn't work because before using any custom or any out-of-the-box manage properties you will have to specify these properties in selected properties to be able to use it within your templates so I want to use the author manage property I have to specify it here and as you can see I will have the name written here so this is very important to define your properties here before using within your template with templates you have also the ability to use some helpers so beyond the scenes handlebars is used to generate a template and to build a template so this is basically HTML with some funky helpers so for instance I want to display the title of my result in uppercase so how I can do that so by default you have access to all handlebars helpers within your template so all you have to do is write temper the helper name and you mirror and by this way you as you can see you can update the way result our display so this is a really cool feature and you have a lot of helpers too that you can use within your template so you can review all the helpers directly in the handlebar helper repository on github so feel free to take a look so you can modify your templates let's say in line by providing your template contents directly in the web part so from a technical point of view this content is saved within the property bag of this web part or another scenario is if you want to centralize all your templates and distribute all new templates for multiple web parts for this scenario you have the ability to specify an external template to your web part so let's say I want to use an external top plane I go to let's say default documents library to store all my templates you have an external template so all I have to do is to specify the path of this template here so it named external dot HTML and all night my result will be displayed with this template so here it's a very basic template just to say this is an external top light but this is basically the same the same ID we define the topic in the next seven file in HTML so this capability this feature is very powerful if you want to decentralize are you template and control the experience over your site and when you configure an external template you are not able to update it from the web part okay so this is for the the global templating feature but if you want to specific conditions of specific let's say display for specific condition let's say I want to display a PowerPoint document this way and what document this way and so on it can be difficult to to do this logic within a template exists because it's a global template a lot of code and so on so and you do want to make a lot of let's say condition logical condition within global template so solve this issue in this problem we have a result types feature so the original type feature is just like the result type feature from the old content search web part and it works like this so if I go to this option I have the ability to to write a template for a condition okay so let's say I want to display world documents in a way and poor-poor documents in the way all I have to do is to write the manage property I want to use so this property you have to specify it in the selected properties like I did for the author probably you have a bunch of built-in operators for probably so equals contains and so on and so on so let's say I want to target word document so what I can do is let say contains dock here I can provide a template for this specific item for only Word documents so here for a test I will just write Road documents just to show you and I can do this also for I can add multiple condition so let's say file type contains PT and this one is poor points document and I said and here is the result so with this feature I can apply specific display for specific conditions so like ideal in the configuration what document is our display in a specific way and PowerPoint this is the same so it's a very powerful feature to customize the experience according to specific conditions and or to yeah bold very customized experience so like the previous functionality so the previous feature you have also the ability to specify an external template for for a specific visual type so let's say the PowerPoint document I wants to use an external top light here you go you have the same the same capability here one of the challenges with using handlebars to display the search data is that handlebars cannot handle descriptive ins it is a pure display engine we have made an alternative solution that is more similar to classic search display templates that uses SPF X instead the display templates are bundled as application customizers in a separate app package this means that we need to install them before we can use them you when the app is installed the new renderers will be automatically visible from the property pain of any search refiners webpart on the site as you can see here two new template options are visible similar to the other renders we have also added support for templating just open the property pane go to the last page and press the configure button here you may choose from a list of properties that you have chosen to search for in your search settings and map them to different fields when we say that we will be updated to display our chosen field instead let's try that again let's use file type save another file type is displayed as the secondary hammer if you want to create your own code renders you can find the source code of the examples in the SP dev solutions repository on github the source code is found in the same folder as the react search refinery sled park now we're going to talk about the other web part coming with this solution which is these search box web part and we're going to connect it with these search results web part on the same page so to do this I will add new search box what part and go to my search results configuration and as you can see there is a field here that allows me to connect with an existing source so this feature this field comes directly from the new feature the dynamic data features coming with the 1.7 shop confirm version so these features allows you to connect webparts and extensions on the same page so let's use this field to connect myself back so I have some available sources on the page I will talk about the built in page environment source later but I will show you first the search bus connection so what I want from the search box is basically the input the the keywords typed by the users so I will select the roll user search query and I have another option here so these options is especially useful if you want to provide a default query so it just like the base quite a static configuration quai I showed you before but it is especially useful if we have nothing to get from the input at the beginning for it since if you refresh the page you have nothing in the third word and you want to display default results so you can provide it as a base query so let's take a look to the sauce box option itself so the search box has multiple options the first one is to connect this suppose to a dynamic data sauce also so this scenario would be useful to grab some values and to populate the input control with information from another source let's say we want to grab the as tag from the URL so the URL fragment and inject it to the search box automatically so for this we use the page environment built-in source and select this URL fragment this way everything the URL change we're gonna get the hashtag injected to the to the search box and I will show you this right now from the default list layout we have some regenerated tags coming from the item metadata and we with this tag we build a specific hashtag in the URL making another query and because we connected the search box with the hashtag this value is automatically which we from the search box and because the search box is connected to the search result we are we've cascade this behavior so it can be very very useful to to filter your results dynamically so I go back to my sunspots environment so it's sauce box web part the other options for my search box is to enable the query suggestion so before enabling this option to configure suggestion I will have to go to the central administration of my tenant so if I go here on the SharePoint administration site I go to the search option such Center and I have something called suggestions the web part only supports the static list of keywords so there is no automatically reduced suggestions based on what you click and what you get from the results this is basically a text file with some keywords so I have configured some keywords so already so we'll show you let's say I want to so here you go you have some basic keywords here as text file and these keywords will be showed by somebody the search box it can take up 24 hours to get these values for your search box so just be careful so if I enable suggestion here it means if I start to type some things I will have to suggest and provide it to me according to what I type so it can be especially useful if you want to come to also of some normalize keywords in your company or something so that's it for for the search box option so after knitting words those both with one component but you can see with the dynamic data we are able to connect multiple instance of the social support part with a single instance of the search wizard webparts so I will show you yeah let's say I want to add two search results so we can build a search center this way very easily here and I will provide default query and use the list layout will configure the other one to the same here search box and I will provide another and use let's say another layout so this configuration I will have different set of results based on multiple instance so you can build a complete search center with this concept it's very easy to to build so I can go to my homepage and turn it on page just play tea here but I can add the sauce box here and I have an option an air to send the query to a new page so here I will provide the UL of my preview page which is this search copy this link well I have the ability to choose the behavior of the opening behavior so I can use the current tab or open a new tab I will just you send a query to a new tab and if I save here oops and as you can see the keyword is sent through the hashtag and because I've connected my Salzberg to the URL fragment this keyword is passed to the sauce bug and then to my search results so you can cascade all the connections from the keywords of multiple instances within your pages so this is a really powerful combination to build completes search center the last options of the search box concern the search query enhancements capability using natural language processing services like Microsoft Lewis you can see it as sharp one query wall plus plus so instead of making an exact match of keywords and update the query the search can be dynamically we can benefit from Microsoft Lewis and other connective services to extract intense and entity from the user inputs so we can apply custom logic if I enable this option in the web part I can provide a service URL so if I go back to my solution code you will see two folders at the top so the first one is the s perfect folders containing all the web parts code and you have a functions folder so the funks functions folder is another function that will interact with other Microsoft cognitive services so before studying we have to create some with application so we've provided some sample application here we have one application per language to get better recognition results so you can import this file directly in the Loess bottle so if I go to my Louis portal I can import the design from here now if I go in specific application we define some basic intents and entities so the first intent is a very basic one it means the user wants to search for something and we've provided some sample you Terrance's with keywords some entities if I go to the entities we have for the first entities that we have with the key phrase entity which is pre-built entities provided by Microsoft it helps you recognize relevant keywords in you turrets so this entities cannot be trained it means that if you go back to an intense I want to map specific keyword to these entities you can't so in the real words that I you you want you much use your own entities and match to your own keywords so let's say I want to add another sample give me I can train this specific utterance to map my own entities once I once I've done it I can train my application and publish so because the other function interact with microsoft going to services you will have to create firts on as your keys so you will have to go to the azure portal and create some subscription key to interact with these services so we will need to create one for the Loess service the being spell and the text analytics the text analytics is used to detect the language from the user input and redirect to the right Louis model and the spell check we used to correct the user input once you've created this keys you will have to set up your local settings view and map your keys directly in this file so to use this function go to open a new console and go to the functions folder build the application and start the function once started you have here a URL local off URL that you can use directly in your web board I can enable the debug mode to see the output from the SEO function and I can choose to use either the lowest aging endpoint or the prediction input so this legend corresponds to the lowest publish option here so if I go to the manage and endpoint you have some different slots that you can use to publish your application so here I will use the production and publish to the projection endpoint here and I will use the prediction in point so it means if I go back to my search box here and I enter this specific you will see the entities I mapped before in my application so we have the key phrase entities recognized automatically by the built in entity and now my own entities appear here also so once I've done this I can choose to connect this webpart to another component in my page so it can be a search result webpart so let's say I want to connect it to a search result and consume this information from the search box so here the search box expose the NN search query that you can use your home property and your home component so you can create component that consume entities are intense and display the information accordingly so if I go back in my as a function and inspect the code the logic we will see the algorithm here is pretty simple once average with the entities and intense I just create a new search query that can be used in other components on my page but in the real world scenario you might want to use your custom logic here to extract entities and do something with it another cool feature of using Microsoft Lewis as such proxy easy as you can get search logs directly from the application in the Loess portal you can export logs for a specific application as a CSV file this way you can see all the users queries and you can see what users are looking for new sites and improve your models filled with application consequently by refining entities and intense I hope you enjoyed this presentation feel free to test these components within your tenant you have all the installation instruction from the with me files so you can take a look and feel free to log some issues or suggestions directly on get up thank you one of the challenges with using handlebars to display the search data is that handlebars cannot handle you have a script events it is a pure display engine we have made an alternative solution that is more similar to classic search display templates that uses SPF X instead the display templates are bundled as application customizers in a separate app package this means that we need to install them before we can use them you when the app is installed the new renderers will be automatically visible from the property pain of any search refiners that part on the site as you can see here two new template options are visible similar to the other renders you we have also added support for templating just open the property pane go to the last page and press the configure button here you may choose from a list of properties that you have chosen to search for in your search settings and map them to different fields when we say we will update it to display our chosen field instead let's try that again let's choose file type save another file type is displayed as the secondary handler if you want to create your own code renders you can find the source code of the examples in the SP dev solutions repository on github the source code is found in the same folder as the react search refinery survey part and there we go really really really cool stuff and obviously the the demo and the webcasts the demo is quite long but that's demo is long because and there's quite a lot of capabilities so hopefully the people who are watching the video you actually watch to and understood how flexible the web part is and and what's possible and now any any last words from a Frank or Tirat from your side you have all the information in the demo so feel free to ask your question if you didn't understand very well or want me to explain more but you have all the information inside the repository as well so so feel free to use it yep and what about Utah routes any last words no I think I think the demo covers it [Laughter] but thank you both for joining and thank you for an awesome awesome community contribution it's really great to say this is a this is a great wave part which Frank started and then Michael is jumped in and then Terrell jumped in and it's kind of an evolving together as a team which is a really really great thing and it because that that that's really the power of the community we learn from each other we extend the common knowledge and common samples what we thought together and so this is a crate create an example of that success but thank you both for joining and we'll definitely hopefully we'll have a new webcast in the future with both of you so thank you very much thank you thank you thank you bye [Music]
Info
Channel: Microsoft 365 Community
Views: 28,049
Rating: 4.7741938 out of 5
Keywords: SharePoint, Development, PnP, Dev, search, web, part, framework, SPFx, open-source, community, sample, guidance, code, reuse, github
Id: g41nvRVwtds
Channel Id: undefined
Length: 62min 35sec (3755 seconds)
Published: Tue Mar 05 2019
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.