>> You really don't want to miss
this episode because I have with me,
Michael will talk about
this Community Toolkits and
all those new features that are coming up.
[MUSIC] Hey, Michael. How are you?
>> Hi, Frank. Thanks for having me. Pleasure to be here.
>> I'm super happy,
so you're here to tell us more or get us
started with the Community Toolkit.
What is it? How can it help us?
>> Yeah, exactly.
The Community Toolkits are organization up on GitHub.
We're part of the.NET Foundation,
and we are really all about having
different libraries and helpers for different.NET technologies.
If you're using MAUI or
the Universal Windows Platform MWP or
the Windows App SDK, or just.NET itself.
We have various different things
and helpers that can help you out,
and so that's what we're all about.
>> All right, excellent. You mentioned.NET Foundation and I heard
also GitHub and you are in this episode,
so it's open source, right?
You have a repository where we can watch the code?
>> Yeah, exactly. Let me share my screen over here,
so I can actually go to our organization.
This is our GitHub organizations just
github.com/communitytoolkit,
and so these are where all of our different projects lives.
We have the project that I
work on which we'll go into a little bit more details here.
The Windows community toolkit.
We also have the MAUI Community Toolkit
and the.NET Community Toolkit.
The.NET Community Toolkit is great
if you're doing any.NET development.
It has high performance APIs for
really optimizing your code paths.
It also has the MVVM Toolkit,
which is wildly popular for
any UX work that you might be
doing regardless of whichever UX stack,
whether that's WPF or MAUI or UWP,
like I mentioned, the Universal Windows
Platform or Windows App SDK,
whatever UI technology you're using Avalonia with.NET,
the MVVM Toolkit can help you out there separating
your concerns in your UX stacks.
That's really exciting piece of technology
that we have as part of our helpers.
It's really exciting group.
We're really pairing the engineers
that are working on these projects.
Most of our maintainers here like myself,
work at Microsoft and then we collaborate with the teams
at.NET engineers or the folks
working on MAUI or the folks working on the Windows platform.
As well as of course, our breadth of
wonderful community volunteers and
people that contribute to these projects.
It's really amazing to work with people in
the open source and see what we can build together.
It's really amazing the power that open source
provides us to create great things
and see those leveraged across
so many different other projects in this world.
>> The big open source family, I love that.
There's many changes in technology and things like that.
How do your teams or your projects are coping with that?
>> Yeah, exactly. That's been the big challenge for us.
With Windows Toolkit is we started in 2016,
really focused on Universal Windows Platform,
which was the newest Windows stack at the time.
Now things are changing to this thing called the Windows App SDK,
and UI3 as the new UI framework,
and so we really figuring out in our repository,
how do we take our existing code,
and target this new platform.
We ended up creating a whole separate fork
of our Windows Community Toolkit.
That's not really an easy thing to maintain,
start coding code over all the time and trying to reach
our existing UWP developers as well as this new platform,
even though things are 95 percent the same.
So to get into this issue,
we created this new thing
called the Windows Community Toolkit labs.
This is a whole new repository for us that we've been building.
Really looking at all of
our different processes and infrastructure,
and creating this whole platform
for us to not only make it easier to build these components,
easier for us to collaborate with others to build them,
but also easier for us to test.
As well as not only with a single codebase,
with our existing UWP developers,
but the new Windows app SDK environment,
as well as using a technology called Uno Platform,
which lets us take our existing UWP or
a Windows App STK code and run that on
Android or iOS or even the web with WebAssembly.
That's really exciting as well.
Now we have a single codebase to take a component and run it
across any of these different environments that share
the same UX deck technology
or at least that are 95 percent similar.
This really opens things up for us to reach a broader set of
audiences and create these new ideas.
Iterate on them more quickly.
Collaborate more easily with others in the space,
and build these great things and make it easy for anyone who has
an existing app and is looking to
migrate or expand to other platforms,
or bring things forward onto up all the newest technology.
If they're using these components from the toolkit,
then, the work's already done for them.
They're just going to work between these different environments.
That's what we're working on and testing,
especially with these new components.
Then, our next step later this year is to bring this technology
to some of our existing components
from the toolkit and our next major release.
Lots of stuff we're going and doing right now,
but this is the exciting new stuff that we're working on.
>> Well, it is really exciting indeed,
and there's so many different things.
I'm sure now, that you will come back and tell us more.
We'll start digging about that labs for Windows.
>> Yeah. I can show you a bit of a quick preview here.
We have our sample app actually live and the Web,
as I mentioned with Uno Platform,
we can build things and ship them on WebAssembly.
If you go to toolkitlabs.dev,
you can check out some of our controls,
one of our biggest new ones as the settings card.
We're going to bring on Neil's,
one of my coworkers here in the future here and deep dive
into some of these components and
other experiences that we're working on in labs.
We can talk a little bit more about
this project and what we've been doing and how it works.
>> Well, thank you. Make sure to include
all those links that you mention in the show notes,
and looking forward to have you again on the show. Thank you.
>> Thank you so much, Frank. It's been a pleasure
being here. Thanks for having us. [MUSIC]