Announcing the retirement of yo teams
Microsoft Teams

Announcing the retirement of yo teams

(Cross posted, with some delay, from the Microsoft 365 Community blog) A farewell to the Microsoft Teams apps generator that kicked off the Microsoft Teams custom app development movement. Why we are retiring yo teams? Yo teams is a Yeoman generator that helps developers to create Microsoft Teams apps open source frameworks using TypeScript, based on a similar pattern as the widely successful SharePoint Framework stack. It was first created in 2016 by Wictor Wilén, a Microsoft MVP and Teams developer, as a way to simplify and streamline the development process for Teams apps. Since then, yo teams has grown to become one of the most popular and widely used tools for Teams app development, with over 100,000 downloads and hundreds of GitHub stars.

Building apps for Teams, Outlook and Office with yo teams
YoTeams

Building apps for Teams, Outlook and Office with yo teams

Today at //Build we at Microsoft announced that the long awaited support for Collaborative apps in Teams Personal Tabs and Messaging Extensions now is available for usage in Office.com, Outlook and Outlook on the web. This update to Teams apps is based on the new Promise based Teams JS SDK version 2.0 and the just published Teams Manifest 1.13. Announcing Yo Teams version 4 Through the Microsoft 365 Platform Community (PnP) we have also released a brand new (preview) version of yo teams that supports both this new Teams JS SDK as well as the updated schema. All so you can build Teams applications, on your terms, that also works in Outlook, Office.com and Outlook on the web.

Happy 5th anniversary Yo Teams!
YoTeams

Happy 5th anniversary Yo Teams!

Five years! It’s been five years seen I first published the Microsoft Teams apps generator - yo teams, and in a few days we also have the 5th anniversary for the official Microsoft Teams launch. It’s been five very interesting years that has changed how we collaborate and communicate. It all started long before March of 2017. I had the opportunity to work for an organization that was one of the early adopters of Microsoft Teams, and driven by my curiosity I immediately saw that with this new tool had some amazing opportunities to create even better experiences for my customers. Without essentially any documentation, and without no tooling whatsoever I handed responded to a couple of call for papers for conferences during 2017 on the topic on how to extend Microsoft Teams (at that time only with Tabs, Connectors and Bots). And that’s where my struggles started - I had to build everything from scratch all the time, working on plumbing, packaging, deployment and it took ages before I could create the real solution. With the experience from the beta and the version 1 release of SharePoint Framework in February that same year - I decided that why don’t I use the same tech stack as SPFx and create a generator to scaffold out all that plumbing for my Teams tabs. That would be a great challenge, and something that would allow me to create demos for conferences and customers faster as well as something I could share with the broader community. And that’s how the Yeoman generator for Teams Tabs was birthed.

Create a Collaborative App for Microsoft 365, that runs across Teams, Outlook and Office.com
Microsoft Teams

Create a Collaborative App for Microsoft 365, that runs across Teams, Outlook and Office.com

We’re getting closer to the holidays and we all like to both give and receive gifts at this time of the year. Here is an early Christmas gift from me, and the amazing Microsoft teams that’s been building out these new features, to all of you fantastic people out there. A few months ago Microsoft announced the capabilities where we can deploy Microsoft Teams apps and use them across other high-usage areas of Microsoft 365 and now those areas has been extended even further and covers Office.com, Outlook web and the old fat Outlook client. This great feature allows us to create a personal tab, that when deployed can be used inside Microsoft Teams just as normal, but also in the Office.com portal (if you haven’t visited that portal in a while - do it, there’s some great new features in there) and Outlook (both web and desktop).

Simple Teams Tab Single-Sign-On with Microsoft Graph
YoTeams

Simple Teams Tab Single-Sign-On with Microsoft Graph

When building applications for Microsoft Teams, the very first hurdle essentially all developers will try to jump over is the one with getting an access token to be able to communicate with Microsoft Graph. This is something that can be done fairly easy, if you know what to do, but requires you as a developer to connect a few dots. Over the last year this has become way easier, and there are a few great examples out there - you can find some great ones in the PnP Teams Samples.

Inside the Viva Connections desktop app, or BYO Viva app
Microsoft Viva

Inside the Viva Connections desktop app, or BYO Viva app

Yesterday Microsoft released the anticipated set of scripts required for you to add the Microsoft Viva Connections app to your Microsoft Teams environment. It’s a very simple approach that only requires you to download a PowerShell script, install the latest Microsoft SharePoint Online PowerShell module and then answer a set of questions, and voila you have the Viva Connections Desktop app ready for installation in Microsoft Teams. Note: as the time of writing this and testing the PowerShell script, I was not able to download the required SharePoint Online PowerShell module and received an error while running the script. The latest module I could install/find did not have the Get-SPOIsCommSite cmdlet. However, it’s only required for validation that the site you specify is a Communications Site, and if you’re sure about this you can safely just comment out those lines in the beginning of the script.

Team development for Microsoft Teams apps
Microsoft Teams

Team development for Microsoft Teams apps

When building software the most common scenario is that you have a team building the solution, application and/or service. You typically have front-end, back-end and full-stack developers, you have testers and designers, and more. However, working in a team is not always easy. Back in the days we could all have our software running locally and we just grabbed the latest version/commit and hacked away. For web applications the use of localhost worked just fine for almost everyone. But with cloud based solutions where you have a strong connection to one or more cloud services, it becomes a little bit more complex - you might have connections to cloud services such as storage, databases, web service and more. In most cases these resources can be spun up by each developer or shared and then managed by a configuration/environment file.

YoTeams

Microsoft Teams Tabs SSO and Microsoft Graph - the 'on-behalf-of' blog post

Hey, I’m back. Long time since I did some writing on this blog. But I needed to get this one out. As you all know I’m a huge fan of the Microsoft Teams extensibility model and now with the SSO support for Tabs, it’s even easier to create integrated experiences for your end users where they can consume data and information from the Microsoft Graph or LOB systems. I recently did a small appearance at the Microsoft 365 PnP webcast showcasing how to configure and scaffold a Microsoft Teams project that uses this new SSO Tab feature. You can watch the recording here:

Microsoft Teams

Version 2.7.0 of the Microsoft Teams Apps generator is now available

Happy Easter everyone, I have fantastic news. After seven preview versions (and even a skipped version - 2.6) the Microsoft Teams Apps Yeoman generator 2.7.0 is now available for you to use! Just like tons of others do; there’s been over 6.000 downloads of the generator, it’s generating a handful of new Teams projects every day and it’s done from all parts of the world! Join the movement!

Microsoft Teams

Creating a Bot for Microsoft Teams using Microsoft Flow

Imagine you want to create a chat bot for Microsoft Teams in order to automate tasks, enhance the discussion or just feeling lonely and want someone to talk to. There’s many ways of doing this; you can start from scratch building a bot, using the Microsoft Bot framework and/or using the Microsoft Teams Yeoman generator, you can use the Azure Bot Service, you can use the FAQ bots to essentially create a no code solution.

Microsoft Teams

Announcing Microsoft Teams Apps Yeoman generator 2.5.0

A long overdue update of the Microsoft Teams Apps Yeoman generator – we’re now up to version 2.5.0! It’s a fairly substantial update both in the generator and in the generated code – this update will make future updates a lot smoother and will allow for enabling more features going forward. Thanks to all who provided feedback and input and has tested the generator over the last few months. You can get the latest generator by running

Bot Framework

Using Device Codes to authenticate Bots with Azure AD

I’ve been building chat-bots for a while now and I’m seeing more and more requests of building these bots for enterprises. For bots targeted at the enterprise, perhaps being hosted in Microsoft Teams, one of the first requirements is that they should get data from their internal systems and most specifically from Office 365, through the Microsoft Graph. The problem here is that we need to authenticate and authorize the user, through Microsoft Azure AD, to be able to access these resources. A Microsoft Bot Framework bot, does not inherit the credentials or security tickets from the application the bot is being invoked from, so we need handle this ourselves. For instance, even though you have logged in to Microsoft Teams, or Skype for Business or your Intranet – your security token cannot (and should not) be passed to the Bot.

Microsoft Teams

yo teams have a new home, and officially backed by Microsoft

A couple of months back I started creating a Yeoman generator to make it easier for me to scaffold, build and deploy the Microsoft Teams extensions (now apps). I’ve received very good feedback on it and had some very nice contributions to the project, which was hosted on my public Github account. To really make this available for everyone to use I’ve been discussing this project with the Microsoft Teams team about having it “officially backed” by the real team and nut just me as an individual. After some interesting discussions the Microsoft Teams generator now have a new home.

Microsoft Teams

yo teams: a full Microsoft Teams extensibility Yeoman generator

A couple of weeks back I published a Yeoman generator to build Tabs for Microsoft Teams. Since then I’ve continued to add stuff to it as the Teams team has continued to add features to their extensibility story. So, this generator is not only for creating Tabs, but now also for adding Bots and Custom Bots to Microsoft Teams. With that I decided to rename the generator to yo teams (generator name is generator-teams).

Microsoft Teams

Congratulations to the Microsoft Teams team on an excellent delivery

A big round of applause for Microsoft and the team behind Microsoft Teams for now being general available (GA) worldwide. Today, they lit up the Teams icon in the Office 365 waffle for all tenants (unless your admins are being boring and has turned it off). It’s been awesome to be a part of this preview journey, which started last summer. Avanade was selected as one of the TAP members, in a preview program shrouded in a secrecy I’ve not seen at Microsoft before. Our IT department slowly trickled it out, so that we had a chance of learning how Microsoft Teams could fit into our organization and our way of working. A big thanks to David who have mastered the preview program internally.

Microsoft Teams

yo teams-tab: A Microsoft Teams Tabs Yeoman generator

I’m happy to announce that today at SharePoint Saturday Munich I presented a new Yeoman generator for building Microsoft Teams Tabs projects. Tabs in Microsoft Teams is a great way to extend the user interface and to do integrations to other systems and provide visualizations. Tabs are based on a JavaScript framework, a set of web pages and a manifest describing the Tab. It requires a set of manual steps to both build out the pages, configuring CSS, hooking up the JavaScripts, deploying it all to a web site hosted in the cloud, writing the manifest, packaging the manifest into a zip file and more.