0.1.0 • Published 9 months ago

md-links-jiva v0.1.0

Weekly downloads
-
License
ISC
Repository
-
Last release
9 months ago

logo

Markdown Links - JIVA

Índice


1. Introducción

Hola Coders :sunglasses: 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.

2. Resumen del proyecto

Es una herramienta de línea de comando (CLI) :computer: una librería (o biblioteca - library) en JavaScript.

Con esta herramienta podrás analizar :mag: tus archivos Markdown (.md) y verificar :white_check_mark: los links encontrados.

Esta librería te dirá que links están en tu archivo, cuál es su estado de validación y estadísticas de cuales links son válidos, únicos y rotos (no válidos).

3. Instalación

Debes realizarla por npm:

npm i md-links

4. Instrucciones de uso

Para que la librería opere de manera correcta debes ingresar la ruta para analizar, si no ingresas te mostrara el error, aquí unos ejemplos:

Ingresas de esta forma tu ruta

md-links <tu-ruta>
  • Ejemplo si no ingresas ruta

sinruta

  • Ejemplo si ingresas una ruta errónea

rutaerronea

  • Ejemplo ruta correcta

rutacorrecta

Opciones

Dentro de la librería tenemos opciones --validate y --stats, aquí te muestro su uso.

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

  • Ejemplo md-links <ruta-ejemplo> --validate

validate

--stats

Si pasamos la opción --stats el output (salida) será un texto con estadísticas básicas sobre los links.

  • Ejemplo md-links <ruta-ejemplo> --stats

stats

También podemos combinar --stats --validate o --validate --stats para obtener estadísticas que necesiten de los resultados de la validación.

  • Ejemplo

md-links <ruta-ejemplo> --stats --validate

statsvalidate

md-links <ruta-ejemplo> --validate --stats

validatestats

5. Planificación

Para este proyecto inicie con un Diagrama de Flujo que fue plasmando paso a paso las tareas a realizar dentro del código.

DIAGRAMA DE FLUJO

diagrama

Ya teniendo las ideas de este proyecto me organice con Trello y Project GitHUb

TRELLO

trello

PROJECT GITHUB

project

6. Test unitarios

Para este proyecto se realizaron test a todo el módulo de funciones.js

TEST

MdLinksTest

7. Referencias

:wink:

Realizado por :sparkles:

https://github.com/JoceChile
ansi-escapesansi-regexansi-stylesanymatchargparseaxiosbabel-plugin-istanbulbabel-plugin-jest-hoistbabel-preset-current-node-syntaxbabel-preset-jestbalanced-matchbrace-expansionbracesbrowserslistbserbuffer-fromcallsitescamelcasecaniuse-litechalkchar-regexci-infocjs-module-lexercliuicocollect-v8-coveragecolor-convertcolor-nameconcat-mapconvert-source-mapcross-spawndebugdedentdeepmergedetect-newlinediff-sequenceselectron-to-chromiumemitteryemoji-regexerror-exescaladeescape-string-regexpeslint-config-airbnbesprimaexecaexitexpectfast-json-stable-stringifyfb-watchmanfill-rangefind-upfs.realpathfunction-bindgensyncget-caller-fileget-package-typeget-streamglobglobalsgraceful-fshashas-flaghtml-escaperhuman-signalsimport-localimurmurhashinflightinheritsis-arrayishis-core-moduleis-fullwidth-code-pointis-generator-fnis-numberis-streamisexeistanbul-lib-coverageistanbul-lib-instrumentistanbul-lib-reportistanbul-lib-source-mapsistanbul-reportsjest-changed-filesjest-circusjest-clijest-configjest-diffjest-docblockjest-eachjest-environment-nodejest-get-typejest-haste-mapjest-leak-detectorjest-matcher-utilsjest-message-utiljest-mockjest-pnp-resolverjest-regex-utiljest-resolvejest-resolve-dependenciesjest-runnerjest-runtimejest-snapshotjest-utiljest-validatejest-watcherjest-workerjs-tokensjs-yamljsescjson-parse-even-better-errorsjson5kleurlevenlines-and-columnslocate-pathlru-cachemake-dirmakeerrormarkedmarked-gfm-heading-idmarked-manglemerge-streammicromatchmimic-fnminimatchmsnatural-comparenode-int64node-releasesnormalize-pathnpm-run-pathonceonetimep-limitp-locatep-tryparse-jsonpath-existspath-is-absolutepath-keypath-parsepicocolorspicomatchpiratespkg-dirpretty-formatpromptspure-randreact-isrequire-directoryresolveresolve-cwdresolve-fromresolve.exportssemvershebang-commandshebang-regexsignal-exitsisteransislashsource-mapsource-map-supportsprintf-jsstack-utilsstring-lengthstring-widthstrip-ansistrip-bomstrip-final-newlinestrip-json-commentssupports-colorsupports-preserve-symlinks-flagtest-excludetmplto-fast-propertiesto-regex-rangetype-detecttype-festupdate-browserslist-dbv8-to-istanbulwalkerwhichwrap-ansiwrappywrite-file-atomicy18nyallistyargsyargs-parseryocto-queue
0.1.0

9 months ago