Esta página se muestra en inglés. Una traducción al español está en curso.
ConfigsMay 12, 2026·3 min de lectura

Uno Platform — Pixel-Perfect Multi-Platform Apps with .NET

Build native mobile, desktop, and web applications from a single C# and XAML codebase targeting Windows, iOS, Android, macOS, Linux, and WebAssembly with pixel-perfect fidelity.

Introduction

Uno Platform is an open-source framework that extends the WinUI and WinAppSDK APIs to run on iOS, Android, macOS, Linux, and WebAssembly. Developers write C# and XAML once and deploy pixel-perfect applications to every major platform while preserving access to native platform APIs when needed.

What Uno Platform Does

  • Implements the WinUI 3 / WinAppSDK API surface on non-Windows platforms for true code sharing
  • Renders UI via Skia on most targets, ensuring pixel-perfect consistency across operating systems
  • Supports WebAssembly output so the same app runs in a browser without plugins
  • Provides access to native platform APIs through conditional compilation and platform-specific code paths
  • Integrates with the standard .NET build chain, NuGet, and Visual Studio / Rider tooling

Architecture Overview

Uno Platform implements the UWP/WinUI XAML stack on top of platform-specific renderers. On Windows it delegates to the native WinUI runtime. On other platforms it uses a Skia-based rendering backend that draws the full XAML visual tree to a GPU canvas, producing identical output everywhere. The framework maps XAML controls to the same layout engine and data-binding runtime regardless of target, and exposes platform interop through partial classes and conditional compilation.

Self-Hosting & Configuration

  • Install templates with dotnet new install Uno.Templates and scaffold using dotnet new unoapp
  • Select target platforms during project creation: Desktop, Mobile, Web, or all
  • Configure platform heads in the solution: each target has a thin project referencing the shared UI library
  • Set up iOS and Android builds through .NET MAUI workloads or Xcode/Android SDK directly
  • Customize themes via WinUI resource dictionaries and Uno's Fluent/Material/Cupertino theme packages

Key Features

  • WinUI API compatibility: existing WinUI knowledge and controls transfer directly
  • Hot Reload support for XAML and C# changes across all platforms during development
  • Skia renderer ensures the UI looks identical on every OS, eliminating per-platform visual bugs
  • Figma-to-XAML plugin for converting design files directly into Uno Platform views
  • C# Markup extensions available as an alternative to XAML for code-first UI definition

Comparison with Similar Tools

  • WinUI / WinAppSDK — Windows-only; Uno extends the same API to six additional platforms
  • MAUI — Microsoft's cross-platform framework with native renderers; Uno uses Skia for pixel-perfect consistency
  • Avalonia — WPF-inspired cross-platform XAML; Uno follows the WinUI API surface specifically
  • Flutter — Dart-based with custom rendering; Uno targets C#/.NET developers and the Windows ecosystem
  • React Native — JS bridge to native views; Uno compiles to native .NET code with no bridge overhead

FAQ

Q: Can I use existing WinUI or UWP libraries with Uno? A: Many WinUI libraries work directly. Uno maintains API parity for the most common controls and APIs; check the compatibility matrix for specifics.

Q: Is the WebAssembly target production-ready? A: Yes. Uno's WASM target ships .NET AOT-compiled applications that run in any modern browser with good performance.

Q: How does Uno handle platform-specific features like notifications or biometrics? A: Use conditional compilation (#if __IOS__, #if __ANDROID__) or Uno's platform-specific extension APIs to access native functionality.

Q: What is the licensing model? A: Uno Platform is Apache 2.0 licensed and free for all use. Commercial support plans are available optionally.

Sources

Discusión

Inicia sesión para unirte a la discusión.
Aún no hay comentarios. Sé el primero en compartir tus ideas.

Activos relacionados