Code Monkey home page Code Monkey logo

layout-shift-gif's Issues

Use puppeteer-core to make CLI ux better

Love the idea of your package and CLI api ❤️.

I suggest to use puppeteer-core to prevent user from waiting of chrome downloading each time when package was used via npx. Waiting for 132.4 Mb each launch hurts UX a bit 😅.

We can use find_chrome.js script to get executablePath of local chrome instance or it'll download it's latest revision.

I can prepare PR, if you don't mind, do you?

Output the whole page

Is there a way I could output the whole page to the gif. I have pages that are very tall: multiple screens

TypeError: Cannot read properties of undefined (reading 'Nexus 5X')

Hi Thanks for adding apple silicon support, I tried it again and i get this issue:

╭─ericjohnson@ej-mba-m1 ~
╰─$ layout-shift-gif --url https://blacklivesmatter.com/ --device mobile --output layout-shift.gif                           1 ↵
file:///opt/homebrew/lib/node_modules/layout-shift-gif/layout-shift-gif.js:59
const phone = devices['Nexus 5X']
                     ^

TypeError: Cannot read properties of undefined (reading 'Nexus 5X')
    at file:///opt/homebrew/lib/node_modules/layout-shift-gif/layout-shift-gif.js:59:22
    at ModuleJob.run (node:internal/modules/esm/module_job:195:25)
    at async Promise.all (index 0)
    at async ESMLoader.import (node:internal/modules/esm/loader:337:24)
    at async loadESM (node:internal/process/esm_loader:88:5)
    at async handleMainPromise (node:internal/modules/run_main:61:12)

Node.js v17.4.0

Steps to reproduce:

  1. Run npm install -g layout-shift-gif
  2. Run layout-shift-gif --url https://blacklivesmatter.com/ --device mobile --output layout-shift.gif
  3. The error above occurs.

An option to bypass Error: net::ERR_CERT_AUTHORITY_INVALID

Hi =)
Is there a change you could add a way to use a localhost with https? Of course, the main problem about this is that I always have to add an exception when I navigate through a visual browser, pero using this project as a npm program through the terminal throws an error about my website's certificate.

Btw, excellent project!

Include Readme and explanation of colors/border styles

While using the tool, I am presented with information about the CLS on the page via colored rectangles (I have seen green and orange) that animate by either popping into the gif or having their border-style change (from solid to dashed or vice versa).

What do the different colors and border styles indicate?

Add output to a text file with full css paths to affected divs.

For analyzing which divs specifically are affected it would be helpful if a full css selector to the div that has changed could be included in the output.

Something like body > div > div.foobar > div > span:nth-child(10)
It makes finding the affected elements much easier.

Installs fine but cannot run (Macbook M1)

I figure this is related to having an M1, any ideas?

╭─ericjohnson@ej-mba-m1 ~
╰─$ npm install -g layout-shift-gif

added 126 packages, and audited 127 packages in 15s

11 packages are looking for funding
run npm fund for details

found 0 vulnerabilities
╭─ericjohnson@ej-mba-m1 ~
╰─$ layout-shift-gif --url https://blacklivesmatter.com/ --device mobile --output layout-shift.gif
TimeoutError: Timed out after 10000 ms while trying to connect to the browser! Only Chrome at revision r869685 is guaranteed to work.
at Timeout.onTimeout (/opt/homebrew/lib/node_modules/layout-shift-gif/node_modules/puppeteer/lib/cjs/puppeteer/node/BrowserRunner.js:205:20)

Cookie prompts / pop-up windows

It'd be great if you try to close the cookie prompts / pop-up windows (or being able to specify which element to click). E.g.:

image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.