npm.io
0.1.3 • Published 4 years agoCLI

@jessira/md-links

Licence
ISC
Version
0.1.3
Deps
7
Size
249 kB
Vulns
23
Weekly
0

Md- Links

1. Preámbulo

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).

Librería utilizada para validar la disponibilidad de los links presentes en archivos MD dentro de un directorio.

3. Instalación
npm install @jessira/md-links
4. Uso a travez de la terminal

Se ejecuta a través de la terminal de la siguiente manera:

md-links "./some/example.md"

Esto dara como respuesta las propiedades de la url:

  • href: URL encontrada.
  • text: Texto que aparecía dentro del link (<a>).
  • file: Ruta del archivo donde se encontró el link.

Opciones

md-links "./some/example.md [opciones]"
--validate

El módulo hace una petición HTTP para averiguar si el link funciona

$ md-links ./some/example.md --validate
./some/example.md http://algo.com/2/3/ ok 200 Link a algo
./some/example.md https://otra-cosa.net/algun-doc.html fail 404 algún doc
./some/example.md http://google.com/ ok 301 Google
--stats

Texto con estadísticas básicas sobre los links.

$ md-links ./some/example.md --stats
Total: 3
Unique: 3
--stats y --validate

Para adicionar a la estadistica, los links rotos

$ md-links ./some/example.md --stats --validate
Total: 3
Unique: 3
Broken: 1
---help

Obtendra mayor información sobre las opciones

Para uso prográmatico
const mdLinks = require("@jessira/md-links");
mdLinks("./some/example.md")
  .then(links => {
    // => [{ href, text, file }, ...]
  })
  .catch(console.error);

mdLinks("./some/example.md", { validate: true })
  .then(links => {
    // => [{ href, text, file, status, ok }, ...]
  })
  .catch(console.error);

mdLinks("./some/dir")
  .then(links => {
    // => [{ href, text, file }, ...]
  })
  .catch(console.error);

Keywords