JAVASCRIPT API
- Importa como módulo
const { mdLinks } = require('mdlinks');
Por ejemplo:
const { mdLinks } = require("mdlinks");
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);
El ejecutable de nuestra aplicación se puede ejecutar de la siguiente manera a través de la terminal:
md-links <ruta del archivo> [opciones]
$ md-links 'data/try.md.'
HREF: https://nodejs.org/es/about/
TEXT: Node.js http.get - Documentación oficial
PATH: C:/user/jael/desktop/test/data2/try.md
Si pasamos la opción --validate
, el módulo debe hacer 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 'data/try.md' --validate
HREF: https://nodejs.org/es/about/
TEXT: Acerca de Node.js - Documentación oficial
PATH: C:/user/jael/desktop/test/data2/try.md
STATUS: 200
STATUSTEXT: OK
HREF: https://nodejs.org/api/http.html#http_http_get_options_callback
TEXT: Node.js http.get - Documentación oficial
PATH: C:/user/jael/desktop/test/data2/try.md
STATUS:404
STATUSTEXT: fail
Vemos que el output en este caso incluye la palabra ok
o fail
después de
la URL, así como el status de la respuesta recibida a la petición HTTP a dicha
URL.
Si pasamos la opción --stats
el output (salida) será un texto con estadísticas
básicas sobre los links.
$ md-links 'data/trny.md' --stats
TOTAL: 10
UNIQUE: 10
También podemos combinar --stats
y --validate
para obtener estadísticas que
necesiten de los resultados de la validación.
$ md-links 'data/prueba1.md' --stats --validate
TOTAL: 10
UNIQUE: 10
BROKEN: 1
- Uso de callbacks
- Consumo de Promesas
- Creacion de Promesas
- Modulos de Js
- Recursión
- Sistema de archivos
- package.json
- crear modules
- Instalar y usar modules
- npm scripts
- CLI (Command Line Interface - Interfaz de Línea de Comando)
- Testeo de tus funciones
- Testeo asíncrono
- Uso de librerias de Mock
- Mocks manuales
- Testeo para multiples Sistemas Operativos
- Organización en Github
- Modularización
- Nomenclatura / Semántica
- Linting