cloiw-md-links

0.4.3 • Public • Published

npm version Build Status

Markdown Links

Markdown es un lenguaje de marcado ligero muy popular entre developers. Es usado en muchísimas plataformas que manejan texto plano (GitHub, foros, blogs, ...), y es muy común encontrar varios archivos en ese formato en cualquier tipo de repositorio (empezando por el tradicional README.md).

Estos archivos Markdown normalmente contienen links (vínculos/ligas) que muchas veces están rotos o ya no son válidos y eso perjudica mucho el valor de la información que se quiere compartir.

Dentro de una comunidad de código abierto, nos han propuesto crear una herramienta usando Node.js, que lea y analice archivos en formato Markdown, para verificar los links que contengan y reportar algunas estadísticas.

Instrucciones

Para instalar utilizar el siguiente comando en la terminal:

npm install cloiw-md-links

JavaScript API

mdLinks(path, options)

Argumentos
  • path: Ruta absoluta o relativa al archivo o directorio.

  • options: Un objeto con las siguientes propiedades:

    • validate: Booleano que determina si se desea validar los links encontrados.
    • stats: Booleano que determina si se desea ver estadisticas de los links.
Valor de retorno

La función retorna una promesa (Promise) que resuelve a un arreglo (Array) de objetos (Object), donde cada objeto representa un link y contiene las siguientes propiedades:

  • href: URL encontrada.
  • text: Texto que aparecía dentro del link
  • file: Ruta del archivo donde se encontró el link.
const mdLinks = require('cloiw-md-links');
 
 
mdLinks.mdLinks('./test_folder',{validate:false,stats:false})
  .then(res => {
    // => [{ href, text, file }]
  }).catch(err=>{
  console.log(err)
})
 
 
mdLinks.mdLinks('./test_folder',{stats:true}).then(res => {
   // => {total,unique}
}).catch(err=>{
  console.log(err)
}) 

CLI (Command Line Interface - Interfaz de Línea de Comando)

md-links <path-to-file> [options]

$ md-links  ./test/md-files-test/test-file-1.md
  ./test/md-files-test/test-file-1.md  https://es.wikipedia.org/wiki/Markdown  Markdown
  ./test/md-files-test/test-file-1.md  https://es.wikipedia.org/wiki/Markdown  Markdown
  ./test/md-files-test/test-file-1.md  https://docs.npmjs.com/getting-started/what-is-npm  NPM

Options

--validate

Si pasamos la opción --validate, el módulo hace una petición HTTP para averiguar si el link funciona o no. Si el link resulta en una redirección a una URL que responde ok, entonces consideraremos el link como ok.

$ md-links ./test/md-files-test/test-file-1.md --validate
 ./test/md-files-test/test-file-1.md  https://es.wikipedia.org/wiki/Markdown  Markdown  200 OK
 ./test/md-files-test/test-file-1.md  https://es.wikipedia.org/wiki/Markdown  Markdown  200 OK
 ./test/md-files-test/test-file-1.md  https://docs.npmjs.com/getting-started/what-is-npm  NPM  200 OK
--stats

Si pasamos la opción --stats el output será un texto con el total de links y el total de links únicos.

$ md-links ./test/md-files-test/test-file-1.md --stats  
Total Links: 3
Unique Links: 2
--stats --validate

También podemos combinar --stats y --validate para obtener la cantidad de links buenos y rotos.

$ md-links ./test/md-files-test/test-file-1.md --stats  --validate
Total Links: 3
Ok Links: 3
Broken Links: 0

Planificación

Trello

Package Sidebar

Install

npm i cloiw-md-links

Weekly Downloads

7

Version

0.4.3

License

ISC

Unpacked Size

13.4 kB

Total Files

10

Last publish

Collaborators

  • cloiw