Skip to content

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!!

License

Notifications You must be signed in to change notification settings

unoplatform/uno

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Uno Platform Banner

NuGet Azure DevOps NuGet Downloads GitHub Stars All Contributors Open Uno in Gitpod PRs Welcome

Uno Platform is an open-source developer platform for building single-codebase .NET applications that run natively on Web, Desktop, Mobile, and Embedded systems. It uses the WinUI 3 API surface, allowing you to reuse your existing C# and XAML skills to reach all platforms.

Uno Platform is trusted by over 300 contributors and used by enterprise clients such as Toyota, Microsoft, and Kahua for mission-critical applications. With ~10,000 GitHub stars and 130+ million NuGet downloads, it is a proven foundation for professional-grade development.


Uno Platform and Uno Platform Studio for The Most Productive C# / XAML Dev Loop

Uno Platform (Core Framework)

The free and open-source (Apache 2.0) foundation for building cross-platform .NET applications. It includes the UI framework, platform heads, and a rich set of developer experience enhancements.

🌐 Cross-Platform Support

Develop fully native applications for a wide range of platforms from a single codebase.

  • Mobile (iOS & Android): Build native, pixel-perfect UIs with C# and XAML.
  • Web (WebAssembly): Reuse existing C# and XAML skills to build fast web applications.
  • Desktop (Windows, macOS & Linux): Uno Platform uses Skia for rendering across all desktop platforms, ensuring high-performance, hardware-accelerated graphics and animations. On Windows, Skia runs within a Win32 shell, on macOS within an AppKit shell (Metal when available), and on Linux within an X11 shell or directly to the Framebuffer for embedded scenarios.

πŸ› οΈ Toolkit & Extensions

Uno Platform Studio

An optional premium toolkit that integrates with Visual Studio, VS Code, and JetBrains Rider to offer an unparalleled development loop.

  • Hot Design: A next-generation visual designer that transforms your live app into a design surface with a single click.
  • Hot Reload: Instantly modify XAML and C# on a running app, allowing for rapid iteration without losing the app's state.
  • Design-to-Code: Export Figma designs to clean, responsive XAML or C# markup in seconds.
Uno Platform Studio - Hot Design

πŸš€ Quick Start

Get your development environment ready and create your first app in minutes.

  1. Check Your Environment: Use our Uno.Check command-line tool to automatically check, install, and configure all required workloads and dependencies.

  2. Create Your App: Use the Template Wizard in your IDE or the command line to quickly create and configure new Uno Platform projects with the appropriate settings for your target platforms.

    Uno Platform New Project Wizard

  3. Build and Run

➑️ For detailed guides, visit the Official Uno Platform Documentation on how to get started with Uno Platform.


πŸ› οΈ How It Works

Uno Platform unifies cross-platform development by abstracting platform-specific implementations behind the WinUI 3 API surface.

  1. Develop: You write your application in a single project using C# and XAML (or C# Markup) within your preferred environment (Visual Studio, JetBrains Rider, Visual Studio Code) on Windows, macOS, or Linux.
  2. Render: Uno Platform renders your UI using one of two methods:
    • Unified Skia Rendering: A Skia-based engine draws your UI on a canvas, ensuring consistent performance, smooth animations, and pixel-perfect visuals across all targets.
    • Native Rendering: The XAML UI is translated into native platform controls (e.g., UIKit on iOS), providing a platform-native look and feel when desired.
  3. Deploy: The build process generates a native application package for each target platform from the single codebase.

Uno Platform Features


πŸ“š Learning & Community Resources

X/Twitter Followers Uno Platform Discord YouTube Followers

Contributing

This is an active open-source project, and we welcome contributions from the community. To learn how you can get involved, please refer to our Contribution Guide (CONTRIBUTING.md) for details on how to get started.

Contributors

Thanks go to these wonderful people (List made with contrib.rocks):

Uno Platform Contributors

License

This repository is licensed under the Apache 2.0 License.