Skip to content(if available)orjump to list(if available)

Microsoft is open sourcing Windows 11's UI framework

paavohtl

I am worried about the future of native UI technologies on Windows. Traditionally at least the developers of operating systems have eaten their own dogfood and have at least tried to implement well-performing & visually consistent native applications to serve as an example to others. Windows 11 has largely done the opposite. Windows has had minimal but perfectly functional native email and calendar apps at least since Windows 10 (could have been in 8, never used that). Windows 11 originally shipped with those apps, but they were removed in a later update and replaced with laggy webview wrappers that take seconds to start.

_fat_santa

The issue I see with Windows 11's UI is they seem to focus too much on pushing new apps / features and not enough focus on catching up some of the older tools within Windows. Take for example the Control Panel which is a reskinned version of the same one that shipped with Windows 7. And I'm sure there are tools buried within the OS that probably date back to the 2000/XP days.

Windows 11 looks great if you just look at the press photos and stay a "very happy path" while using it but as soon as you start digging deeper you realize it's like that meme of Homer Simpson with clips on his back.

rs186

You forgot our favourite windows 3.1 file dialog:

https://youtu.be/r549Zn74Xg8

pjmlp

From the WinUI community calls, I would assert all new employees have zero Windows experience and management doesn't care to give them proper skills.

Too many questions that any Windows developer would know why the question was being asked, where they either couldn't answer or had puzzled looks on why the questions were being asked in first place.

That is also a reason why now there are Webview2 instances all over the place on Windows 11.

tough

so microsoft gave up and the web won?

swift ui apps have some webkit views like the app store, music app etc

simonh

I think web views do make sense in situations where you’re presenting lots of remote content that may frequently change. After all that’s what the web is, and store content, and to an extent emails many of which are HTML anyway, are reasonable candidates.

nine_k

I won't be surprised if there is an effort to rewrite MSO in something like Dart and WASM, and make it independent from any native toolkits altogether. Yes, to reproduce all of the Excel power, and make it available everywhere as a premium plan of O365.

Then Windows could pull a ChromeOS. The only place where a native UI is really needed is the lock / login screen; a tiny subset of any current UI toolkit would suffice.

p_ing

Office is a completely separate team divorced from Windows proper. Unless Office deemed it wise to rewrite their UI, they're not going to do so (and it's a frankenstein of a Win32 UI).

Office on Windows relies heavily on COM and other Win32-only libraries to function.

I can't think of a valid reason to rewrite Office to that extent. They already have Office for the web and Mac Office; while not identical in features, they're often good enough outside of BI scenarios or highly complex Excel work.

Outlook is the lone exception where that team decided to have Outlook for the web, Windows Outlook, and Mac Outlook be identical, so those are getting their rewrites with removal of Win32-specific features where applicable.

mroche

> Outlook is the lone exception where that team decided to have Outlook for the web, Windows Outlook, and Mac Outlook be identical, so those are getting their rewrites with removal of Win32-specific features where applicable.

I wish they didn't. Outlook on macOS is abysmal nowadays and I still find myself resorting to the legacy view just to change some settings that both iterations can read but only one exposes.

I significantly prefer using Thunderbird or the web views for Gmail and Zoho Mail over any version of Outlook. Is the integration across O365 apps nice? Sure, but the platforms themselves are miserable to use.

In a similar vein, I was cautiously optimistic about Teams V2 for unifying the client. But then they completely dropped the Linux client for their PWA which does not have feature parity with the "native" platforms and has a significantly worse UX.

arunc

> Alignment with Microsoft Goals

> We are being thoughtful about resourcing. This effort is happening alongside other critical responsibilities like security, platform stability, and support for existing products. Our current focus is on foundational work that unlocks value for contributors and increase transparency. We are aligning this work with Microsoft’s broader business priorities to ensure long-term support and impact.

I don't sense any benevolence in their words. They are just pulling off their resources and dumping the framework on the public, hoping passionate losers will contribute.

michaelcampbell

> passionate losers

This is unduly meanspirited. Your passion projects are not even considered to probably the vast majority of the world; that doesn't make you a loser.

I have zero interest in the Win11 UI, and am even on board with the cynical view that this is purely a bean counter cost savings for MS rather than some benevolent outreach.

But I respect the people that take this on and want to keep it going.

sheepscreek

Thanks for calling it out. I get OPs passionate disdain for Microsoft but one must remember that the world is built on contributions from such people. Take the whole Linux and GNU ecosystem for example. We’d be lost without them.

Maybe the biggest beneficiary will be AI/LLMs - which will become way better at creating Windows UX after this.

chrisandchris

> I have zero interest in the Win11 UI [...]

As has the rest of the world, and we will just put it on the list of UI frameworks Microsoft did not completly implement, fully support or considering "the default".

So we stay stuck with the status quo: There's no official UI for Windows, still.

bialpio

> Your passion projects are not even considered to probably the vast majority of the world; that doesn't make you a loser.

Not OP but I understood this as "contributing for free to a project owned by a corporation worth more money than you could realistically spend in a lifetime is what makes you a loser".

tough

what if that contribution benefits me personally in any way whatsoever?

nine_k

Apache Windows when?

More seriously, a desktop UI toolkit is hardly a moat by now, especially a Windows toolkit, Windows having 3-4 very different look-and-feels mixed and shipped with the official distribution.

OTOH security and stability are things that Windows critically depend on to stay on the laptops and desktops in medical, governmental, and financial institutions, and on devices of executives.

echelon

This feels like Windows itself is no longer producing enough growth for Microsoft relative to its other efforts. Even the enterprise sales lock-in isn't compelling enough for the cloud/AI-centric future Microsoft envisions. So Microsoft is slowly pulling resources that it can instead invest into Azure and AI and other high-growth business units.

I don't watch Windows too closely. Have there been any other signals of waning investment into Windows? Has Nadella or the other leadership admitted to this?

Hasn't Microsoft also been pulling back from Xbox? IIRC, haven't they been trying to consolidate and use gaming to lionize Windows as a platform? After spending billions on multiple AAA studios? That would seem counter to a Windows pullback strategy. Is this a case of the left hand not talking to the right hand?

gyulai

> Have there been any other signals of waning investment into Windows?

Wasn't there a story some while back about them crawling the web for PWAs and putting them on the Microsoft Store (or is it Windows store?) to make it into less of a ghost town? And if you go to their official website, browsing vaguely in the direction of UI development, you will see them advertising PWAs as first-class citizens of the Windows ecosystem. I also vaguely remember that Windows+Edge offers special APIs to PWAs for things like file system access and so forth that are unparalleled on other platforms.

I take this push for PWAs as them basically throwing in the towel on Windows-native desktop development (outside of games, maybe).

But, to be fair, native desktop development has seen a lack of investment on all desktop platforms. JavaFX is a ghost town too.

All of that could change, depending on what happens next with Chrome, Bing, and Mozilla. -- The future of each of those seems to be hanging in the balance at the moment.

The web could become a mere implementation detail of the Google monopoly, rather than the open thing it is today. Couple that with a government-level push for digital sovereignty in the E.U. and other places (certainly China). Then, maybe, you will see renewed interest in desktop GUI apps.

On a side note: I think it's amazing what has happened in the open-source space with Rust-based UI frameworks (iced, egui, slint) and COSMIC. The future for cross-platform desktop UI development hasn't looked so bright, maybe since the introduction of Java Swing (was that in the early 00s?)

paavohtl

This is definitely corporate speak for "no guaranteed support, no planned further updates beyond critical security bugs, you are on your own".

_fat_santa

Usually I get why companies release their UI frameworks. I've strongly considered using Atlassian's and AWS's frameworks in the past to build web apps because if it's good enough for Jira/AWS, it's probably good enough for my B2B saas app.

But I personally don't know why anyone would reach for this framework. Maybe if you're building a Windows app and you want a very consistent look and for your app to feel "native", but aren't there better options out there for doing this already?

pjmlp

Yeah, WinUI has been a disaster.

tempodox

> hoping passionate losers will contribute.

Offloading the work to their victims. Maybe they will even make it usable again.

pjmlp

No one in Windows development community cares about WinUI, other than those with sunken costs that bought into the WinRT/UWP dream and now are stuck with a dead technology.

Too many burned bridges since Windows 8 came out.

If anything, this is Microsoft confirmation that they are unwilling to fix all the broken issues, and hoping the community will somehow still care.

bytefish

This. Also DevExpress and Progress Telerik do not invest into their WinUI Controls at all, and that’s a sign they don’t buy into WinUI neither.

WinForms and WPF are currently the only viable frameworks for Line of Business application. I have yet to see a WinUI3 application in the wild.

MrZander

Very true. We just developed a brand new LOB desktop app and settled on sticking with WPF. WinUI has been dead for years imo.

On a side note, I still love WPF after working in it for 10 years. Maybe it's just familiarity, and it's a little verbose at times, but man it's a great framework when you know that you're doing.

appease7727

Honestly at this point who would seriously use any Microsoft UI framework? They've abandoned 100% of their previous UI frameworks unfinished when they get distracted by a new, shinier framework.

Why use a busted incomplete framework missing basic features when there's entire ecosystems of open source cross-platform frameworks being actively maintained and which actually have all the features you need?

Really this is just another UWP destined to be forgotten and scorned.

9cb14c1ec0

I dunno, they are still doing doing bug fixes to Winforms.

muhehe

I already lost count how many UI frameworks are in windows. It looks like complete chaos and mess.

I really wonder what they expect from open-sourcing it. Just to pretend how open they are? Or is there any real benefit to developers who target windows?

cheschire

WinUI is an evolution of UWP which is an evolution of WinRT. WinUI has been around for years.

MAUI is not exactly a competing product and is more about enabling cross platform UI development. Different intent.

WinUI is actually ok tech. It’s evolved over the years through a few iterations, now on WinUI 3.

Im mostly with you though. Until they rebuild the entire OS in it, including all of the administrative controls and tools, I don’t trust the longevity.

DiabloD3

They already do, though. The big UI refresh in Win10 is all XAML, and the new Win11 taskbar (the one we all hate) is now a totally normal XAML app.

WinUI 3's big changes (to get a 3.0 version number) is not with the XAML stack itself, but its new ability to be called by unmanaged apps as a normal UI toolkit, so it can finally be used by all apps. No more using Shell UI like we're writing Win 3.1 apps.

And yes, some stuff in Win11 still isn't WinUI, which is kind of annoying, but some of those dialogs hidden away in Windows are at least 20 years old, and probably would need to be entirely rewritten, not merely have their UI's updated.

Also, fun fact: The Win8/10 taskbar's code predates Avalon (the prototype/codename for WPF), and trying to change/fix it at all usually ended up breaking it. It's one of the few binaries on Windows that would not be recompiled to build a new release image in fear of breaking it. Rewriting the taskbar made sense, GETTING RID OF SMALL MODE DID NOT, GODDAMNIT MICROSOFT.

Kwpolska

> The Win8/10 taskbar's code predates Avalon (the prototype/codename for WPF), and trying to change/fix it at all usually ended up breaking it. It's one of the few binaries on Windows that would not be recompiled to build a new release image in fear of breaking it.

The taskbar that underwent a major redesign in Windows 7 (released after WPF)? Also, that binary is explorer.exe, surely it got rebuilt quite often for new ads. features, and fixes?

noisem4ker

Thanks for the informative comment.

> small mode

I recently noticed that they introduced an option for small icons. Not that it changes much, as the height of the bar stays the same, but hey. Personally I've been fine since they added back the option not to combine buttons unless full.

tcfhgj

I think only WinUI2 (deprecated) is an evolution of UWP (uses WinRT APIs). WinUI3 is something different.

cheschire

WinUI 3 still supports WinRT. It ALSO supports more. It's an evolution of WinUI 2, not just a simple version bump, but also not a completely new tech. It's probably a closer evolution to go from WinUI 2 to 3 than it was to go from Angular 1 to 2.

https://learn.microsoft.com/en-us/windows/apps/winui/winui3/...

https://learn.microsoft.com/en-us/windows/apps/develop/platf...

pjmlp

Hardly an evolution, that is how it is sold, reality is something else, trailing behind UWP with half the tooling.

crinkly

Still writing win32 stuff like it’s 1995 here. We have bits of ATL/MFC hanging out which are throughly abandoned.

I don’t trust WinUI at all.

I was surprised, when I spoke to a former colleague, to find that an internal tool I wrote 25 years ago is still being maintained. Win32 as well.

ffsm8

Software that solves an actual problem has the tendency to stick around, no matter how much time elapsed.

Just remember, cobol is still in active use, today

kbelder

I was going to ask about Win32. I haven't had to do it in a while, but if I had to write a desktop app in windows, that would be what I would reach for. It's still supported... is their any indication that it won't be for many years to come?

Also, it looks better, in my humble opinion. It's probably lacking features that I'm uninterested in.

DougN7

MFC support is still in the latest Visual Studio, and it looks like ATL as well.

qcnguy

WinRT came out of UWP I think. UWP was their first attempt to move beyond .NET

DiabloD3

You have that backwards. WinRT is the managed languages runtime for Windows, introduced in Win8. Its sort of the replacement for COM/OLE but also defines the ABI dialect in a way that allows managed languages to call unmanaged code without an FFI penalty.

UWP is built on WinRT, and acts as a fully managed app container, similarly to how phone apps exist on your phone. It allows WinRT apps to be deployed to any Microsoft platform, Windows, XBox, Windows Phone, etc, but also Android and iOS, and also as PWA, and are guaranteed to run identically on any of those platforms. UWP apps must be written a fully managed language that runs on the CLR (ex: C# runs on the CLR, but C++/WinRT does not). UWP also uses the second generation of WinUI-family XAML UIs, which means all UWP apps use completely native UIs, instead of slow non-native Javascript shit in a web canvas.

The WinUI family of XAML UIs started with WPF, and a slightly incompatible version of it also appeared in Silverlight (WPF = WinUI 1.0), then was brought to UWP (= WinUI 2.0), and is now its own stand alone thing that any app can use, managed or not, as 3.0.

WinRT is not an attempt to move beyond .NET, instead it is their way of allowing .NET to natively call code, and make .NET languages first class in Windows.

cheschire

WinRT was windows 8. Remember the ARM-powered Surface RT had the same branding?

UWP came along in windows 10.

deaddodo

There are three UI frameworks in Windows, and only two actively used/developed.

All the other "countless" frameworks are iterations of one of two lines: Win32/Native (WinAPI, MFC, WinRT, WinUI3, etc) and WPF/Managed (Avalon, WinUI2-3, etc). WinUI3 exists to bridge the gap.

flohofwoe

They probably started something new and shiny (Now with AI!) and want to get rid of the old baggage without causing too much of a user revolt (all dozens of them) ;)

madduci

Just go for MFC FTW, it is in feature freeze but I will last probably for the next 20 years yet.

badsectoracula

You could also go for wxWidgets as it is kinda MFC-y but better and cross-platform, though like MFC you can combine it with Win32 API code (almost) seamlessly.

Or go with Qt, though that doesn't use native controls.

null

[deleted]

criddell

MFC/Win32 + XAML Islands (through the Windows App SDK) is a pretty nice combination for stability and access to new features.

shortrounddev2

Maybe people can cannibalize some of the rendering code and extrapolate the controls to a better class library than they already have. Like a kind of winforms but using modern rendering APIs. I know you already can create such controls but they often end up being very verbose and just look like xaml but in C#

dehrmann

I wonder how much longer Microsoft stays committed to Windows as a whole. Windows is less than 10% of the company, users are migrating to phones, tablets, and Chromebooks (all of which can run Office), and with .NET on Linux, Windows servers are making less sense. It's a shrinking market.

bob1029

For Windows UIs I've been getting into Win32/GDI/DirectDraw/etc.

Tools like CsWin32 and modern C# (ref returns) make working with these APIs a lot more approachable today. It used to be the case that you had to create a nasty C++ project to do any of this. Now you can just list the methods you need access to in your nativemethods.txt file and the codegen takes care of the rest.

Win32 is a lot lower level than other things you'd typically consider to be a "UI framework", but the important tradeoff is that it is also a lot harder for Microsoft to remove or screw with in any meaningful way. I cannot come up with something that has been more stable than these APIs. The web doesn't even come close if we are looking at the same timescales.

shortrounddev2

I think windows needs a community effort to create an actually good framework for native development on windows. Unfortunately I just dont think such a community is big enough.

bobajeff

As someone reading the comments here and never made a real Windows app outside of a visual basic hello world a pretty long time ago. Why doesn't Microsoft just stop making these? They already own GitHub and vscode so why not just admit that electron/typescript is the Windows UI framework now?

tjaad

Because Teams is slow again

AndroTux

Because I don’t want to run even more browsers simultaneously than I already am.

daemin

Last I evaluated it WinUI3 was a terrible developer experience. The application had to be literally installed on the system to even debug it, which means you end up with a large number of useless start menu entries, not to mention registry entries and such. Another thing was that the example programs crashed when I clicked on a button.

All I want is something simple to work with to make applications for Windows, and so far I'm still using Win32 with WTL.

bloomca

> The application had to be literally installed on the system to even debug it

I think that's because you chose "packaged" application, these apps need to be installed so that capabilities are handled correctly.

To be fair, macOS has the same issue, although they won't show in Launchpad, they still can be indexed by Spotlight.

daemin

I did try to develop an unpackaged test application but I gave up trying to implement it and just went with Win32 instead as I wanted make something rather than messing around with a UI framework.

These days if I were to switch from Win32 I might try some custom rendered framework which a lot of apps seem to use, or Qt.

Springtime

I hope this leads to having a native vertical taskbar, which has been absent in W11 despite being a taskbar feature dating back as early as Windows 98.

Third-party tools have tried to reimplement it but it's either been by bastardizing the native W11 horizontal taskbar to be vertical (eg: Windhawk) or just restoring the old W10 taskbar code (eg: StartAllBack).

wild_pointer

How will making the UI framework open source lead to taskbar changes? For third party contributions in this area, they need to open source the taskbar, not the UI framework.

Timwi

Nit-pick: Windows 95, actually. The vertical taskbar was an option in its very first version.

0points

The taskbar is a feature of explorer.exe.

The news being discussed is not about explorer being open sourced.

flohofwoe

Is the Windows team even using WinUI for the native Win11 desktop UI? ;)

perching_aix

The Start Menu is apparently a React Native app, so I'm going to hazard a guess and just assume WinUI is built on top of React, and that the Start Menu at least is thus indeed built with WinUI. But it's also clear that some other parts aren't, so who knows what's what. I'm sure there are folks who spent time reverse engineering it all though who do.

paavohtl

The start menu is not a React Native app, but it's actually even worse. Only the recommended section (which is basically recently used files - plus probably advertisements in some scenarios) is. The rest of the start menu is WinUI, to my knowledge.

qcnguy

WinUI is its own thing. The React Native stuff just shows that even Windows developers don't want to use WinUI.

9029

> The Start Menu is apparently a React Native app

What's the source for this?

null

[deleted]

madeofpalk

It's confusing what exactly 'WinUI' is, but does Explorer looks WinUI-ish. Parts of it at least.

e4m2

Explorer uses XAML Islands. Parts of it are WinUI, while the rest is still Win32.

mellosouls

Actual - and rather different - title (as borne out by reading the article):

Microsoft is taking steps to open-sourcing Windows 11 user interface framework

tomovo

They need to feed it to all the LLMs to get help keeping it from falling apart.

They could go back to Win32 + WinForms and everything would be fine.

elygre

I won’t benefit from this. At the same time, I cannot see a single bad thing about it, so I’m surprised about all the negative energy.

sirwhinesalot

The "bad thing" is that it's effectively getting abandoned, open sourcing it won't make any difference.

It's not like external contributions will suddenly turn it into something usable, and they'll just have a skeleton crew maintaining it, like they do WinForms and WPF.

People are tired of Microsoft and their ever growing graveyard of ill thought out, half-baked, "native" UI frameworks.

dlachausse

Native UI is effectively dead outside of Apple’s platforms, and even there it’s hanging on for dear life. HTML, CSS and JavaScript won the cross platform toolkit battle.

bigstrat2003

They only won because developers stopped giving a shit about anything except their own ease of work. There's no such thing as a good UI built with web tech, so anyone who cares about the user's experience will use a native toolkit despite the difficulties. But very few do, turns out.

sirwhinesalot

Sadly yes. And all the platforms are to blame. Microsoft and their 1000 half-working frameworks made writing a wrapper that was any better than wxWidgets impossible.

But also Apple "totally not deprecating" AppKit and pushing everyone to the mess that is SwiftUI, Gnome breaking backwards compatibility as a sport, and Qt messing around with QML, meant "native UI" became quicksand.

Even going HTML, CSS and JavaScript wouldn't be too bad if the browser engines provided by the OSes were any good, but it took Microsoft giving up and switching to rebranded Chromium as a browser for Windows to provide a usable one in WebView 2.

WebKitGTK is also terrible compared to the macOS version of WebKit, which hurts projects like Wails and Tauri. So everyone bundles a freaking copy of Chromium with their applications.

I should have studied mechanical engineering.