Um sistema operacional sem aplicativos não tem utilidade. E o Windows não é exceção. Apesar de sua longevidade, o sistema operacional da Microsoft precisa lutar para manter sua relevância. E para isso, é importante ajudar os desenvolvedores de apps a criá-los. Um exemplo é o WinApp, uma ferramenta de linha de comando projetada para simplificar o processo de criação de aplicativos para Windows. Entre outras funcionalidades, ele permite controlar todas as etapas necessárias para projetar, programar, empacotar, testar e, em última análise, criar apps para Windows.
O grande sucesso do Android deve-se, em grande parte, à existência de centenas de milhares de aplicativos que podem ser instalados de diversas fontes. No Windows, essa questão pode parecer resolvida. Mas no contexto atual, muitos desenvolvedores priorizam as plataformas móveis sobre o PC. Portanto, se a Microsoft quer que o Windows continue a ter apps atualizados e relevantes, não tem outra opção senão facilitar a vida dos criadores de aplicativos.
WinApp não é um aplicativo para todos. Mas seu design sugere que esse é o objetivo desta ferramenta. Seu propósito é apoiar o desenvolvimento de aplicativos Windows, simplificando um processo que consome tempo e esforço. Apesar de já existirem muitas ferramentas, ajudas e soluções. Como o Visual Studio, .NET ou MSBuild. Todas da Microsoft. Desta vez, o processo é realizado a partir da linha de comando.
O que é WinApp e para que serve
O que muitos chamam de WinApp, ou simplesmente winapp, tem como nome oficial Windows App Development CLI. Em português, CLI de Desenvolvimento de Aplicativos para Windows. CLI é o acrônimo para Interface de Linha de Comando. Portanto, WinApp é “uma interface de linha de comando” pensada para “gerenciar SDKs do Windows, empacotamento, geração de identidades de aplicativos, manifestos, certificados e o uso de ferramentas de compilação com qualquer framework de aplicativo”. Para entendermos, ele facilita a inicialização e criação de um app para Windows a partir de um desenvolvimento multiplataforma.
Como mencionei antes, existem muitas ferramentas para que os desenvolvedores realizem seus próprios aplicativos Windows. O Visual Studio é o mais popular. Trata-se de um ambiente de desenvolvimento integrado que combina editor de código, compilador, depurador e outras utilidades necessárias para programar um app. Mas há mais. O .NET é a plataforma de desenvolvimento da Microsoft que permite criar aplicativos Windows, mas também apps web ou na nuvem. E o MSBuild é seu motor de compilação.
A Microsoft implementou o WinApp para unificar todas as ferramentas e soluções de desenvolvimento em uma só. Gratuita, de código aberto e com as vantagens da linha de comando em termos de consumo de recursos e facilidade de uso. Nas palavras de seus criadores, “Construímos esta CLI para otimizar a integração com a plataforma de desenvolvedores do Windows: gerenciar a configuração do SDK, a geração de cabeçalhos, manifestos, certificados e o empacotamento em apenas alguns comandos”. Além disso, é compatível com .NET, C++, C#, CMake, Rust e Electron. De modo que praticamente qualquer programador ou designer de aplicativos poderá adaptar seu app para Windows.
Como instalar o WinApp no seu PC com Windows
Na página oficial do WinApp no GitHub, você encontrará todas as informações necessárias para começar a trabalhar com esta ferramenta e portar ou criar aplicativos para Windows. Inclui até guias específicos para quem utiliza .NET, C++, Electron, Rust, Tauri ou Flutter para criar seus próprios aplicativos. Fora isso, a instalação é relativamente simples. E, claro, é feita a partir da linha de comando. Por padrão, você pode escolher entre usar o WinGET, ou seja, o gerenciador de pacotes do Windows, ou o NPM, o gerenciador de pacotes do Node.js. Este último é especialmente utilizado por quem desenvolve aplicativos compatíveis com Electron.
Para instalar o WinApp com WinGet a partir da linha de comando:
winget install Microsoft.winappcli --source winget
E para instalar o WinApp com NPM para projetos Electron:
npm install @microsoft/winappcli --save-dev
Para verificar se a instalação foi bem-sucedida:
winapp --help
npx winapp --help
Os comandos principais do WinApp
Ao contrário do Visual Studio, o WinApp funciona exclusivamente a partir da linha de comando. Portanto, para aprender a usá-lo, você terá que memorizar seus comandos. Você encontra a lista completa neste link do GitHub (em inglês) e nesta página da Microsoft (em espanhol). E, como vimos antes, você sempre pode usar o comando –help para obter ajuda.
Instalar, iniciar e configurar:
- winapp init: Inicia o projeto com SDKs do Windows, manifesto e configuração (winapp.yaml).
- winapp restore: Restaura pacotes e regenera arquivos a partir do winapp.yaml.
- winapp update: Atualiza pacotes para versões mais recentes e regenera arquivos.
Empacotar:
- winapp pack: Cria pacotes MSIX assinados e prontos para a Microsoft Store.
- winapp create-debug-identity <executavel>: Adiciona identidade de pacote para depuração sem empacotamento completo.
Manifestos:
- winapp manifest generate: Gera o AppxManifest.xml a partir de modelos.
- winapp manifest update-assets <imagem.png>: Cria todos os assets MSIX (ícones) a partir de uma única imagem.
Certificados e assinatura:
- winapp cert generate: Cria um certificado de desenvolvimento.
- winapp cert install <cert.pfx>: Instala o certificado no repositório do sistema.
- winapp sign <arquivo.msix>: Assina pacotes ou executáveis.
Utilitários adicionais:
- winapp tool <ferramenta>: Acessa ferramentas de SDK como signtool ou makemsix.
- winapp store [argumentos]: Executa comandos do Microsoft Store CLI.
