Skip to content

Latest commit

 

History

History
98 lines (73 loc) · 3.21 KB

File metadata and controls

98 lines (73 loc) · 3.21 KB

Biblioteca validadora de links

Imagina que você está lendo uma matéria muito interessante e logo no final, o autor disponibilizou alguns links com ajuda e outras matérias que poderiam complementar o assunto. Infelizmente alguns desses links não estão funcionando. Poxa, que frustração. Agora imagina que o autor em questão é você. Seu publico está frustrado e você também está, porque descobriu que outros links também estão com o mesmo problema.

Ao invés de caçar cada link quebrado, que tal automatizar esse processo? Você sabia que com a ajuda do Node.js podemos desenvolver um sistema que pode validar todos os links de um blog ou website? E melhor ainda, esse sistema já está pronto, basta instalar essa biblioteca no seu projeto e pronto, seus links serão checados!

📌 Com essa lib você pode:

  • ver todos os nomes e acessar os links
  • ver o nome, link e status code

🛠️ Ferramentas usadas:

  • biblioteca Chalk: para ver os links e textos do terminal em outras cores. Facilitando a leitura.
  • biblioteca fs
  • Node.js v18

🤓 O que aprendi durante o projeto?

  • Escrita em Regex - utilizando regex101
  • CLI (Interface de Linha de Comando)
  • Flags
  • Shebang
  • Tratar erros no terminal
  • Como publicar uma lib no npm

🖥 Exemplo de output:

lista validada texto.md [
  {
    FileList: 'https://developer.mozilla.org/pt-BR/docs/Web/API/FileList',
    status: '200 - OK'
  },
  {
    DataTransfer: 'https://developer.mozilla.org/pt-BR/docs/Web/API/DataTransfer',
    status: '200 - OK'
  },
  {
    HTMLCanvasElement: 'https://developer.mozilla.org/pt-BR/docs/Web/API/HTMLCanvasElement',
    status: '200 - OK'
  },
  {
    'Implementation notes': 'https://developer.mozilla.org/pt-BR/docs/Web/API/File#implementation_notes',
    status: '200 - OK'
  },
  {
    'Teste de retorno 400': 'https://httpstat.us/404',
    status: '404 - Not Found'
  },
  {
    'gatinho salsicha': 'http://gatinhosalsicha.com.br/',
    status: 'link não encontrado'
  }
]

Para validar um link use os comandos CLI

  1. Comando para instalar a lib:
   npm install -g lib_que_valida_links

ou

   npm i lib_que_valida_links
  1. Comando para rodar o projeto:
npm run cli ./arquivos/ valida

✅ Na lib tem o exemplo de 2 arquivos em Markdown para teste.

❣ Link da lib na npm ❣

https://www.npmjs.com/package/lib_que_valida_links

🍓 EXTRA

Partes de versão NPM?

Sim!, o controle de versão do NPM (node package manager) segue um controle de versões semânticos, portanto, esse controle de versões tem 3 partes:

  1. Patch . Isso é incrementado quando é feita uma correção de bug que não quebra o código de consumo.
  2. Minor . Isso é incrementado quando são adicionados recursos que não quebram o código de consumo.
  3. Major . Isso é incrementado quando mudanças significativas são feitas.

Fiz 2 alterações na minha lib
Para estudar usei esse artigo: Major.Minor.Patch