Skip to content

🔗 Markdow Links ➖ Projeto para criar CLI (Command Line Interface) e uma LIB, para localizar links em arquivos com extensão markdown (.md), com a opção de fazer validações e estatísticas simples.

Notifications You must be signed in to change notification settings

naereloire/md-links

 
 

Repository files navigation

Markdown Links 🔗

Índice


1. Resumo do projeto.

Markdown é uma sintaxe para padronizar e facilitar formatação de texto na web, funciona como um conversor de texto para html onde os caracteres não alfabéticos são traduzidos como tags.

Arquivos Markdown podem conter links, tabelas, imagens etc.

O objetivo da ferramenta md links é, localizar links em arquivos com extensão markdown (.md), podendo ainda realizar validações e gerar estatísticas simples como quantidade total de links nos arquivos, links únicos e quebrados.

Foram desevolvidas duas formas de implementação, LIB (library) e CLI (Command Line Interface).

2. LIB -Library

Conjuto de funções pré-compiladas, disponíveis para utilização no código.

2.1 Instalação e utilização

⚠️ Será necessária a utilização:

  • Node.js que contém o npm para instalação das dependências.

⚡ Instale executando:

npm install naereloire/md-links

Importe no seu código utilizando require :

const mdLinks = require("md-links");

Execute fornecendo os argumentos:

  • path caminho do diretório ou arquivo, relativou ou absoluto.
  • options objeto contendo a key validate , com valor boleano.
Exemplo:
//diretório e arquivo .md
mdLinks("./diretorio_exemplo/arquivo.md").then((links) => [{
    file,
    text,
    href
}])

//diretório
mdLinks("./diretorio_exemplo", {
        validate: true
    })
    .then(links => {
        => [{
            file,
            text,
            href,
            status,
            ok
        }]
    })
//Caso o diretório contenha mais de um arquivo .md
//os links de todos os arquivos serão resolvidos em um mesmo array.

3. CLI - Command Line Interface

Executável que pode ser executado através do terminal.

⚠️ Será necessária a utilização:

  • Node.js que contém o npm para instalação das dependências.

3.1 Instalação e utilização

⚡ Instale executando:

npm install -g naereloire/md-links

Execute fornecendo os argumentos:

  • path Caminho do diretório ou arquivo, relativou ou absoluto.
  • options Flags de validação e estatística, opicionais:
  • --validate.
  • --stats.
  • --validate e --stats.
Exemplo:
$ md-links ./diretorio_exemplo/arquivo.md
./diretorio_exemplo/arquivo.md http://exemplo1/ Link de algo
./diretorio_exemplo/arquivo.md http://exemplo2/ Link de algo
./diretorio_exemplo/arquivo.md http://exemplo3/ Link de algo
--validate ou -v
$ md-links ./diretorio_exemplo/arquivo.md --validate
./diretorio_exemplo/arquivo.md http://exemplo1/ ok 200 Link de algo
./diretorio_exemplo/arquivo.md http://exemplo2/ fail 404 Link de algo
./diretorio_exemplo/arquivo.md http://exemplo3/ ok 200 Link de algo
--stats ou -s
$ md-links ./diretorio_exemplo/arquivo.md --stats
Total:  3
Unique: 3
--validate ou -v e stats ou -s
$ md-links ./diretorio_exemplo/arquivo.md  --validate --stats
Total:  3
Unique: 3
Broken: 1
--help ou -h

Para acessar documentação.

4. Montagem do ambiente de desenvolvimento

⚠️ Será necessária a utilização:

  • Node.js que contém o npm para instalação das dependências.
  • Lib commander para desenvolvimento da CLI(Command Line Interface).
  • Lib superagent para requisição via HTTP client

  • Clone o projeto na sua máquina executando o seguinte comando no seu terminal:

-https

git clone https://github.com/naereloire/md-links.git
  • Instale as dependências do projeto com o comando:
npm install
  • Instale e execute o commander:
npm install commander
  • Instale e execute o superagent:
npm install superagent
  • Para executar localmente:
npm link
  • Para executar os testes:
npm test

4.1 Guia de estilo

⚠️ Neste projeto a regras de ESLint seguem o padrão Airbnb JavaScript Style Guide

  • Para verificar erros do ESLint:
npm run pretest

Esse projeto faz parte do currículo do Bootcamp da Laboratória Brasil

Desenvolvimento Naere Loire :octocat:

About

🔗 Markdow Links ➖ Projeto para criar CLI (Command Line Interface) e uma LIB, para localizar links em arquivos com extensão markdown (.md), com a opção de fazer validações e estatísticas simples.

Topics

Resources

Stars

Watchers

Forks

Languages

  • JavaScript 100.0%