Gtk#
Avalonia
Gtk# | Avalonia | |
---|---|---|
1 | 272 | |
430 | 26,105 | |
- | 1.9% | |
0.0 | 9.8 | |
almost 2 years ago | 6 days ago | |
C# | C# | |
GNU General Public License v3.0 or later | 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.
Gtk#
-
What language do you use for developing GTK-Applications?
mono/gtk-sharp is still stuck on 2.0 I think, but GtkSharp/GtkSharp uses 3.22 and up.
Avalonia
- Uno Platform Studio: GUI Designer for Cross-Platform .NET Applications
-
Visual Basic 6 IDE recreated in C#
Slightly off topic, but this was built using Avalonia, which I have never heard of. Has anyone used it? The promise sounds impressive (beautiful, cross-platform applications from a single .NET codebase), just wondering whether it actually delivers?
https://avaloniaui.net/
-
Visual Basic 6 rebuilt in C# – complete with form designer and IDE in browser
They seem to be using this framework https://github.com/AvaloniaUI/Avalonia
-
A comparison of Rust's borrow checker to the one in C#
you should checkout AvalonuiaUI[0] or unoPlatform[1] if wanting to target web/mobile/window/linux/macOS
if building for the web online, asp.net core runs on Linux servers as well as windows
and there's MAUI [2] ( not a fan of this), you are better-off with with the others.
in summary c# and .NET is cross-platform, third party developers build better frameworks and tools for other platform while Microsoft prefers to develop for Microsoft ecosystem, if you get
[0] https://avaloniaui.net/
-
Should JavaScript be split into two languages? Google proposal divides opinion
> And even if it were accomplished in a central open source library like Flutter, that adds a considerable amount to the package size of any application.
The download really isn't much different to a typical website. That Flutter demo in wasm is 2 megabytes.
Avalonia UI's WebAssembly uses canvas in C#: https://avaloniaui.net/
Uno Platform's WebAssembly implementation uses the DOM rather than drawing to canvas: https://platform.uno/
Uno's philosophy is to use platform native controls. The benefit is that you get platform native characteristics, the cost is it will never be exactly the same in each browser and platform.
- Why I'm skeptical of rewriting JavaScript tools in "faster" languages
-
Essential .NET Libraries Every Developer Should Know
Avalonia is an open-source UI framework that can run on Windows, macOS, and Linux.
- Avalonia: Cross-Platform .NET UI Framework for Desktop, Mobile, and Web
-
Microsoft donates the Mono Project to the Wine team
> - If you are working on Linux, you can build and deploy Android apps only
> - You need a valid Visual Studio or IntelliCode subscription
You don't: https://marketplace.visualstudio.com/items?itemName=ms-dotne... (DevKit, which is the licensed one, is completely optional - it gives you VS-style solution explorer. You can already get it with e.g. F#'s Ionide that works for any .NET Code file)
Or https://github.com/razzmatazz/csharp-language-server with either Neovim or Emacs.
> Okay, where's Linux? That's what Mono was originally made for and where Mono really shines.
Regretfully, you have ignored all sibling comments, so here it goes:
Uno: https://platform.uno/docs/articles/get-started-vscode.html?t...
(Uno has more involved setup than Avalonia but has way better mobile targeting, and casual reports indicate smaller memory footprint)
Avalonia: https://avaloniaui.net + https://marketplace.visualstudio.com/items?itemName=Avalonia...
dotnet new --install Avalonia.Templates
-
Ladybird browser to start using Swift language this fall
Luckily, for the project of this type, you can use SkiaSharp (which is awesome) or simply implement a rendering back-end that targets OpenGL/Vulkan/DX/Metal. There are rich binding libraries with low/zero overhead to do so or you can just do it directly.
For example, Avalonia implemented Vulkan back-end some time ago, no C or C++ required: https://github.com/AvaloniaUI/Avalonia/pull/12737
You are absolutely not married to Avalonia, MAUI or Uno, but if are targeting desktop, then AvaloniaUI offers great user experience.
What are some alternatives?
Xamarin.Forms - Xamarin.Forms is no longer supported. Migrate your apps to .NET MAUI.
Uno Platform - Open-source platform for building cross-platform native Mobile, Web, Desktop and Embedded apps quickly. Create rich, C#/XAML, single-codebase apps from any IDE. Hot Reload included! 90m+ NuGet Downloads!!
metroframework-modern-ui - My humble attempt to bring the new Modern UI alias Metro UI of Windows 8 to .NET Windows Forms applications.
Introducing .NET Multi-platform App UI (MAUI) - .NET MAUI is the .NET Multi-platform App UI, a framework for building native device applications spanning mobile, tablet, and desktop.
Eto.Forms - Cross platform GUI framework for desktop and mobile applications in .NET
WPF - WPF is a .NET Core UI framework for building Windows desktop applications.
Modern UI for WPF - MUI - Modern UI for WPF
UWP Community Toolkit - The Windows Community Toolkit is a collection of helpers, extensions, and custom controls. It simplifies and demonstrates common developer tasks building .NET apps with UWP and the Windows App SDK / WinUI 3 for Windows 10 and Windows 11. The toolkit is part of the .NET Foundation.
MahApps.Metro - A framework that allows developers to cobble together a better UI for their own WPF applications with minimal effort.
XWT - A cross-platform UI toolkit for creating desktop applications with .NET and Mono