Skip to content
This repository has been archived by the owner on Sep 13, 2022. It is now read-only.

[Proposal] .NET UI Standard #756

Closed
weitzhandler opened this issue May 27, 2018 · 9 comments
Closed

[Proposal] .NET UI Standard #756

weitzhandler opened this issue May 27, 2018 · 9 comments

Comments

@weitzhandler
Copy link

weitzhandler commented May 27, 2018

Hi,

The .NET Standard was a great solution to overcome the various shapes of .NET and all its flavors.

Maybe it's time to implement a .NET UI standard?
It will be a library of contracts for controls, layouts, user-input event hooks, navigation, styling, responsive adaptations, animations, shapes, and basically all tools a decent UI library is supposed to offer.
Maybe even an opinionated default theme.

This will allow .NET UI Standard providers (be it WPF, UWP, Xamarin.Forms, Avalonia, Uno, or even web technologies, like ASP.NET Core), to implement renderers for the same UI in any platform while giving the developer the option to reuse the same UI structure.
We may consider using XAML as the language to describe those UIs but the core shouldn't be XAML but rather a CLR-based set of interfaces.

Related:

@weitzhandler weitzhandler changed the title .NET UI Standard [Suggestion] .NET UI Standard May 27, 2018
@GeraudFabien
Copy link

GeraudFabien commented May 30, 2018

This shouldn't depend on anythinks. Not event XAML, C#, Java, Javascript, C++, .... To me it must be implement in IL (MSIL, WASM, ...) to be usable from any Framework/language and keep performance to the top.
I think's that what you intended to say. since the xaml part may be transform in this "interface compliant thinks". So some base Framework made in XAMl may be used to provide a small easy to use base.

@weitzhandler weitzhandler changed the title [Suggestion] .NET UI Standard [Proposal] .NET UI Standard Jun 23, 2018
@GeraudFabien
Copy link

I don't talk about .NET Standard. I talk about making a whole new project project.

@GeraudFabien
Copy link

GeraudFabien commented Jul 19, 2018

In fact it's already done before you make this issue. I thougth you were talking about this and you didn't understand what .net standard was about.
Sorry.

@birbilis
Copy link

Note that even W3C describes the DOM (using IDL). Obviously interfaces in say C# would be fine, eg have IActionable, IClickable, IDraggable, IButton, IRadioButton, IToggleButton etc.

Note that interfaces allow for multiple inheritance

@weitzhandler
Copy link
Author

weitzhandler commented Jul 19, 2018

@birbilis
Exactly. I don't want the W3C to describe the .NET Standard UI DOM, I want Microsoft to describe a UI that is biased towards .NET developers.

@terrajobst
Copy link
Member

terrajobst commented Jul 20, 2018

I think there is nothing wrong with having a cross-platform UI stack. But even if we had one today, it wouldn't belong here. Keep in mind that .NET Standard is neutral with respect to the application model as this API set needs to be implemented by everyone. This includes headless devices, console apps, cloud services, and web assembly. Forcing everyone to support a client side UI stack is not only not desirable, it's just not feasible.

So while I'm supportive of that effort (I'm famous for hating on the Electron-style experience) this issue just doesn't belong here, sorry. However, there is a User Voice item that is tracking that and I'm sure there are people thinking about it. So please don't read me closing this as not being supportive. I just don't want to track that here.

@weitzhandler
Copy link
Author

weitzhandler commented Jul 20, 2018

@terrajobst
.NET Standard, is a library that defines a set of contracts that any .NET framework has to implement.
.NET UI Standard, is a lib that defines a set of contracts any .NET UI framework has to implement.

By this issue I didn't mean that .NET UI Standard should be part of .NET Standard, but merely an appendix to it (probably depending on it).

That User Voice item is from 2015. That's before Microsoft even acquired Xamarin. Xamarin is headed the right direction to solving that, but it follows its own model and makes up its own standards, while the opposite should be: Microsoft defining a set of standards everyone follows. Kinda XAML Standard, just XAML is the wrong word, should rather be UI.

I mean it could have been in .NET Core, but really it doesn't belong there either, because my request is an abstraction of the feature-set of any UI in any .NET, @birbilis defined it best.

@weitzhandler
Copy link
Author

OK posted it here please vote!

@markusschaber
Copy link

Maybe the community needs to define a UI standard without Microsoft...

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants