PlusUi.core
9.0.0.7
dotnet add package PlusUi.core --version 9.0.0.7
NuGet\Install-Package PlusUi.core -Version 9.0.0.7
<PackageReference Include="PlusUi.core" Version="9.0.0.7" />
<PackageVersion Include="PlusUi.core" Version="9.0.0.7" />
<PackageReference Include="PlusUi.core" />
paket add PlusUi.core --version 9.0.0.7
#r "nuget: PlusUi.core, 9.0.0.7"
#addin nuget:?package=PlusUi.core&version=9.0.0.7
#tool nuget:?package=PlusUi.core&version=9.0.0.7
PlusUi
PlusUi is a cutting-edge, fully cross-platform UI Framework designed to deliver a seamless and consistent user experience across iOS, Android, Windows, Mac, and Linux. Leveraging hardware acceleration through Silk.NET and utilizing SkiaSharp as the rendering layer, PlusUi ensures that all platforms look, feel, and behave exactly the same. This approach guarantees high performance and visual fidelity, making PlusUi an ideal choice for modern, responsive applications.
The Journey Behind PlusUi
After years of working with various cross-platform UI frameworks and repeatedly encountering inconsistencies between platforms, I decided to explore a different path. PlusUi wasn't born from a belief that I could outdo established solutions, but from genuine curiosity: what if I approached the cross-platform challenge with consistency as the absolute priority? This project represents that personal journey�an attempt to create something where what you design is exactly what users see, regardless of device. It's about seeing the results emerge when building things to work as I imagined they should.
Why Choose PlusUi?
In a landscape filled with cross-platform solutions like MAUI, Uno, Avalonia, and Blazor Desktop, PlusUi stands out for several key reasons:
True Visual Consistency: Unlike frameworks that adapt to native controls, PlusUi renders identically across all platforms through SkiaSharp, ensuring your app looks and behaves exactly the same everywhere.
Performance First: Built with hardware acceleration at its core, PlusUi delivers superior performance for graphics-intensive applications and smooth animations.
Lightweight Footprint: PlusUi maintains a smaller resource footprint than alternatives that need to incorporate multiple platform-specific rendering engines.
Simple Programming Model: Clean, intuitive MVVM binding with a pure C# approach. No XAML to learn, no complex markup languages or designers - just straightforward code that's familiar to .NET developers.
Freedom from Platform Limitations: By using a consistent rendering approach, PlusUi isn't constrained by platform-specific UI capabilities or limitations.
To get in touch regarding Support, Feedback or just a quick chat about your experiences the discord server would be the best place. See you there!
Releases
Features
The following is a list of some of the features currently available in PlusUi. This section will be further expanded as the project evolves and may not list all features.
- Cross-platform support:
- iOS (TODO)
- Android (TODO)
- Windows
- Mac (TODO)
- Linux (TODO)
- Easy to use and extend
- Mvvm Data Binding
- Modern UI components
- Customizable themes
Documentation
All the controls, samples, and project setup instructions can be found in the GitHub Wiki. For more detailed information, including advanced usage and troubleshooting, please refer to the comprehensive guides and FAQs available in the wiki.
Example
This quick Example shows a simple Sample on how the code written for this framework translates into UI.
Technical Architecture
How PlusUi Works Under the Hood
PlusUi implements a custom UI framework with a clean separation of concerns across multiple architectural layers:
Core Rendering Pipeline
Silk.NET Foundation: PlusUi uses Silk.NET for its windowing and input capabilities. This provides low-level access to platform-specific windowing systems and input devices through a unified API.
SkiaSharp Rendering Layer: The rendering is handled by SkiaSharp, coordinating between OpenGL contexts and SkiaSharp's canvas. Every UI element utilizes SkiaSharp's drawing primitives for consistent cross-platform visuals.
Custom Layout Engine: The framework implements a measurement and arrangement system.
This architecture allows PlusUi to deliver a consistent user experience across platforms while maintaining good performance through direct rendering. The component model and binding system provide a familiar programming pattern for .NET developers without requiring XAML or other markup languages.
Contributing
We welcome contributions! Please open an issue to discuss any planned changes before submitting a pull request. This helps us ensure that your contribution aligns with the project's goals and avoids duplication of effort.
When submitting a pull request, please ensure that your code follows the project's coding standards and includes appropriate tests. We also encourage you to update the documentation if your changes affect it. Contributions to documentation, samples, the README, or the wiki are also welcome.
Thank you for your interest in contributing to PlusUi!
License
This project is licensed under the MIT License - see the LICENSE file for details. The MIT License was chosen for its permissiveness and simplicity, allowing for wide usage and contribution. It ensures that the project remains open and accessible to developers while protecting the original authors.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net9.0
- Microsoft.Extensions.Hosting (>= 9.0.1)
- Silk.NET.Input (>= 2.22.0)
- Silk.NET.OpenGL (>= 2.22.0)
- Silk.NET.Windowing (>= 2.22.0)
- SkiaSharp (>= 3.116.1)
- SkiaSharp.NativeAssets.Linux (>= 3.116.1)
- SkiaSharp.NativeAssets.Win32 (>= 3.116.1)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on PlusUi.core:
Package | Downloads |
---|---|
PlusUi.desktop
The Desktop PlusUi Package |
GitHub repositories
This package is not used by any popular GitHub repositories.