dotnet new templates for Uno Platform
The Uno Platform provides a set of command-line templates to create cross-platform applications.
To install the templates, type the following:
dotnet new install Uno.Templates
To determine all parameters available for a template use dotnet new [templatename] -h.
Important
Installing the templates is done per dotnet CLI version. Meaning that the templates are installed for the version shown by dotnet --version. If you tried to use the templates with a version different than the one you used for installing, you'll get "No templates found matching: '
This is common when using global.json that alters the .NET CLI/SDK version. Specifically, it's common for the UI Test template.
Check your developer environment
Open a command-line prompt, Windows Terminal if you have it installed, or else Command Prompt or Windows Powershell from the Start menu.
Setup uno.check by installing or updating the tool with:
dotnet tool update -g uno.checkRun the tool from the command prompt with the following command:
uno-checkYou can optionally add the
--target desktop --target web(orios,android,windows) parameters based on your intended development platforms.Follow the instructions indicated by the tool.
You can find additional information about uno-check here.
Uno Platform Application
This template can be used to create a multi-platform application for iOS, Android, WebAssembly, Linux, and Win32 Desktop, which uses the new WinUI 3 APIs.
Tip
To create a new Uno Platform app and browse all the capabilities of the template, head to our Live Wizard to create a dotnet new command line. For a detailed overview of the Uno Platform project wizard and all its options, see the Wizard guide.
It comes with the Blank and Recommended presets.
To create a blank template, using minimal dependencies:
dotnet new unoapp -preset=blank -o test
To create from a recommended template using Uno.Extensions:
dotnet new unoapp -preset=recommended -o test
Note
Starting with Uno.Sdk 6.0, Skia rendering is now the default rendering engine in Uno Platform templates for iOS/Android/WebAssembly. If you prefer native rendering instead, you can use the -renderer native parameter.
More articles on WinUI 3:
Uno Platform Blank library
This template can be used to create a blank library. With this type of library, Skia and WebAssembly do not need to be built separately, but cannot be differentiated.
A basic example:
dotnet new unolib -o MyUnoLib
Uno Platform MAUI Embedding Class Library
This template can be used to create a .NET MAUI Controls library to embed within your Uno Platform app.
A basic example:
dotnet new unomauilib -o MyMauiEmbeddingLibrary
Uno Platform Uno.UITest library
This template creates a project for creating and running UI Tests based on Uno.UITest.
Considering you've created an application with dotnet new unoapp -o MyApp, you can then create a UI Tests library with these steps:
- Create a folder name
MyApp\MyApp.UITests - In that folder, run
dotnet new unoapp-uitest
This will automatically add the new project to the existing solution.
For additional information about UI Tests creation, visit the Uno.UITest documentation.
Uninstalling the templates
Using a command line or terminal, run the following command:
dotnet new uninstall Uno.Templates
Tip
If you’re running into issues, start by checking our common issues list and the Uno Platform health status.
You can also verify whether there is an ongoing outage affecting Uno Platform online services at: https://status.platform.uno/
If you still need help, reach out via our GitHub Discussions or join our Discord server, where both the engineering team and the community are available to assist you.