<?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: luysla</title>
    <description>The latest articles on DEV Community by luysla (@luysla).</description>
    <link>https://dev.to/luysla</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%2F398731%2Ffbb18d92-b160-490d-86ed-ebd1c283e1bb.jpg</url>
      <title>DEV Community: luysla</title>
      <link>https://dev.to/luysla</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/luysla"/>
    <language>en</language>
    <item>
      <title>[Tutorial] Validação de formulário HTML5</title>
      <dc:creator>luysla</dc:creator>
      <pubDate>Thu, 03 Apr 2025 03:35:10 +0000</pubDate>
      <link>https://dev.to/luysla/tutorial-validacao-de-formulario-html5-2a66</link>
      <guid>https://dev.to/luysla/tutorial-validacao-de-formulario-html5-2a66</guid>
      <description>&lt;p&gt;Olá 💜&lt;/p&gt;

&lt;p&gt;Hoje vou dar algumas dicas de como criar formulários usando HTML5 e como podemos validar os campos!&lt;/p&gt;

&lt;p&gt;Antes de tudo vamos entender a importância da validação de campos e das mensagens de instrução! Como desenvolvedores nós temos que sempre pensar no lado do usuário, em formulários nem sempre o que é pedido pode ser o que o usuário irá digitar.&lt;br&gt;
Então, termos uma validação do campo força que o usuário insira os dados de acordo com o que esperamos, além disso as mensagens de instrução ajudam na usabilidade, pois assim quando tivermos algum dado escrito de forma incorreta, avisar ao usuário é importante para que ele corrija e prossiga com o preenchimento e envio do formulário.&lt;/p&gt;

&lt;p&gt;O HTML5 já oferece e facilita a validação de campos.&lt;br&gt;
Vamos ao exemplo:&lt;/p&gt;

&lt;p&gt;Vou criar um formulário simples de cadastro de usuário! (Lembrando que é só um exemplo simples, hein?)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw7xaioxg4nc6l85i9igo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw7xaioxg4nc6l85i9igo.png" alt="Print do código HTML" width="800" height="651"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Existem algumas coisas que podemos observar, é sempre importante usarmos as tags semânticas do HTML5, então além da tag &lt;strong&gt;main&lt;/strong&gt; também usei a tag &lt;strong&gt;form&lt;/strong&gt; para indicar que temos um formulário.&lt;/p&gt;

&lt;p&gt;Também é importante usarmos a tag &lt;strong&gt;label&lt;/strong&gt;, porque é ela que vai ser associada aquele input. Isso facilita os leitores de tela em caso de acessibilidade (o valor do "for" na tag label corresponde ao id do input). Quando o usuário clicar na label, ele ativa o campo correspondente.&lt;br&gt;
O placeholder também é importante, nele você pode adicionar uma instrução a mais para aquele campo.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsouia3niwbm5nwt8kcrl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsouia3niwbm5nwt8kcrl.png" alt="Print de uma tela de formulário de cadastro com o campo nome em destaque" width="800" height="651"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Quando adicionamos o atributo required no campo indicamos que ele é obrigatório para preenchimento, então o envio do formulário só será feito após o usuário preencher tudo. Então mesmo clicando no botão de enviar os dados, ele vai impedir caso os campos obrigatórios estejam vazios ou preenchidos de forma incorreta. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5rhc14j6w323kzren8h5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5rhc14j6w323kzren8h5.png" alt="Print de uma tela de formulário a mensagem de campo obrigatório" width="800" height="651"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Por padrão, o campo de e-mail possui a validação:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1cun3ml1ktp28x5nncpk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1cun3ml1ktp28x5nncpk.png" alt="Print de uma tela de formulário com o campo e-mail com mensagem de validação" width="800" height="651"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Porém para outros campos como telefone, CPF etc, podemos usar o &lt;strong&gt;pattern&lt;/strong&gt;. O atributo pattern recebe uma REGEX indicando qual formato aquele campo aceita. &lt;br&gt;
Se você é iniciante com REGEX não precisa se preocupar, no geral você pode pesquisar na internet REGEXs que já são bastante utilizadas em alguns campos. Então se você precisar de um pattern de CPF por exemplo, é só pesquisar e usar. &lt;/p&gt;

&lt;p&gt;Nesse meu exemplo, eu coloquei um pattern que exige que o usuário digite uma senha com no mínimo 6 caracteres e que tenha ao menos um caractere especial.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8s89j8jvvzldblrfj14r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8s89j8jvvzldblrfj14r.png" alt="Print de uma tela de formulário com o campo senha com mensagem de validação" width="800" height="651"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Você pode perceber que além da mensagem padrão, eu também adicionei uma mensagem personalizada pra esse campo com o atributo title, dando mais instruções ao usuário sobre como ele deve preencher o campo.&lt;/p&gt;

&lt;p&gt;Esses são apenas alguns passos básicos que você pode usar pra deixar seu formulário mais informativo e acessível. Você também pode adicionar um estilo, uma borda vermelha ao redor do campo com erro, também é muito utilizado. O que importa é que o usuário possa ver claramente o que ele precisa corrigir.&lt;br&gt;
Algo simples que vai facilitar e ajudar na usabilidade.&lt;/p&gt;

&lt;p&gt;Você pode ver o código &lt;a href="https://github.com/dyanadev/formulario" rel="noopener noreferrer"&gt;aqui&lt;/a&gt;. &lt;br&gt;
Espero que tenha gostado! &lt;/p&gt;

</description>
      <category>webdev</category>
      <category>html</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>O que é Github?</title>
      <dc:creator>luysla</dc:creator>
      <pubDate>Fri, 10 Jun 2022 02:45:05 +0000</pubDate>
      <link>https://dev.to/luysla/o-que-e-github-1hlj</link>
      <guid>https://dev.to/luysla/o-que-e-github-1hlj</guid>
      <description>&lt;p&gt;Oi, gente! 🥰&lt;/p&gt;

&lt;p&gt;Bem, eu trouxe esse post pra esclarecer o que é Github. A maioria dos meus posts (que são poucos ainda rs) são sempre para pessoas que estão iniciando na programação e imagino que fiquem esse tipo de dúvida.&lt;/p&gt;

&lt;p&gt;Então vamos lá!&lt;/p&gt;

&lt;h2&gt;
  
  
  Git
&lt;/h2&gt;

&lt;p&gt;Antes de falar do github em si, precisamos saber que existe o git por trás de tudo isso. &lt;br&gt;
Em resumo, o &lt;a href="https://git-scm.com/" rel="noopener noreferrer"&gt;git&lt;/a&gt; é um controlador de versões de código aberto. Ele foi criado por Linus Torvalds (mesmo criador do Linux, inclusive :D). Com ele você consegue versionar e ter um controle melhor das versões do seu código/projeto.&lt;/p&gt;

&lt;p&gt;Sim, mas qual a utilidade disso? &lt;br&gt;
Bem, quando estamos falando de desenvolver projetos individuais, nós temos o maior controle das alterações feitas. Mas imagina que você precisa trabalhar em um projeto que o mesmo arquivo pode ser alterado por você e por outra pessoa ao mesmo tempo? 😬&lt;br&gt;
sem esse controle de versões iria ser quase inviável você juntar esse código ou controlar as alterações. Basicamente o git te ajuda nessa junção desse código. &lt;br&gt;
Outro exemplo de utilidade, voltar em uma versão específica do seu código. Digamos que no seu projeto você mudou a cor do site para ser azul, só que com a mudança o site parou de funcionar, usando o git você pode voltar o código para a versão anterior que estava funcionando antes dessa alteração. Esse é só um exemplo simples, mas podemos entender a importância desse controle do nosso código.&lt;/p&gt;

&lt;h2&gt;
  
  
  E o que é o github?
&lt;/h2&gt;

&lt;p&gt;Basicamente o &lt;a href="https://github.com/" rel="noopener noreferrer"&gt;github&lt;/a&gt; é uma plataforma web que você armazena em nuvem e gerencia seus projetos que usam git. Exemplo, estou criando o meu site localmente usando o git no meu computador e quero que o meu projeto seja armazenado na nuvem. Eu posso criar um repositório no github e armazenar o meu projeto. O github também oferece a utilização dos recursos do próprio git a partir de sua interface, então se eu quiser ver as alterações do código, qual linha foi removida, qual a pessoa que fez a alteração, criar commits, tudo isso na plataforma. O que facilita o trabalho em conjunto também e facilita o uso do git para quem não é muito familiarizado com comandos no terminal. &lt;/p&gt;

&lt;p&gt;Provavelmente se você é iniciante na programação fazendo algum curso, já ouviu falar sobre o github, porque no geral é um ambiente que se tornou muito importante para criar seu portfólio pessoal e profissional, além de colaborar com projetos de outras pessoas também, é muito comum você ver devs usando o github com essas finalidades. Virou meio que uma rede social para devs também 👩‍💻 🧑‍💻 👨‍💻&lt;/p&gt;

&lt;p&gt;Então por isso não deixem de usar!&lt;br&gt;
vou deixar aqui embaixo alguns links que podem ajudar você a entender mais profundamente como funciona o git e o github, mas se for legal futuramente posso trazer mais informações sobre o git, porque tem muitos detalhes que não comentei aqui nesse post&lt;br&gt;
mas espero que tenham gostado desse resumo 💜&lt;/p&gt;

&lt;p&gt;Links para saber mais:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Git tutorial, bem legal&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://rogerdudler.github.io/git-guide/index.pt_BR.html" rel="noopener noreferrer"&gt;https://rogerdudler.github.io/git-guide/index.pt_BR.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Documentação do Github&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://docs.github.com/pt/get-started" rel="noopener noreferrer"&gt;https://docs.github.com/pt/get-started&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://skills.github.com/" rel="noopener noreferrer"&gt;https://skills.github.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Git + github tutorial top das meninasss do Womakers code&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://womakerscode.gitbook.io/desvendando-git-e-github/" rel="noopener noreferrer"&gt;https://womakerscode.gitbook.io/desvendando-git-e-github/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Curso gratuito de Git e Github&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://www.udemy.com/course/git-e-github-para-iniciantes/" rel="noopener noreferrer"&gt;https://www.udemy.com/course/git-e-github-para-iniciantes/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fonte da imagem da capa&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://videosdeti.com.br/git-e-github-primeiros-passos/" rel="noopener noreferrer"&gt;https://videosdeti.com.br/git-e-github-primeiros-passos/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>github</category>
      <category>git</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Feliz dia de Star Wars!</title>
      <dc:creator>luysla</dc:creator>
      <pubDate>Thu, 05 May 2022 01:05:14 +0000</pubDate>
      <link>https://dev.to/luysla/feliz-dia-de-star-wars-244o</link>
      <guid>https://dev.to/luysla/feliz-dia-de-star-wars-244o</guid>
      <description>&lt;p&gt;Olá, pessoal &amp;lt;3&lt;/p&gt;

&lt;p&gt;Em comemoração ao &lt;a href="https://canaltech.com.br/entretenimento/por-que-o-star-wars-day-e-celebrado-no-dia-4-maio-40537/" rel="noopener noreferrer"&gt;dia de Star Wars&lt;/a&gt; trouxe um post especial!&lt;/p&gt;

&lt;p&gt;Quem me acompanha no instagram viu minha postagem comemorando e prometi colocar aqui no post alguns links de projetinhos legais com a temática Star Wars!&lt;br&gt;
Vem comigo conferir!&lt;/p&gt;

&lt;p&gt;1 - &lt;a href="https://code.org/starwars" rel="noopener noreferrer"&gt;Construindo uma galáxia com código&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Esse projetinho é voltado mais para pessoas que estão iniciando na programação, que ainda não possuem conhecimento em nenhuma linguagem específica. O code.org oferece gratuitamente exercícios de programação utilizando a programação por meio de bloquinhos, é muito legal para exercitar sua lógica e também o aprendizado para quem está iniciando. Esse projeto em especial é sobre Star Wars :D&lt;/p&gt;

&lt;p&gt;2 - &lt;a href="https://medium.com/womakerscode/desenvolvendo-a-intro-do-star-wars-com-html-css-javascript-node-js-365e1232a169" rel="noopener noreferrer"&gt;Desenvolvendo a intro de Star Wars&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Sabe aquele famoso letreiro que aparece logo no início de todo filme de Star Wars? Nesse post a &lt;a class="mentioned-user" href="https://dev.to/glaucia86"&gt;@glaucia86&lt;/a&gt; ensina como reproduzir essa intro usando HTML, CSS e JS.&lt;/p&gt;

&lt;p&gt;3 - &lt;a href="https://github.com/DevGirlsMentor/warship" rel="noopener noreferrer"&gt;Jogo de Super trunfo usando os veículos de Star Wars&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Esse projetinho foi criado pela comunidade &lt;a href="https://dev.to/devgirlsmentor"&gt;Dev Girls Mentor&lt;/a&gt;. O jogo já foi desenvolvido mas as meninas mantém as aulas de live coding gravadas &lt;a href="https://www.youtube.com/channel/UCInhCRdbbk-JgXEw0LoJeGw" rel="noopener noreferrer"&gt;aqui&lt;/a&gt; então você ainda pode acompanhar e desenvolver junto &amp;lt;3&lt;br&gt;
Lembrando que a comunidade tem um discord e lá tem os encontros e anúncios de novos projetos e muito mais então não deixem de participar da comunidade!&lt;/p&gt;

&lt;p&gt;4 - &lt;a href="https://swapi.dev/" rel="noopener noreferrer"&gt;API Star Wars&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Se você já sabe consumir dados por meio de APIs saiba que existe uma API especialmente com dados sobre Star Wars &lt;a href="https://swapi.dev/" rel="noopener noreferrer"&gt;aqui&lt;/a&gt; então você pode soltar a imaginação e criar projetinhos utilizando esses dados. (Exemplo: Um buscador de informações sobre os personagens)&lt;/p&gt;

&lt;p&gt;Espero que vocês tenham gostado do post especial de Star Wars! &lt;/p&gt;

&lt;p&gt;May the 4th be with you!&lt;/p&gt;

</description>
      <category>starwarsday</category>
      <category>webdev</category>
      <category>beginners</category>
      <category>programming</category>
    </item>
    <item>
      <title>Vem aprender sobre HTML semântico 💜</title>
      <dc:creator>luysla</dc:creator>
      <pubDate>Fri, 28 Jan 2022 04:51:17 +0000</pubDate>
      <link>https://dev.to/luysla/vem-aprender-sobre-html-semantico-2n6l</link>
      <guid>https://dev.to/luysla/vem-aprender-sobre-html-semantico-2n6l</guid>
      <description>&lt;p&gt;Antes de falar de semântica, vamos conceituar o HTML (Hypertext Markup Language). O HTML é basicamente um arquivo que pode ser lido pelos navegadores, nele podemos definir toda a estrutura de um site e seu conteúdo, seja ele texto, vídeo, imagem etc.&lt;br&gt;
Entāo basicamente usamos o HTML para construçāo de páginas na web 👩‍💻&lt;/p&gt;

&lt;p&gt;Entāo o que seria o HTML semântico?&lt;br&gt;
Bem, antes do HTML5 (versāo atual) a estrutura de um HTML era dividida em divs e cada div tinha sua classe.&lt;br&gt;
Entāo se eu quisesse fazer um header (cabeçalho) no meu site seria dessa forma:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;div class="header"&amp;gt; 
...
&amp;lt;/div&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Mas essa estrutura dificultava os navegadores na hora da leitura e compreensāo, bem como os leitores de acessibilidade. &lt;/p&gt;

&lt;p&gt;Entāo a partir do HTML5 foram criadas as tags semânticas para facilitar na leitura e no processamento das informaçōes contidas na página.&lt;br&gt;
Com o HTML semântico, nosso header (cabeçalho) pode ser descrito com a tag semântica header:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;header&amp;gt;
...
&amp;lt;/header&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;O header é somente um exemplo de tag semântica, existem aproximadamente umas 100 tags semânticas que podemos usar para ajudar os navegadores a interpretar melhor nosso site.&lt;/p&gt;

&lt;p&gt;Confira uma lista dessas tags &lt;a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element" rel="noopener noreferrer"&gt;aqui&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc4zflx9cmg2p6p00qr0r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc4zflx9cmg2p6p00qr0r.png" alt="Diferença entre o HTML4 e o HTM5 semântico" width="599" height="377"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Lembrando que semântica também pode ser aplicada ao JavaScript e CSS! Veja um pouco &lt;a href="https://developer.mozilla.org/pt-BR/docs/Glossary/Semantics" rel="noopener noreferrer"&gt;aqui&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Referências&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.hostinger.com.br/tutoriais/diferenca-entre-html-e-html5" rel="noopener noreferrer"&gt;https://www.hostinger.com.br/tutoriais/diferenca-entre-html-e-html5&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://developer.mozilla.org/" rel="noopener noreferrer"&gt;https://developer.mozilla.org/&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Meu instagram: &lt;br&gt;
💬 @_dyanadev&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dev.tourl"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>html</category>
      <category>beginners</category>
      <category>frontend</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Criando sua SSH key no Github</title>
      <dc:creator>luysla</dc:creator>
      <pubDate>Sat, 03 Jul 2021 19:02:22 +0000</pubDate>
      <link>https://dev.to/luysla/criando-sua-ssh-key-no-github-52ca</link>
      <guid>https://dev.to/luysla/criando-sua-ssh-key-no-github-52ca</guid>
      <description>&lt;p&gt;Oi :)&lt;br&gt;
No meu primeiro post aqui, decidi trazer um tutorial de como criar sua chave SSH para sua conta Github, pois futuramente (ainda esse ano) será uma das formas de autenticação obrigatória nas operações git que você for fazer (commit, push...). Vamos lá?&lt;br&gt;
Mas antes...&lt;/p&gt;
&lt;h2&gt;
  
  
  O que é uma chave SSH?
&lt;/h2&gt;

&lt;p&gt;SSH (Secure Socket Shell) é um protocolo que permite troca de informações de maneira segura entre cliente e servidor. A chave SSH é uma identificação única que podemos utilizar para autenticação, ela é composta por um par de chaves, uma chave privada e outra pública. A chave privada deve ser armazenada na sua máquina e a chave pública será armazenada na sua conta remota, nesse caso o Github. Então toda vez que uma operação é feita, há uma verificação e a operação só será liberada se a chave privada for compátivel &lt;a href="https://pplware.sapo.pt/tutoriais/criar-chave-ssh-no-linux/" rel="noopener noreferrer"&gt;Mais detalhes aqui&lt;/a&gt; &lt;/p&gt;
&lt;h2&gt;
  
  
  Porque criar uma chave SSH para o Github?
&lt;/h2&gt;

&lt;p&gt;O Github tem feito nos últimos anos, &lt;a href="https://github.blog/2020-07-30-token-authentication-requirements-for-api-and-git-operations/#background" rel="noopener noreferrer"&gt;diversas mudanças&lt;/a&gt; que envolvem a segurança dos dados e a ideia de retirar a autenticação por usuário e senha nas operações que você faz no seu Github é exatamente para melhorar a segurança. Na autenticação por login/senha, existe uma vulnerabilidade maior em relação ao seus dados de autenticação, já com o token ou a chave SSH, a segurança é maior diminuindo assim as chances de exposição dos seus dados.&lt;/p&gt;
&lt;h2&gt;
  
  
  Criando sua chave 🔑
&lt;/h2&gt;

&lt;p&gt;~ Se você usa Windows, pode usar os mesmos passos abaixo para gerar a chave usando o &lt;a href="https://gitforwindows.org/" rel="noopener noreferrer"&gt;Git Bash&lt;/a&gt; ~&lt;/p&gt;

&lt;p&gt;1 - &lt;strong&gt;Vamos verificar se você já possui um par de chaves SSH criado com o seguinte comando:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ ls ~/.ssh
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Se o arquivo de nome &lt;strong&gt;id_rsa.pub, id_ecdsa.pub ou id_ed25519.pub&lt;/strong&gt; estiver no diretório, então você já possui um par de chaves pule o passo 2.&lt;/p&gt;

&lt;p&gt;2 - &lt;strong&gt;Gerando seu par de chaves&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ ssh-keygen -t ed25519 -C "seu-email-github@email.com"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Após executar esse comando, ele irá perguntar se você confirma a criação da chave no diretório padrão (aperta 'Enter' para confirmar ou adicione o diretório que deseja criar o arquivo com a chave):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Generating public/private ed25519 key pair.
Enter file in which to save the key (/home/User/.ssh/id_ed25519):
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;e também adicionar alguma frase como senha, é opcional porém utilizar aumenta a segurança da sua chave, mas caso deseje pode deixar em branco (Aperte 'Enter' 2 vezes para isso :D).&lt;/p&gt;

&lt;p&gt;3 - &lt;strong&gt;Adicionando sua chave pública no Github&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Acesse o arquivo da chave criada:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ cat ~/.ssh/id_ed25519.pub
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;copie o conteúdo.&lt;/p&gt;

&lt;p&gt;Hora de ir no Github, em &lt;strong&gt;Configurações&lt;/strong&gt; &amp;gt; &lt;strong&gt;SSH Keys and GPG Keys&lt;/strong&gt; e clique em gerar nova chave SSH:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8vkrazybea2uuulplnyg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8vkrazybea2uuulplnyg.png" alt="image" width="800" height="417"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Adicione o título que desejar e o conteúdo da sua chave:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F70m35th93uax82ojoxmy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F70m35th93uax82ojoxmy.png" alt="image" width="776" height="429"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Após adicionar os dados, o Github irá solicitar sua senha para confirmação. Adicione a sua senha e a chave já estará cadastrada na sua conta &amp;lt;3&lt;/p&gt;

&lt;p&gt;Para utilizar sua chave SSH, é só clonar o repositório utilizando a opção de SSH, como indicado na imagem abaixo. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8tbmji08l43w9ywmz38b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8tbmji08l43w9ywmz38b.png" alt="image" width="401" height="251"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Até mais 💜&lt;/p&gt;

</description>
      <category>github</category>
      <category>git</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
