Nanobots Protecting Microbots
    Wondering what’s next for npm?Check out our public roadmap! »

    scanode

    2.0.1 • Public • Published

    deno-hello

    Companion repo for the blog post https://jldec.me/getting-started-with-deno

    The scripts below are hosted by Cloudflare Pages at https://deno-hello.jldec.me

    Install deno

    I configured my environment, and copied the latest binary from GitHub to ~/deno/bin.

    export DENO_DIR=~/deno
    export PATH=${PATH}:${DENO_DIR}/bin

    See the Manual for additional options.

    hello.js

    $ deno run https://deno-hello.jldec.me/hello.js world
    
    Hello Deno Tue Feb 23 2021 09:55:54 GMT+0000 (GMT) hello [ "world" ]
    -🦀-
    ┌───────┬────────┐
    │ (idx) │ Values │
    ├───────┼────────┤
    │   0   │   45   │
    │   1   │  240   │
    │   2   │  159   │
    │   3   │  166   │
    │   4   │  128   │
    │   5   │   45   │
    │   6   │   10   │
    └───────┴────────┘
    

    scan.js

    Crawls a website, validating that all the links on the site which point to the same orgin can be fetched.

    Outputs JSON with broken links to stdout, logs to stderr. Exits with 1 if any broken links are found.

    Options (passed after the URL):

    • -R: scan single file and list the links in it.
    • -q: suppress logging the list of parsed files or links to stderr.

    To run the script, call deno run --allow-net scan.js URL. E.g.

    $ deno run --allow-net https://deno-hello.jldec.me/scan.js https://jldec.me
    parsing /
    parsing /getting-started-with-deno
    parsing /first-steps-using-cloudflare-pages
    parsing /fun-with-vercel
    parsing /a-web-for-everyone
    parsing /running-a-compiled-deno-script-in-a-github-action
    parsing /why-serverless-at-the-edge
    parsing /why-the-web-needs-better-html-editing-components
    parsing /github-actions-101
    parsing /forays-from-node-to-rust
    parsing /about
    parsing /spring-boot-101
    parsing /calling-rust-from-a-cloudflare-worker
    parsing /migrating-from-cjs-to-esm
    14 pages scanned.
    🎉 no broken links found.
    

    scanurl and scanode

    Crawler logic was extracted into scanurl.mjs and published as a non-Deno-specific ESM module on NPM as scanode.

    After npm install -g scanode you can invoke scanode with Node.js instead of Deno, or run it inside a web browser.

    $ scanode https://jldec.me
    parsing /
    parsing /getting-started-with-deno
    parsing /spring-boot-101
    parsing /why-serverless-at-the-edge
    parsing /first-steps-using-cloudflare-pages
    parsing /github-actions-101
    parsing /running-a-compiled-deno-script-in-a-github-action
    parsing /calling-rust-from-a-cloudflare-worker
    parsing /a-web-for-everyone
    parsing /migrating-from-cjs-to-esm
    parsing /about
    parsing /why-the-web-needs-better-html-editing-components
    parsing /forays-from-node-to-rust
    parsing /fun-with-vercel
    14 pages scanned.
    🎉 no broken links found.
    

    Keywords

    none

    Install

    npm i scanode

    DownloadsWeekly Downloads

    3

    Version

    2.0.1

    License

    MIT

    Unpacked Size

    15.5 kB

    Total Files

    14

    Last publish

    Collaborators

    • avatar