Add some Swagger to your Windows and Uno Platform application using Kiota and OpenAPI

This post is going to walk through using the Microsoft tool, Kiota, to generate client code from a Swagger / OpenAPI definition that can be used within a Windows (WinUI/Windows App Sdk) / Uno Platform application. Ok, so let’s backup a little – firstly, Swagger / OpenAPI (see description) is used to describe service endpoints. … Read more

What’s a Navigation Region in Windows and Uno Platform Applications?

In all but the simplest single page application, the layout of an application has to be dynamicaly changed in order to display information, or capture input from the user. Most application frameworks provide a variety of components to make this easy. For example in a WinUI / Windows App SDK application can use a Frame … Read more

Navigation using Regions in Windows and Uno Platform Applications

Out of the box, applications built using WinUI / Windows App Sdk or the Uno Platform have access to a wide range of controls, such as Frame, TabBar and NavigationView that can be used for navigation. However, there’s no common pattern/metaphor that makes it navigate within an application. Uno.Extensions includes Navigation which provides a consistent abstraction for … Read more

Using Syncfusion Controls in Uno Platform Application using MAUI Embedding.

The Uno Platform supports many third party control libraries, such as Mapsui and LiveCharts, but sometimes there are components that you want to use that haven’t been adapted to work with Uno. For this, you can turn to .NET MAUI Embedding which allows for any .NET MAUI control to be hosted within an Uno Platform … Read more

Uno Platform 5.2 Released – One Project To Rule Them All

This has been a work in progress over the last couple of releases in order to deliver a better developer experience for the Uno Platform. The 5.1 release introduced the Uno.Sdk which allowed for better integration with Visual Studio – no more pesky “reload project” warnings appearing. With the 5.2 release the Uno Platform goes … Read more

Switching AI Models with ChatGPT in a Windows and Uno Platform Application

In my previous post I walked through how to connect to ChatGPT in order to integrate AI into a multi-platform (Windows App SDK and the Uno Platform) based application. In this post we’re going to add the ability to switch which AI model (GPT 3, 4 etc) is used when connecting to ChatGPT. We’ll also cover … Read more

Connecting Your Windows and Uno Platform App to ChatGPT with Azure.AI.OpenAI

In today’s digital world, integrating AI into your applications has become increasingly important. One powerful AI model that you can leverage is OpenAI’s GPT, known for its natural language processing capabilities. In this blog post, we’ll guide you through the process of connecting your Windows app to ChatGPT using the Microsoft Azure.AI.OpenAI library, allowing you … Read more

Managing Dependencies in Windows and Cross Platform Applications

As with all software managing dependencies in often a lot harder than it seems, particularly when there are conflicting priorities. In this post I’m going to talk about some of the challenges developers face relating to dependencies when building Windows and cross/multi platform applications using .NET, the Windows App SDK and the Uno Platform. I’ll … Read more

Conditional Template Selector for XAML Applications for Windows and Uno Platform

Ok this post took a bit of inspiration from the C# Markup support that’s available for the Uno Platform where it’s easy to build a template selector (for a ListView for example) using a set of Case statements. This got me thinking that there must be a way that we can use a similar technique … Read more

Using ChatGPT and GitHub Copilot to Generate the XAML for your Windows application

In this post I’m going to experiment using ChatGPT and Copilot to help generate the XAML for pages in a Windows application. Since we’ll be using WinUI and the Windows App SDK, the application can be extended to support other platforms via the Uno Platform.  ChatGPT We’ll start by using ChatGPT (in this case ChatGPT v3.5) … Read more

Designing and Building Windows Applications using Figma and the Uno Platform

Last week, the Uno Platform officially launched their Figma Plugin which works in parity with the Uno Platform Material Toolkit to support both designers and developers with the process of designing applications. If you haven’t already, check out the announcement post that provides a high level overview of both the plugin and toolkit. In this post we’ll … Read more

NDC Sydney – Come learn why Figma is important to the Uno Platform

For a lot of people if you mention the Uno Platform they would immediately place it in the same bucket as other cross platform, .NET, technologies such as .NET Multi-platform App UI (.NET MAUI) and Avalonia UI and if you’re only interested in the core capability of create apps that run on multiple platforms from a … Read more

Add Maps to your WinUI / Windows App SDK Application using MapControl

The latest 1.5 experimental and preview version of the Windows App SDK contains the much anticipated MapControl. To get started, all you need to do is the following: <Window x:Class=”App2.MainWindow” xmlns=”http://schemas.microsoft.com/winfx/2006/xaml/presentation” xmlns:x=”http://schemas.microsoft.com/winfx/2006/xaml”> <Grid> <MapControl x:Name=”mapControl” Width=”800″ Height=”600″ InteractiveControlsVisible=”True” MapServiceToken=”{your map service token}” /> </Grid> </Window> Unfortunately, this doesn’t work out of the box (see GitHub … Read more

Security with Windows Applications and AppContainers

One of the common misconceptions of Windows applications are that they are inherently insecure and that it’s not possible to build and deploy applications that are secure by default. If you look at other platforms, such as iOS and Android, applications have restricted permissions and have to opt in (often requiring explicit user consent) to … Read more

Saving Data using Settings for Windows and Uno Platform Applications

Following on from the posts on Dependency Injection, Logging and Configuration, in this post we’re going to look at how data can be persisted between sessions using Settings within a Windows or Uno Platform application. This series makes use of Uno.Extensions in order to initialize the services that are required by the application. At the end of the … Read more

Configuration for Windows and Uno Platform Applications

Following on from Dependency Injection and Logging, in this post we’re going to configure the IHostBuilder to load and access configuration information within a Windows or Uno Platform application. We’ll pick up where we left off with the IHostBuilder setup to switch environments and configure logging. var builder = this.CreateBuilder(args) .Configure(host => host #if DEBUG … Read more

Logging for Windows and Uno Platform Applications

In my previous post I covered Dependency Injection for Windows and Uno Platform Applications which covered creating a new application and adding dependency injection using the Uno.Extensions which leverages the Microsoft Extensions IHostBuilder to create an IHost instance. In this post we’re going to adjust the IHostBuilder to setup Logging support. We’re going to start … Read more

Dependency Injection for Windows and Uno Platform Applications.

In the next few posts we’re going to be looking at the TubePlayer sample application for the Uno Platform. For this post we’re going to focus on using Uno.Extensions to add dependency injection to an Uno Platform application. Uno.Extensions builds on the awesome work that Microsoft has done with the Microsoft.Extensions that provides capabilities such … Read more