<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Wesley Araújo</title>
    <description>The latest articles on DEV Community by Wesley Araújo (@wesleyara).</description>
    <link>https://dev.to/wesleyara</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F829790%2Fbc09695d-b8c0-4bfa-9449-7b59d9a2b667.jpeg</url>
      <title>DEV Community: Wesley Araújo</title>
      <link>https://dev.to/wesleyara</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/wesleyara"/>
    <language>en</language>
    <item>
      <title>ts-node, lendo arquivos TypeScript com Node.js</title>
      <dc:creator>Wesley Araújo</dc:creator>
      <pubDate>Mon, 18 Apr 2022 23:17:43 +0000</pubDate>
      <link>https://dev.to/wesleyara/ts-node-lendo-arquivos-typescript-com-nodejs-op8</link>
      <guid>https://dev.to/wesleyara/ts-node-lendo-arquivos-typescript-com-nodejs-op8</guid>
      <description>&lt;p&gt;Toda linguagem de programação necessita de alguma ferramenta que leia o que está sendo pedido em seus comandos e assim como qualquer linguagem, o &lt;a href="https://www.javascript.com/"&gt;JavaScript&lt;/a&gt; tem seu próprio interpretador, o &lt;a href="https://nodejs.org/"&gt;Node.js&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Porém, para usuários mais avançados em &lt;a href="https://www.javascript.com/"&gt;JavaScript&lt;/a&gt;, muitas vezes eles preferem migrar para a utilização de seu superset, o &lt;a href="https://www.typescriptlang.org/"&gt;TypeScript&lt;/a&gt;, que por sua vez não é interpretado diretamente pelo &lt;a href="https://nodejs.org/"&gt;Node.js&lt;/a&gt;. Apesar de atualmente ter o seu próprio interpretador, o Deno, muitas vezes é preferivel usar o &lt;a href="https://nodejs.org/"&gt;Node.js&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Com essa necessidade de interpretar os códigos escritos em &lt;a href="https://www.typescriptlang.org/"&gt;TypeScript&lt;/a&gt; pelo próprio &lt;a href="https://nodejs.org/"&gt;Node.js&lt;/a&gt;, foi desenvolvido um pacote chamado ts-node, que faz o papel de compilar os arquivos em &lt;a href="https://www.typescriptlang.org/"&gt;TypeScript&lt;/a&gt; para &lt;a href="https://www.javascript.com/"&gt;JavaScript&lt;/a&gt; e interpretar esses arquivos.&lt;/p&gt;

&lt;h2&gt;
  
  
  Instalação
&lt;/h2&gt;

&lt;p&gt;Primeiramente é importante criar um arquivo de package.json em seu projeto:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm init -y
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Em seus projetos instale o pacote do ts-node:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm &lt;span class="nb"&gt;install &lt;/span&gt;ts-node
&lt;span class="c"&gt;# ou&lt;/span&gt;
yarn add ts-node
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Após a instalação do ts-node, vamos ver esse projeto teste para exemplificar como utilizar&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--L4BiHNOb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kehqgm4hurnqwzn6wwag.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--L4BiHNOb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kehqgm4hurnqwzn6wwag.png" alt="project" width="880" height="469"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Com isso você já tem o ts-node pronto para ser executado em seu projeto digitando o seguinte comando no terminal:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ts-node index.ts
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;E o resultado será&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--wj5sDjLH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/iv71hd242ct20dp75aci.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--wj5sDjLH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/iv71hd242ct20dp75aci.png" alt="tsnode" width="880" height="469"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Agora basta criar um script em seu package.json para que ele seja executado no terminal de forma mais rápida.&lt;/p&gt;

&lt;p&gt;Para isso será necessário mais alguns pacotes, como o typescript e o @types/node, instale eles:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm &lt;span class="nb"&gt;install&lt;/span&gt; @types/node &lt;span class="nt"&gt;-D&lt;/span&gt;
npm &lt;span class="nb"&gt;install &lt;/span&gt;typescript
&lt;span class="c"&gt;# ou&lt;/span&gt;
yarn add @types/node &lt;span class="nt"&gt;--save-dev&lt;/span&gt;
yarn add typescript
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Seu package.json vai ficar mais ou menos assim:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;

  &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ts-node-test"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;

  &lt;/span&gt;&lt;span class="nl"&gt;"version"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"1.0.0"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;

  &lt;/span&gt;&lt;span class="nl"&gt;"description"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;""&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;

  &lt;/span&gt;&lt;span class="nl"&gt;"main"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"index.js"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;

  &lt;/span&gt;&lt;span class="nl"&gt;"scripts"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;

    &lt;/span&gt;&lt;span class="nl"&gt;"start"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ts-node index.ts"&lt;/span&gt;&lt;span class="w"&gt;

  &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;

  &lt;/span&gt;&lt;span class="nl"&gt;"keywords"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[],&lt;/span&gt;&lt;span class="w"&gt;

  &lt;/span&gt;&lt;span class="nl"&gt;"author"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;""&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;

  &lt;/span&gt;&lt;span class="nl"&gt;"license"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ISC"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;

  &lt;/span&gt;&lt;span class="nl"&gt;"dependencies"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;

    &lt;/span&gt;&lt;span class="nl"&gt;"ts-node"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"^10.7.0"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;

    &lt;/span&gt;&lt;span class="nl"&gt;"typescript"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"^4.6.3"&lt;/span&gt;&lt;span class="w"&gt;

  &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;

  &lt;/span&gt;&lt;span class="nl"&gt;"devDependencies"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;

    &lt;/span&gt;&lt;span class="nl"&gt;"@types/node"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"^17.0.25"&lt;/span&gt;&lt;span class="w"&gt;

  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Agora basta executar o seguinte comando em seu terminal:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm start
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;E o resultado será&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--fQkLASFB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/a5zepv3862rfue84w0ek.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fQkLASFB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/a5zepv3862rfue84w0ek.png" alt="npmstart" width="880" height="469"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Após feito esses processos, qualquer aplicação em &lt;a href="https://www.typescriptlang.org/"&gt;TypeScript&lt;/a&gt; poderá ser lida a partir do &lt;a href="https://nodejs.org/"&gt;Node.js&lt;/a&gt;, sem necessitar a instalação do Deno ou qualquer outro programa, o que facilita bastante na hora de fazer seus setups de aplicações que necessitam do ts-node.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Configurando o ambiente JavaScript no Linux</title>
      <dc:creator>Wesley Araújo</dc:creator>
      <pubDate>Wed, 13 Apr 2022 19:45:12 +0000</pubDate>
      <link>https://dev.to/wesleyara/configurando-o-ambiente-javascript-no-linux-4icd</link>
      <guid>https://dev.to/wesleyara/configurando-o-ambiente-javascript-no-linux-4icd</guid>
      <description>&lt;p&gt;Como todos nós sabemos, uma das maiores dificuldades do Linux é o fato de que quem é usuário do Windows está acostumado a dar alguns “next” durante a instalação de um pacote que o programa estará instalado, mas no Linux isso tudo é feito com base em linhas de comando, portanto nesse artigo será descrito a forma correta de configurar o ambiente JavaScript para você sair digitando seus scripts.&lt;/p&gt;

&lt;p&gt;As distros do Linux que serão abordadas nesse artigo são a Mint, Ubuntu e Pop!_OS.&lt;/p&gt;

&lt;p&gt;Basta seguir os passos que serão descritos que ao final de tudo, estará com o seu linux todo configurado e preparado para a utilização.&lt;/p&gt;

&lt;p&gt;Este passo a passo foi testado recentemente e está 100% funcional.&lt;/p&gt;

&lt;h2&gt;
  
  
  Instalando o Visual Studio Code
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Baixando o arquivo .deb&lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;https://code.visualstudio.com/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Instalando o zsh e git
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Atualizando o apt&lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt update

&lt;span class="c"&gt;# Começando as instalações&lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt &lt;span class="nb"&gt;install &lt;/span&gt;zsh git

&lt;span class="c"&gt;# Conectando a sua conta&lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;git config &lt;span class="nt"&gt;--global&lt;/span&gt; user.name &lt;span class="s2"&gt;"exemplo"&lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;git config &lt;span class="nt"&gt;--global&lt;/span&gt; user.email &lt;span class="s2"&gt;"exemplo@seuemail.com.br"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Instalando o oh-my-zsh
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Instalando as fontes necessárias&lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get &lt;span class="nb"&gt;install &lt;/span&gt;fonts-powerline

&lt;span class="nv"&gt;$ &lt;/span&gt;wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh

&lt;span class="nv"&gt;$ &lt;/span&gt;sh install.sh

&lt;span class="c"&gt;# Definindo o zsh como padrão&lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;code /etc/passwd
&lt;span class="c"&gt;# Altere a linha que está assim: wesley:x:1000:1000:Wesley,,,:/home/wesley:/usr/bin/bash&lt;/span&gt;
&lt;span class="c"&gt;# para wesley:x:1000:1000:Wesley,,,:/home/wesley:/usr/bin/zsh&lt;/span&gt;

&lt;span class="c"&gt;# Invés de wesley, no seu computador, procure pela linha identica, porém com o seu nome de usuário.&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Personalizando o oh-my-zsh
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Abrindo o arquivo .zshrc&lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;code ~/.zshrc

&lt;span class="c"&gt;# Alterando a linha que define o tema&lt;/span&gt;
&lt;span class="nv"&gt;$ ZSH_THEME&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"agnoster"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Instalando o Node.js e NPM
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt &lt;span class="nb"&gt;install &lt;/span&gt;nodejs npm

&lt;span class="c"&gt;# Atualizando o Node.js&lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;npm cache clean &lt;span class="nt"&gt;-f&lt;/span&gt;

&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;npm &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-g&lt;/span&gt; n

&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;n stable

&lt;span class="c"&gt;# Atualizando o NPM&lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;npm &lt;span class="nb"&gt;install &lt;/span&gt;npm@latest &lt;span class="nt"&gt;-g&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Instalando o Yarn
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;npm &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-g&lt;/span&gt; yarn
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Instalando o Docker
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://get.docker.com &lt;span class="nt"&gt;-o&lt;/span&gt; get-docker.sh

&lt;span class="nv"&gt;$ &lt;/span&gt;sh get-docker.sh
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Pronto, com isso você já pode começar a escrever seus scripts, todo ambiente estará funcionando perfeitamente. Vale ressaltar que algumas configurações dentro do Visual Studio Code podem ajudar na hora de trabalhar com o JavaScript, em breve estarei trazendo algumas dicas para isso. Até mais!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Github Copilot, voe no código com o seu copiloto</title>
      <dc:creator>Wesley Araújo</dc:creator>
      <pubDate>Wed, 23 Mar 2022 17:57:17 +0000</pubDate>
      <link>https://dev.to/wesleyara/github-copilot-voe-no-codigo-com-o-seu-copiloto-e22</link>
      <guid>https://dev.to/wesleyara/github-copilot-voe-no-codigo-com-o-seu-copiloto-e22</guid>
      <description>&lt;p&gt;Acabei de ser aceito na white list do Github Copilot e nada mais justo do que escrever um artigo sobre essa IA incrível para digitar código.&lt;/p&gt;

&lt;h2&gt;
  
  
  Descrição:
&lt;/h2&gt;

&lt;p&gt;O &lt;a href="https://copilot.github.com/"&gt;Github Copilot&lt;/a&gt; é uma ferramenta de inteligência artificial desenvolvida pelo GitHub e OpenAI para auxiliar os usuários de IDEs Visual Studio Code, Visual Studio, Neovim e JetBrains por autocompletar código. Foi anunciado pela primeira vez pelo GitHub em 29 de junho de 2021. &lt;a href="https://en.wikipedia.org/wiki/GitHub_Copilot"&gt;Wikipedia(Inglês)&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Funcionamento
&lt;/h2&gt;

&lt;p&gt;O Copilot utiliza de um grande código Open Source para dar a suas sugestões, utilizando os padrões de milhares de repositórios pelo Github, então ele basicamente ver o que você está digitando, tentando criar e ai te sugere algumas linhas de código para te auxiliar. Como por exemplo ao criar um componente Header para a minha página:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--EbKz_JNt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eg5ffemqinpivqchn81q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--EbKz_JNt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eg5ffemqinpivqchn81q.png" alt="Imagedescription" width="880" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ele deu toda a estrutura do componente após eu ter escrito somente uma linha de código, ao apertar a tecla tab, tudo vira código como a seguir:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--77O6DTTO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7k6s8z8ir30c236z5cdp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--77O6DTTO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7k6s8z8ir30c236z5cdp.png" alt="Imagedescription" width="880" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ao lhe auxiliar com o código, o Copilot te poupa bastante tempo enquanto você está trabalhando em seu projeto, é claro que algumas vezes as sugestões não irão fazer sentido com o que você deseja, mas basta apenas ignora-las e continuar a escrever seu código.&lt;/p&gt;

&lt;h2&gt;
  
  
  Minha impressão
&lt;/h2&gt;

&lt;p&gt;O Github Copilot com certeza é uma ótima IA para te auxiliar com projetos grandes, onde boa parte do código é reutilizada, pois ele consegue dar umas sugestões muito boas para te adiantar um bom tempo de código, mas enquanto o projeto é pequeno, algumas das sugestões vão ajudar sim, porém outras serão de se ignorar.&lt;/p&gt;

&lt;p&gt;Ao meu ver vale muito a pena está com seu Github Copilot ativado para digitar seus códigos, pois com certeza você terá uma ótima experiência utilizando a IA. Além do fato de que se uma sugestão não faz sentido para a sua aplicação, basta ignora-la e continuar de onde parou, com o tempo a IA tende a se adaptar melhor e contribuir ainda mais com suas sugestões.&lt;/p&gt;

&lt;p&gt;Por fim, vamos voar com nosso copiloto e nos adaptar as novas tecnologias que estão surgindo, quem sabe ela não vira uma aliada poderosa na hora de codar?&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>programming</category>
      <category>github</category>
      <category>githubcopilot</category>
    </item>
    <item>
      <title>Processos para a criação de um React App</title>
      <dc:creator>Wesley Araújo</dc:creator>
      <pubDate>Sat, 19 Mar 2022 19:28:06 +0000</pubDate>
      <link>https://dev.to/wesleyara/processos-para-a-criacao-de-um-react-app-3iao</link>
      <guid>https://dev.to/wesleyara/processos-para-a-criacao-de-um-react-app-3iao</guid>
      <description>&lt;p&gt;Como é comum entre todos programadores do ecossistema JavaScript com foco no front-end, uma hora ou outra teremos que nos deparar com libs que facilitam nosso processo na hora de escrever código. &lt;/p&gt;

&lt;p&gt;Hoje venho falar sobre a lib que mais utilizo atualmente, o &lt;strong&gt;React&lt;/strong&gt;, mas mais especificamente sobre como é dado o processo de criação de um &lt;strong&gt;react app&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Atualmente tem duas formas de criar uma aplicação em react que eu mais utilizo, o famos &lt;a href="https://create-react-app.dev/"&gt;Create React App&lt;/a&gt;, desenvolvido pelo Facebook que cria para nós um boilerplate pronto para colocarmos a mão na massa e codar. A segunda opção que eu utilizo para criação de um react app é o &lt;a href="https://vitejs.dev/"&gt;Vite&lt;/a&gt;, que também tem a mesma função do CRA.&lt;/p&gt;

&lt;p&gt;Aqui quero apresentar algumas das diferenças entre esses dois tipos de criadores de boilerplate, mas antes, vamos a como criar cada um dos tipos de projeto.&lt;/p&gt;

&lt;h2&gt;
  
  
  Instalação:
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Create React App&lt;br&gt;
&lt;code&gt;npx create-react-app my-app&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Vite&lt;br&gt;
&lt;code&gt;npm create vite@latest my-app -- --template react&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Diferenças:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;No processo de criação e instalação de dependências:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;O Vite em comparação ao CRA cria e instala todas dependências necessárias para uso em questão de segundos, tendo uma grande diferença em relação ao CRA, que demora certa de 1~2 minutos.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Ao iniciar a aplicação:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Enquanto o Vite inicia sua aplicação em menos de 1 segundo, o CRA costuma demorar de 3~15 para executar a mesma ação.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;No tamanho da pasta do projeto (peso em memória):&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Abaixo segue a comparação entre os dois.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--4rab27ip--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/azm14a9ozayd8sb9g28d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--4rab27ip--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/azm14a9ozayd8sb9g28d.png" alt="Image description" width="880" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Equanto o CRA ocupa 233.4 MB, o Vite ocupa 32.1MB.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Server Side Rendering:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;O Vite ainda não possui um bom suporte mais estável ao SSR, o CRA possui.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusão
&lt;/h2&gt;

&lt;p&gt;Depois de muita comparação entre os dois métodos de criar uma aplicação react, pela velocidade nos processos, pelo tamanho de uma pasta base e outros fatores, atualmente eu prefiro utilizar o Vite em detrimento do CRA. Porém, isso de forma alguma quer dizer que o Vite é melhor, é apenas a minha opinião com base na experiência que tive utilizando os dois.&lt;/p&gt;

&lt;p&gt;Espero que tenham gostado, esse é meu primeiro post na comunidade. Abraço e até a próxima.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>react</category>
      <category>javascript</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
