Pixel perfeito. Multiplataforma. C# e XAML do Windows. Hoje.
O que é a Plataforma Uno?
A plataforma Uno é uma plataforma de código aberto para a construção rápida de aplicativos nativos para dispositivos móveis, web, desktop e incorporados com base de código único.
Ele permite que códigos C# e WinUI XAML e/ou C# sejam executados em todas as plataformas de destino, ao mesmo tempo que permite o controle de cada pixel. Ele vem com suporte para sistemas de design Fluent, Material e Cupertino prontos para uso. A plataforma Uno implementa um número crescente de APIs WinRT e WinUI, como Microsoft.UI.Xaml , para permitir que aplicativos WinUI sejam executados em todas as plataformas com desempenho nativo.
Use as ferramentas WinUI do Windows no Visual Studio, como XAML Hot Reload e C# Hot Reload, crie seu aplicativo tanto quanto possível no Windows e valide se seu aplicativo é executado em iOS, Android, macOS e WebAssembly.
Visite nossa documentação para mais detalhes.
Começando
Consulte os guias de introdução completos para começar a usar o Visual Studio, o Visual Studio Code ou o JetBrains Rider.
Para um exemplo maior e demonstração de recursos:
- Visite o repositório da Galeria Uno.
- Experimente o WebAssembly Uno Playground ao vivo em seu navegador.
Recursos da plataforma Uno
- Plataformas suportadas:
- janelas 10 e janelas 11
- Windows 7 (via Skia Desktop)
- iOS, MacOS (Catalyst) e Android (via .NET)
- WebAssembly por meio do SDK WebAssembly do .NET Runtime
- Linux (via Skia Desktop com X11 e FrameBuffer)
- macOS (através do Skia Desktop)
- Ciclo de desenvolvimento:
- Desenvolva primeiro no Windows usando o Visual Studio
- XAML Hot Reload para edição XAML ao vivo em cada pressionamento de tecla
- C# Hot Reload no Windows (VS2022/Rider/VS Code), Linux e macOS (VS Code/Rider)
- Valide em outras plataformas o mais tarde possível
- Desenvolva em VS Code, Rider, Codespaces ou GitPod
- XAML e/ou C# Hot Reload para WebAssembly, Linux, iOS e Android
- Uno.UITest, uma biblioteca para criar testes de UI multiplataforma para WebAssembly, iOS e Android.
- Controles entre plataformas:
- Modelagem de controle
- Modelagem de dados
- Estilo
- Animações ricas
- Suporte ao código WinUI/UWP:
- Kit de ferramentas da comunidade do Windows
- Kit de ferramentas da comunidade do Windows (Uno Fork)
- Kit de ferramentas da comunidade MVVM
- Comportamentos XAML da Microsoft
- Prisma
- SkiaSharp
- SkiaSharp.Extendido
- Oficial ReactiveUI
- WindowsStateTriggers
- Rx.NET
- ColorCode-Universal
- LibVLCSharp
- MapsUI
- Gráficos ao vivo
- Qualquer projeto UWP
- Design Responsivo:
- Gerenciador de estado visual
- Gatilhos de estado
- Gatilhos adaptativos
- Específico da plataforma:
- Controles e propriedades nativos via XAML condicional
- Qualquer uma das bibliotecas existentes do Xamarin iOS/Android disponíveis
- Renderizadores Xamarin.Forms:
- Renderizadores Uno Platform WebAssembly para Xamarin.Forms
Aplicativos WebAssembly ao vivo
Aqui está uma lista de aplicativos ao vivo feitos com a plataforma Uno para WebAssembly.
- O Playground da Plataforma Uno (Fonte).
- A Uno Gallery demonstra o uso das diretrizes Fluent e Material.
- O Explorador de Pacotes NuGet (Fonte).
- A Calculadora Uno, uma porta iOS/Android/WebAssembly C# simples, mas poderosa da calculadora que acompanha o Windows (fonte). Experimente também a versão iOS, a versão Android e a versão Linux.
- O aplicativo Community Toolkit Labs
- Fork SkiaSharp para a plataforma Uno, Skia é uma API gráfica 2D de plataforma cruzada para plataformas .NET baseada na Skia Graphics Library do Google (fonte).
- O Uno.WindowsCommunityToolkit (fonte).
- O Uno.RoslynQuoter, uma ferramenta de análise C# baseada em Roslyn (fonte).
- O aplicativo SQLite + Entity Framework Core, uma demonstração da combinação de Roslyn, Entity Framework Core, SQLite e Uno Platform para manipular um banco de dados no navegador.
- Um WebAssembly AOT RayTracer.
Deixe-nos saber se você disponibilizou seu aplicativo publicamente, nós o listaremos aqui!
Tem dúvidas? Solicitações de recursos? Problemas?
Não deixe de visitar nosso FAQ, criar um problema, abrir uma discussão no GitHub ou visitar nosso servidor Discord - onde nossa equipe de engenharia e comunidade poderão ajudá-lo.
Contribuindo
Há muitas maneiras de contribuir com a plataforma Uno, já que as APIs WinRT e WinUI são muito grandes! Leia nosso guia de contribuição para saber mais sobre nosso processo de desenvolvimento e como propor correções de bugs e melhorias. Venha nos visitar no Discord para obter ajuda sobre como contribuir!
Contribua com o Uno em seu navegador usando GitPod.io, siga nosso guia aqui.
Colaboradores
Os agradecimentos vão para essas pessoas maravilhosas (lista feita com contrib.rocks):
? Obrigado.