Back to JetBrains

Interoperability of .NET | Sam Basu & Andres Pineda | .NET Day 2026

JetBrainsOctober 15, 202639m
In a Nutshell

.NET 10 and Uno Platform enable single-codebase apps that run everywhere—desktop, mobile, browser via WebAssembly, Wear OS, TV, Linux, and more—using SkiaSharp for consistent, hardware-accelerated rendering across all targets. AI agents integrated through MCP tools now automate UI testing, code generation, and self-verification, while design-to-code flows and visual editing let developers work at any point on the manual-to-AI spectrum. The core takeaway: .NET is the fastest, most maintainable way to ship production-grade, accessible, multi-platform applications with full AI augmentation and zero platform-specific rewrites.

AI-Generated Notes

These notes were generated by AI and may contain inaccuracies.

Sam Basu and Andres Pineda present on bringing .NET everywhere, with Sam as Developer Advocate at Uno Platform and Andres as a core developer on the Uno platform. The session focuses on .NET portability and how .NET code works across platforms.

The presentation covers three main areas: .NET as the foundational structure, portability across platforms, and artificial intelligence integration. .NET is standardized, open source, and works with tools and a rich ecosystem.

Uno Platform is an open-source software package that enables .NET usage across all platforms including mobile devices, iOS, Android, web browsers via WebAssembly, desktop systems (Windows, Mac OS, Linux), embedded systems, watches, cars, and TVOS. The foundation is .NET with a single common software base.

SkiaSharp is the preferred user interface rendering library, completely open source and maintained by Uno Platform and Microsoft. It displays 2D graphics across different platforms, relies on native .NET APIs, uses graphics processing and hardware acceleration wherever possible, and provides consistent and accurate outputs. It requires only getting the NuGet package to get started.

The speakers discuss AI adoption across a wide spectrum from those who view programming as a craft to those coordinating multi-agent operations with safety controls. .NET and chosen technology packages should allow working at any point within this range and provide appropriate tools.

Traditional software building involves writing things down by hand, doing them visually, or executing using artificial intelligence. Productivity increases when moving from manual to AI-assisted development. For Uno Platform, design tools convert design to code, and MCP tools have been used for approximately 1.5 years.

Developers can build through terminal using MCP and Claw tools with large language templates, through designs with ready-made designs and visual tools, or through visual approaches where needed.

Everything is available at platform.uno where users can start using the tool directly from the website. The platform offers extensive documentation, all open source and compatible with various platforms, plus many experimental models for experimenting and building.

The "Chefs" app demonstrates working everywhere with a single common software base. The app works on desktop using .NET 10, in web browsers via WebAssembly, on Linux, iOS, and Android with appropriate sizing. The app can be reimagined for foldable screens and different working modes like tent mode.

SkiaSharp is open source, works everywhere, is easy to get started with, and is multi-platform with hardware acceleration supporting .NET. SkiaFiddle from the Mono repository on GitHub allows seeing Skia benefits directly in the browser without installation, demonstrating high performance and capabilities like changing fonts.

The Uno Platform SDK connects to the latest version of the Uno Platform SDK and works on .NET iOS, Android, desktop, browser, and everywhere. When creating new projects in Visual Studio or VS Code, the template guides through application setup including .NET 10 operating environment selection and platform choices.

Platform choices include Android and iOS as standard, plus WebAssembly and desktop computers. New additions include Android TV, Android Auto, and Wear OS, which can be Android app packages re-released for different platforms or separate APK files for different form factors.

Template options include MVVM pattern with C# and XAML or NVUX style, coding language choice between XAML or C#, and theme selection from simple neutral theme or Fluent Material.

.NET 10 works for Android Wear OS using SkiaSharp, enabling .NET applications on smartwatches, high-end TVs, and Android Auto. A step counting app demonstrates native API access through .NET with SkiaSharp for user interface, requiring Android activity permission for step listening.

2026 is described as the year of Linux on the desktop. Setting up a Linux environment requires only installing .NET and .NET tools. The Uno check tool works on Mac OS, Linux, and Windows to set up environments. Linux is not limited to terminal-only development.

Rider IDE provides the same experience on Linux, Windows, and Mac. Shift to search and navigate between code snippets works identically. AI access is available as part of Rider, providing a truly integrated development environment supporting multiple platforms.

Ultramarine is a Linux distribution based on Arc with advantages in connectivity, scalability, AI from the start, and feature options. Applications can respond to theme changes like the Marsha theme, which completely changes the desktop experience beyond simple dark or light themes.

SkiaSharp rendering focuses on drawing only what's needed per frame. A timer example shows red flashing when redrawing is needed, while other elements don't redraw. Ping pong ball movement demonstrates selective redrawing with red frame indication.

Screen reader support is provided, and the application responds to operating system display scale settings. Text gradients illustrate user interface scaling, and changing system text size in accessibility settings immediately affects the application including both text and control elements.

Agents need context through multiple methods including skills and MCP tools. Building proxies or testing systems is recommended. Architecture and programming interfaces exist for Python, C#, Rust, and Go, with preference for C# version.

C# MCPs include an MCP document that allows agents to search and fetch information from documentation without leaving Rider or other development environments. Playwright for .NET applications provides sophisticated testing for desktop and mobile device applications.

GitHub Copilot demonstrates MCP tool usage by reading CS project files and finding available tools. The agent captures screenshots and understands visual application structure at runtime. The counter app example shows agents can test counter buttons by tapping three times, automating UI tests and unit tests with protective barriers for confidence in AI-generated code.

The agent located a button, clicked it three times, took visible screenshots, and performed the actual action. The counter now reads three, allowing the agent to verify its own work. This demonstrates the core capability of agents checking their own actions within the application.

All actions can be performed using proxy tools. When running Copilot from any application, the window can be expanded. At any time, MCP protocols appear ready and connected, functioning both internally and within an IDE. Skills can be reviewed, with more than 70 skills documented and prepared for the agent to execute at any time.

On the Uno Platform.Uno, there is a text box where logging into the app occurs. The demonstration involves a complete WASM application loading as a mini Uno application inside a WASM container. Specifications and orders are provided to begin building applications.

A gallery app runs similar to an integrated enterprise sales dashboard, such as a CRM application. The agent uses .NET during implementation and has access to all skills and MCB tools to check itself, search documents, and fetch data when needed. The agent does not work in isolation but receives substantial assistance and knows exactly how to build multi-platform .NET applications.

The goal is to remove obstacles to getting started with .NET multi-platform development. All tools are provided immediately within the browser, eliminating the need to set up local development environments or command-line interfaces. The application appears and becomes interactive from the very first moment.

The app layout displays data and maps, supporting both light mode and dark mode. The application works across different screen sizes including tablets, desktops, and very large screens. Users coming from SwiftUI or Jetpack Compose previews will find familiar elements, similar to Storybooks in the React universe.

Entire application user interfaces display for viewing visual differences or layout changes. Copies of each page can be created. For example, accessing the contacts page allows creating copies that start with implicit previews, then mockups for each page. Design mode enables editing pages like the contact page, which may appear in an empty state.

A view model enables XBind for direct data binding. Setting up a display template makes changes permanent, with no results displayed. The page immediately reflects its imperfect state, as if a search was conducted with no findings. The same page can be visualized across multiple form factors, multiple data states, and different styles using the Agent A workflow.

The agent has many tools to help with customization of choice prompts. The agent works only on the smallest details rather than attempting impossible tasks. The goal is bringing all capabilities through agent workflow to enable building .NET applications across multiple platforms.

.NET enables delivery of cross-platform user interface offerings, making .NET applications work everywhere. Applications can run on washing machines, Wear OS, TVs, tablets, desktop computers, and mobile phones. The future involves AI agents, requiring skills, MSDN tools, and dedicated tools to provide all necessary resources.

The Uno Platform is open source, available at platform.uno. An active community exists on GitHub and Discord. Both presenters maintain accounts on most social media platforms.

.NET works everywhere, running on different platforms including the browser. The focus shifts to building applications. Non-technical users can run .NET on television, and Samsung refrigerators with screens also support .NET execution.

.NET is fast, providing the best of both worlds along with the entire ecosystem that has not lagged behind in agent programming. C# and .NET maintain performance across different versions over the years.

When pull requests are mostly written by smart agents, questions arise about ownership of apps in app stores. The agent cannot be held responsible for mistakes, requiring code review. Ultimately, the program belongs to the developer whose name appears on it. Using .NET, which is easy to maintain, provides better understanding and confidence with all controls in place. Software engineering principles matter now more than ever as agents perform tasks correctly.

AI functions as an amplifier, helping with abilities, knowledge, processes, and ways of working rather than replacing them.

All platform applications render using Skia across all platforms. SkiaSharp loads a smaller application inside it for rendering. SkiaSharp is the same Skia engine running on desktop, functioning on other platforms and in browsers. The GPU is used only to draw HTML and elements that look like HTML.

SkiaSharp adds monitoring and accessibility features. When using Skia, these features are not automatically available. Screen reader support and similar accessibility features are being implemented. Drawn objects behave as text boxes, input fields, or real buttons while maintaining accessibility guarantees.

SkiaSharp has a very active community and is entirely open source, with many Microsoft engineers contributing to implement latest improvements. Vulkan support is in early stages, with various graphics engines including Metal taking advantage of hardware acceleration across all platforms including web browsers.

Packages produced are genuine applications like APK files and iOS application packages that can be deployed. Android deployment is straightforward, while iOS requires proper certificate and provisioning profile configuration. Hot Reload features continue working even in simulators. Design tools allow navigation through the visual tree in simulators with instant changes. Nothing replaces actual on-device testing, and TestFlight or other CD pipeline tools can distribute to smaller user groups before app store deployment.

Real Android devices connected to computers display what shows on the device. iPhone connection follows similar processes with Apple-specific steps. Testing on wearable devices involves connecting phones or devices with developer mode enabled for debugging. Applications can be packaged for later download and testing without debugging.

The Uno Platform supports XAML but also offers C# for XAML. C# code can be written by definition and compiled to build Uno applications. Both options are available through Uno Platform documentation, blogs, or community resources. C# provides flexibility throughout applications for building cross-platform apps.

Experiments are underway with "reactors" in the WinUI world, which are C# type definition objects. These are being studied to determine if all development can be done using C# interactively without XAML.

Keep JetBrains in your library

Save the videos and channels worth coming back to, and find them again in one place.