Criando um app de terminal (CLI) para criar arquivos react #3
Published: 2024-02-14 00:23:41

## Tabela de Conteúdo
 * [Parte 1: O que vamos fazer?](#parte-1)
 * [Parte 2: Publicar no Windows](#parte-2)
 * [Parte 3: Variáveis de Ambiente no Windows](#parte-3)
 * [Parte 4: Testando o programa](#parte-4)
 * [Final](#final)

## Parte 1: O que vamos fazer?  <a name="parte-1"></a>

Agora que já temos um aplicativo funcional podemos publicar esse app como um executável no windows e adicionarmos o seu caminho as variáveis de ambiente, de modo que possamos invocar esse aplicativo de qualquer lugar.


## Parte 2: Publicar no Windows  <a name="parte-2"></a>

Para isso vamos primeiro publicar o nosso aplicativo, a maneira mais simples é fazermos isso pelo console com o comando:

```bash
dotnet publish -o <CAMINHO>
```

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/99sbg2tpp4tqh39ke9v8.png)


Se formos na pasta indicada como saída do comando devemos ver diversos arquivos que são necessários para o nosso projeto funcionar.

![Pasta do programa publicado](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0nfzett2tfxlibderk59.png)

## Parte 3: Variáveis de Ambiente no Windows <a name="parte-3"></a>

Pronto, agora precisamos adicionar o caminho dessa pasta nas variáveis de ambiente do nosso sistema operacional para usarmos pelo terminal de maneira mais prática apenas passando o nome do programa.

No menu inicial do windows, pesquise por "Variáveis de Ambiente" e abra o programa.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0p10fk4qy7vyxmymu8z3.png)

Com o programa aberto as variáveis de usuário procure o **Path** e clique em editar.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vomw6a0vaqa1oti6d1b6.png)

Com a nova janela aberta, clique no botão de novo e digite o caminho que o seu programa foi publicado.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2vksackf07a1iehblf7f.png)

Agora já podemos chamar o nosso app em qualquer pasta do nosso pc!

## Parte 4: Testando o programa  <a name="parte-4"></a>

Para testar a execução vou criar um pequeno projeto React com o Vite. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s3g42xarv9t5gzkwdxsj.png)

Vamos acessar a pasta deste projeto react criado e vamos tentar executar o nosso programa, podemos fazer isso digitando o nome do programa:

```bash
reactcomponent
```

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lp65gr3mord638okanv4.png)

Como resultado devemos ver uma demonstração de uso, opções disponíveis e comandos, tudo isso já vem da biblioteca que estamos usando e pode ser personalizado.

Vamos criar um componente? Digite:

```bash
reactcomponent create Menu
```

Ao exibirmos o tudo dentro pasta Menu, podemos ver que o arquivo de index.jsx e o styles.css foi criado.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h1t02mtd3sybojm2mrol.png)

## Final  <a name="final"></a>

Pronto, a partir desse ponto você já tem uma ideia e pode expandi-la, fazendo o programa criar arquivos de test para o componente ou algo da sua escolha. A biblioteca **Spectre.Console** oferece muito mais do que foi mostrado aqui,  se quiserem posso mostrar como seria para fazer o programa perguntar quais arquivos o usuário desejaria criar e outras coisas como algumas animações. Agradeço a todos que leram e vamos conversar nos comentários?