5 ms·
Uno Platform Studio: GUI Designer for Cross-Platform .NET Applications
- peutetre 2y agoC# and Uno, C# and Avalonia (https://avaloniaui.net/ https://avaloniaui.net/), Dart and Flutter (https://flutter.dev/ https://flutter.dev/) are all interesting options for WebAssembly application development. It's nice to be able to do cross platform desktop applications that can also be compiled for web delivery.
- DeathArrow 2y agoFor web assembly the .NET ecosystem also has Blazor.
- ethbr1 2y agoNote that Blazor has serious deployment problems since ~2021 [0] due to MS picking some idiotic packaging format defaults. I.e. Let's make it look like a Windows executable! And go ahead and name it .dll! I'm sure no default firewall settings will have an issue with that. So any wide Blazor app deployment also requires overriding the default packaging and adding obfuscation. Supposedly that's experimentally fixed in NET 8... [1] [0] https://github.com/dotnet/aspnetcore/issues/31048 https://github.com/dotnet/aspnetcore/issues/31048 [1] https://github.com/dotnet/aspnetcore/issues/36978#issuecomment-1439283893 https://github.com/dotnet/aspnetcore/issues/36978#issuecomme... https://github.com/dotnet/runtime/issues/80807 https://github.com/dotnet/runtime/issues/80807
- jlaban-uno 2y agoThis was fixed in .NET 8 with WebCIL. Uno Platform since .NET 9 is also using it.
- DeathArrow 2y agoKind of cool. Since I didn't work on mobile and desktop apps for quite some time, I wonder where Uno stands when compared with MAUI.
- sasakrsmanovic2 2y agoHot Design is one-of-a kind, for Uno Platform only. Also, there are lots of reasons why one may chose Uno for the next project https://platform.uno/docs/articles/concepts/overview/why-uno-platform.html https://platform.uno/docs/articles/concepts/overview/why-uno...
- DeathArrow 2y agoWhile competition can be good sometimes, I am not convinced it's a good thing when it comes to GUIs. See Linux desktop fragmentation. In the .NET community we have the ideea that should be one tool for one job, one library, one framework etc. Now for Gui we have Avalonia, Uno and MAUI which can lead to fragmentation, noise and clutter and can reduce code reusing. It would be nice if most people will pick one tool and stick to that.
- moron4hire 2y ago> In the .NET community we have the ideea that should be one tool for one job, one library, one framework etc. I've been a .NET developer for 20 years. This is not true.
- ethbr1 2y agoWhat about WinForms? Afaik, that's been the only Windows GUI framework wth long term support. /s
- DeathArrow 2y agoMost people used EF for ORM, Newtonsoft for JSON, Automapper for object mapping built-in DI container for dependency injection, XUnit for tests, Fluent Validation for validation, ASP.NET WebApi for web applications, ASP.NET MVC for websites and so on.
- taspeotis 2y ago> In the .NET community we have the ideea that should be one tool for one job, one library, one framework etc. xUnit, NUnit, MSTest Autofac, Ninject, Microsoft.Extensions.DI Quartz, Hangfire
- DeathArrow 2y agoYes, there are multiple tools but for each task there is a dominant tool. That is my impression.
- 2y ago
- zerr 2y agoWhy Microsoft doesn't work on WinUI GUI designer?
- BoredPositron 2y agoThey probably are working on one all the time but they scrap it when starting a new framework…
- exceptione 2y agoIdk, but I think they burried themselves under a load of GUI frameworks. Windows Forms is good, but limited. WPF is almost perfect, but Avalonia is like that + cross platform. The other ms gui frameworks are a waste of time, skip those.
- DeathArrow 2y agoI think Microsoft stands behind MAUI. But since they pivoted to cloud, web AI and they don't profit too much from people building desktop and mobile apps, I guess Microsoft won't invest much resources into MAUI or any GUI toolkit.
- sasakrsmanovic2 2y agoUnclear why. But it is not uncommon for Microsoft to leave 'holes' in their offering soo that the partner network can fill them. Over 90% of Microsoft's revenue is partner-delivered. This often sparks great innovation outside of Microsoft walls. Uno Platform promotes the use of .NET, so is therefore a tech-partner to Microsoft. And with Hot Design (https://platform.uno/hot-design/ https://platform.uno/hot-design/) Microsoft's .NET Ecosystem becomes richer for a tool that no other developer ecosystem has. It is A RUNTIME VISUAL DESIGNER for .NET Apps. It turns the App you are developing into a Visual Design surface you can drag-and-drop components on, data bind,etc.
- Abismith 2y ago[dead]
- exceptione 2y agoUse the mvvm [0] toolkit, it is good! That way you decouple your view (<= gui toolkit) from your (view)model. It works with Avalonia, WPF and should work with Winui3, Uno etc too. Avalonia is being used by some pretty impressive applications btw, check that one out too. (I have no affiliation). Avalonia (+ .net) is the reason why I think that is the best stack for any desktop application or util, because utils eventually gain a gui. Imho a far better choice than Python or JS in most cases. As an aside, I don't understand why the Java players do not put more emphasis on JavaFX. Would be the ultimate choice for people that are wary about the MS affiliation. ___ 0. https://learn.microsoft.com/en-us/dotnet/communitytoolkit/mvvm/ https://learn.microsoft.com/en-us/dotnet/communitytoolkit/mv...
- peutetre 2y ago> Avalonia is being used by some pretty impressive applications Like this implementation of Visual Basic 6: https://bandysc.github.io/AvaloniaVisualBasic6/ https://bandysc.github.io/AvaloniaVisualBasic6/
- TheUnhinged 2y agoHow does Avalonia do native look-and-feel? Does it use its own custom controls (with themes) or does it try to do what Qt does (using native theming APIs)?
- peutetre 2y agoAvalonia draws its own controls and supports themes. In contrast, Uno uses native controls as much as possible.
- jlaban-uno 2y agoUno Platform Dev here. Uno currently uses some native controls on mobile iOS/Android/Catalyst (text input, mostly) to provide platform features, but the rest is rendered using graphics primitives. On Web, the same happens where CSS is used for most of the rendering. Input interactions are managed entirely by Uno. This allows to have a visually identical UI across platforms, unless the developer chooses otherwise. On Desktop targets, Uno is rendering everything on an HW accelerated Skia canvas, with GL/Metal backends.
- deleted 2y ago[deleted]
- dang 2y agoRelated: Uno: Create Beautiful Cross Platform .NET Apps Faster - https://news.ycombinator.com/item?id=40231624 https://news.ycombinator.com/item?id=40231624 - May 2024 (147 comments)
- Cody_C 2y agoI'm very interested in this tooling for one project in particular. However, I don't think you can assign global hotkeys or minimize things to the system tray. At least I haven't found a way through research yet. I have followed this project for a while and it looks pretty sweet.