blazor-wasm-maui-winforms-wpf-template
MudBlazor
blazor-wasm-maui-winforms-wpf-template | MudBlazor | |
---|---|---|
3 | 13 | |
25 | 1,831 | |
- | - | |
0.0 | 9.9 | |
over 2 years ago | over 2 years ago | |
C# | C# | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
blazor-wasm-maui-winforms-wpf-template
-
Making a Blazor app run on Web browser, Windows, Linux, Android, iOS and macOS
Next I decided to make a Windows desktop version using WebView. I also made a template https://github.com/Jinjinov/blazor-wasm-maui-winforms-wpf-template that is now somewhat obsolete. The biggest problem is loading the data from IndexedDB before the app starts. Blazor WASM allows you to use JsInterop right from the moment you register your services in dependency injection, so you can access IndexedDB immediately, load the user settings and then start the app. WebView doesn't allow you to use JsInterop before Blazor is initialized. This means that if the user chooses a dark UI theme and you save that choice in IndexedDB, the app will load with the default light UI theme, you will read the IndexedDB on the first render and then apply the dark UI theme. The app will flicker for a second.
-
I made a Blazor app that runs on 6 platforms
I made a template for a cross platform Blazor project: https://github.com/Jinjinov/blazor-wasm-maui-winforms-wpf-template But it is a bit outdated now.
- Minimal Blazor template with WASM, MAUI, WinForms and WPF
MudBlazor
-
MudBlazor officially participate as a maintainer in Hacktoberfest 2021
Our website is updated as well: MudBlazor - Blazor Component Library
-
Full Stack / Back End Devs. How well versed are you in front end tech?
Though I can't develop beautiful UI and good UX even if my life depended on it. I can write a functional front-end, but don't expect it to be pretty. I usually ask for assistance regarding that from our UX designers instead where they essentially layout the whole UI (either on figma or Photoshop) so I just need to make it functional. Component based frameworks these days (JS, and Blazor) really helps at least. The UX guys usually make sharable base components that the company needs (buttons, grids, etc...), which includes all the styling and animations and we use those instead to create decent looking UI. For personal stuff I use MudBlazor which kinda does the same, but I do know a bit of css to customize when needed.
-
.Net UI components - worth?
There are a ton of component libraries out there. I like the mudblazor library. https://mudblazor.com
- MudBlazor - Blazor Component Library
-
How do you create a cross-platform GUI without using Electron?
There are grid controls from the usual commercial vendors like Radzen and Telerik. I used them briefly during a free trial. It has a funny name, but MudBlazor [1] has been the MIT licensed library I have been using lately. I have been using their Table control, which may be what you are looking for in a data grid. [2] Check it out and see.
[1] https://mudblazor.com/
[2] https://mudblazor.com/components/table#api
-
Is there a way to cut down Blazor Wasm download size and loading time?
It seems to be a known issue a known issue. By default, external libraries such as MudBlazor are not trimmed
- MudBlazor: Keyboard Controls don't work.
-
Recommendation for Open Source free razor components?
I recommend Mud blazor if you're going for Material design. For other design languages Andt Blazor's pretty polished and there's Blazorise as well if you want to be flexible (it supports Antd, Bulma, Bootstrap and Material via configuration).
-
Blazor bad! “Too new”… “Too early”… “Too X-cuse”
The ones I've used that's pretty good are MudBlazor (Material Design), Antd blazor (Antd), and Blazorise (Multi design support via configuration). There's also the newly announced Fluent UI for Blazor at MS build that's from MS themselves but I haven't tried it yet.
-
Question
There's Uno that's been talked about by MS community standups if you wanna use UWP XAML to do the Job. If you wanted to use Blazor though, you'll have to at least learn a bit of CSS and Html. Luckily you can find really nice component libraries like mudblazor that does a lot of the nitty gritty html + styling for you. So you'll just have to use their components most of the time and with little to no JS required (depending in your usecase).
What are some alternatives?
LiveCharts2 - Simple, flexible, interactive & powerful charts, maps and gauges for .Net, LiveCharts2 can now practically run everywhere Maui, Uno Platform, Blazor-wasm, WPF, WinForms, Xamarin, Avalonia, WinUI, UWP.
Radzen Blazor Components - Radzen Blazor is a set of 70+ free native Blazor UI components packed with DataGrid, Scheduler, Charts and robust theming including Material design and FluentUI.
TheLastTime - C# .NET 5 Blazor WebAssembly Progressive Web Application that tracks when was the last time you did something
Blazorise - Blazorise is a component library built on top of Blazor with support for CSS frameworks like Bootstrap, Tailwind, Bulma, AntDesign, and Material.
MudBlazor - Blazor Component Library based on Material design with an emphasis on ease of use. Mainly written in C# with Javascript kept to a bare minimum it empowers .NET developers to easily debug it if needed.
ant-design-blazor - 🌈A set of enterprise-class UI components based on Ant Design and Blazor WebAssembly.
awesome-blazor-browser - A Blazor WebAssembly app for browsing the "Awesome Blazor" resources.
fluentui-blazor - Microsoft Fluent UI Blazor components library. For use with ASP.NET Core Blazor applications
EdgeSharp - Build .NET Win32/WinForms/WPF WebView2 HTML5 Desktop Apps
BlazorMaps - BlazorMaps is a Blazor library that provides a C# interface for maps provided by Leaflet.js library. It includes several Leaflet.js features which are easily accessible from C# level within a project and it does not require any use of JavaScript.
BytexDigital.Blazor.Components.CookieConsent - Components for handling GDPR cookie consent
tauri - Build smaller, faster, and more secure desktop applications with a web frontend.