code-pushup / cli

A CLI to run all kinds of code quality measurements to align your team with company goals
https://code-pushup.dev
MIT License
255 stars 14 forks source link

feat(utils): implement report-diff.md formatting for monorepos #793

Closed matejchalk closed 3 months ago

matejchalk commented 3 months ago

Part of #731 (only Markdown formatting)

Scope

Next steps

github-actions[bot] commented 3 months ago

Code PushUp

๐Ÿคจ Code PushUp report has both improvements and regressions โ€“ compared target commit a778eeac60181344b2036ea3daeb9f06c5006f42 with source commit da41f1873bd38b5cef4eac659b03747372b2aae9.

๐Ÿ•ต๏ธ See full comparison in Code PushUp portal ๐Ÿ”

๐Ÿท๏ธ Categories

๐Ÿท๏ธ Category โญ Previous score โญ Current score ๐Ÿ”„ Score change
Performance ๐ŸŸก 51 ๐ŸŸก 52 โ†‘ +0.4
Code coverage ๐ŸŸก 90 ๐ŸŸก 90 โ†‘ +0.3
Custom checks ๐ŸŸก 67 ๐ŸŸก 67 โ€“
Security ๐ŸŸข 100 ๐ŸŸข 100 โ€“
Updates ๐ŸŸก 78 ๐ŸŸก 78 โ€“
Accessibility ๐ŸŸข 91 ๐ŸŸข 91 โ€“
Best Practices ๐ŸŸข 100 ๐ŸŸข 100 โ€“
SEO ๐ŸŸก 61 ๐ŸŸก 61 โ€“
Bug prevention ๐ŸŸข 100 ๐ŸŸข 100 โ€“
Code style ๐ŸŸข 99 ๐ŸŸข 99 โ€“
๐Ÿ‘ 2 groups improved, ๐Ÿ‘ 4 audits improved, ๐Ÿ‘Ž 3 audits regressed, 81 audits changed without impacting score ## ๐Ÿ—ƒ๏ธ Groups | ๐Ÿ”Œ Plugin | ๐Ÿ—ƒ๏ธ Group | โญ Previous score | โญ Current score | ๐Ÿ”„ Score change | | :--------------------------------------------------------------------------- | :-------------------- | :--------------: | :-------------: | :--------------------------------------------------------------: | | Lighthouse | Performance | ๐ŸŸก 51 | ๐ŸŸก **52** | ![โ†‘ +0.4](https://img.shields.io/badge/%E2%86%91%20%2B0.4-green) | | [Code coverage](https://www.npmjs.com/package/@code-pushup/coverage-plugin/) | Code coverage metrics | ๐ŸŸก 90 | ๐ŸŸก **90** | ![โ†‘ +0.3](https://img.shields.io/badge/%E2%86%91%20%2B0.3-green) | 18 other groups are unchanged. ## ๐Ÿ›ก๏ธ Audits | ๐Ÿ”Œ Plugin | ๐Ÿ›ก๏ธ Audit | ๐Ÿ“ Previous value | ๐Ÿ“ Current value | ๐Ÿ”„ Value change | | :--------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------: | :-------------------------------------------------------------: | :--------------------------------------------------------------------------------: | | Lighthouse | Speed Index | ๐ŸŸฅ 8.5ย s | ๐ŸŸฅ **6.4ย s** | ![โ†“ โˆ’25โ€‰%](https://img.shields.io/badge/%E2%86%93%20%E2%88%9225%E2%80%89%25-green) | | Lighthouse | Largest Contentful Paint | ๐ŸŸจ 3.1ย s | ๐ŸŸจ **3.4ย s** | ![โ†‘ +8โ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B8%E2%80%89%25-red) | | Lighthouse | First Meaningful Paint | ๐ŸŸจ 2.8ย s | ๐ŸŸจ **2.8ย s** | ![โ†‘ +1โ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B1%E2%80%89%25-red) | | Lighthouse | First Contentful Paint | ๐ŸŸจ 2.8ย s | ๐ŸŸจ **2.8ย s** | ![โ†‘ +1โ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B1%E2%80%89%25-red) | | [Code coverage](https://www.npmjs.com/package/@code-pushup/coverage-plugin/) | Branch coverage | ๐ŸŸจ 84.4 % | ๐ŸŸจ **84.9 %** | ![โ†‘ +1โ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B1%E2%80%89%25-green) | | [Code coverage](https://www.npmjs.com/package/@code-pushup/coverage-plugin/) | Line coverage | ๐ŸŸฉ 91.6 % | ๐ŸŸฉ **91.8 %** | ![โ†‘ +0โ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B0%E2%80%89%25-green) | | [Code coverage](https://www.npmjs.com/package/@code-pushup/coverage-plugin/) | Function coverage | ๐ŸŸฉ 92.1 % | ๐ŸŸฉ **92.3 %** | ![โ†‘ +0โ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B0%E2%80%89%25-green) | | Lighthouse | Minimizes main-thread work | ๐ŸŸฅ 23.4ย s | ๐ŸŸฅ **21.3ย s** | ![โ†“ โˆ’9โ€‰%](https://img.shields.io/badge/%E2%86%93%20%E2%88%929%E2%80%89%25-gray) | | Lighthouse | Avoids enormous network payloads | ๐ŸŸฉ Total size was 1,806ย KiB | ๐ŸŸฉ **Total size was 1,804ย KiB** | ![โ†“ +0โ€‰%](https://img.shields.io/badge/%E2%86%93%20%2B0%E2%80%89%25-gray) | | Lighthouse | Uses efficient cache policy on static assets | ๐ŸŸจ 28 resources found | ๐ŸŸจ **27 resources found** | ![โ†“ +0โ€‰%](https://img.shields.io/badge/%E2%86%93%20%2B0%E2%80%89%25-gray) | | Lighthouse | JavaScript execution time | ๐ŸŸฅ 9.2ย s | ๐ŸŸฅ **10.5ย s** | ![โ†‘ +13โ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B13%E2%80%89%25-gray) | | Lighthouse | Eliminate render-blocking resources | ๐ŸŸฅ Potential savings of 360ย ms | ๐ŸŸฅ **Potential savings of 1,110ย ms** | ![โ†‘ +209โ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B209%E2%80%89%25-gray) | | Lighthouse | Max Potential First Input Delay | ๐ŸŸฅ 2,810ย ms | ๐ŸŸฅ **3,470ย ms** | ![โ†‘ +24โ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B24%E2%80%89%25-gray) | | Lighthouse | Total Blocking Time | ๐ŸŸฅ 8,820ย ms | ๐ŸŸฅ **8,240ย ms** | ![โ†“ โˆ’7โ€‰%](https://img.shields.io/badge/%E2%86%93%20%E2%88%927%E2%80%89%25-gray) | | Lighthouse | Time to Interactive | ๐ŸŸฅ 16.4ย s | ๐ŸŸฅ **16.5ย s** | ![โ†‘ +1โ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B1%E2%80%89%25-gray) | | Lighthouse | Metrics | ๐ŸŸฉ 16353 | ๐ŸŸฉ **100%** | ![โ†‘ +1โ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B1%E2%80%89%25-gray) | | Lighthouse | Initial server response time was short | ๐ŸŸฉ Root document took 370ย ms | ๐ŸŸฉ **Root document took 290ย ms** | ![โ†“ โˆ’23โ€‰%](https://img.shields.io/badge/%E2%86%93%20%E2%88%9223%E2%80%89%25-gray) | | Lighthouse | Network Round Trip Times | ๐ŸŸฉ 10ย ms | ๐ŸŸฉ **40ย ms** | ![โ†‘ +185โ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B185%E2%80%89%25-gray) | | Lighthouse | Server Backend Latencies | ๐ŸŸฉ 120ย ms | ๐ŸŸฉ **140ย ms** | ![โ†‘ +15โ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B15%E2%80%89%25-gray) | | Lighthouse | Avoids an excessive DOM size | ๐ŸŸฅ 2,229 elements | ๐ŸŸฅ **2,222 elements** | ![โ†“ +0โ€‰%](https://img.shields.io/badge/%E2%86%93%20%2B0%E2%80%89%25-gray) | | [JS Packages](https://docs.npmjs.com/) | [Outdated NPM prod dependencies.](https://classic.yarnpkg.com/docs/dependency-types#toc-dependencies) | ๐ŸŸจ 14 outdated package versions (4 major, 3 minor, 7 patch) | ๐ŸŸจ **13 outdated package versions (4 major, 3 minor, 6 patch)** | ![โ†“ โˆ’7โ€‰%](https://img.shields.io/badge/%E2%86%93%20%E2%88%927%E2%80%89%25-gray) | | Lighthouse | Uses HTTPS | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Has a `` tag with `width` or `initial-scale` | ๐ŸŸฉ 0 | ๐ŸŸฉ **100%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Screenshot Thumbnails | ๐ŸŸฉ 0 | ๐ŸŸฉ **100%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Final Screenshot | ๐ŸŸฉ 0 | ๐ŸŸฉ **100%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | No browser errors logged to the console | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Avoid chaining critical requests | ๐ŸŸฉ 10 chains found | ๐ŸŸฉ **10 chains found** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Displays images with correct aspect ratio | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Serves images with appropriate resolution | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Avoids deprecated APIs | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Avoids third-party cookies | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Preconnect to required origins | ๐ŸŸฉ 0 | ๐ŸŸฉ **100%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | All text remains visible during webfont loads | ๐ŸŸฉ 0 | ๐ŸŸฉ **100%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Diagnostics | ๐ŸŸฉ 0 | ๐ŸŸฉ **100%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Network Requests | ๐ŸŸฉ 0 | ๐ŸŸฉ **100%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Tasks | ๐ŸŸฉ 0 | ๐ŸŸฉ **100%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Resources Summary | ๐ŸŸฉ 0 | ๐ŸŸฉ **100%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Avoid long main-thread tasks | ๐ŸŸฉ 20 long tasks found | ๐ŸŸฉ **20 long tasks found** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Page has valid source maps | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Ensure CSP is effective against XSS attacks | ๐ŸŸฉ 0 | ๐ŸŸฉ **100%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Script Treemap Data | ๐ŸŸฉ 0 | ๐ŸŸฉ **100%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | `[aria-*]` attributes match their roles | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Values assigned to `role=""` are valid ARIA roles. | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | ARIA attributes are used as specified for the element's role | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Deprecated ARIA roles were not used | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | `[aria-hidden="true"]` is not present on the document `` | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | `[aria-hidden="true"]` elements do not contain focusable descendents | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | `[role]`s have all required `[aria-*]` attributes | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Elements with an ARIA `[role]` that require children to contain a specific `[role]` have all required children. | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | `[role]` values are valid | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | ARIA `tooltip` elements have accessible names | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | `[aria-*]` attributes have valid values | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | `[aria-*]` attributes are valid and not misspelled | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Buttons have an accessible name | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Document has a `` element | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Heading elements appear in a sequentially-descending order | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | `<html>` element has a `[lang]` attribute | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | `<html>` element has a valid value for its `[lang]` attribute | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Identical links have the same purpose. | ๐ŸŸฉ 0 | ๐ŸŸฉ **100%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Image elements do not have `[alt]` attributes that are redundant text. | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Links are distinguishable without relying on color. | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Lists contain only `<li>` elements and script supporting elements (`<script>` and `<template>`). | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | List items (`<li>`) are contained within `<ul>`, `<ol>` or `<menu>` parent elements | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | `[user-scalable="no"]` is not used in the `<meta name="viewport">` element and the `[maximum-scale]` attribute is not less than 5. | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | No element has a `[tabindex]` value greater than 0 | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Tables have different content in the summary attribute and `<caption>`. | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Tables use `<caption>` instead of cells with the `[colspan]` attribute to indicate a caption. | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | `<td>` elements in a large `<table>` have one or more table headers. | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Cells in a `<table>` element that use the `[headers]` attribute refer to table cells within the same table. | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | `<th>` elements and elements with `[role="columnheader"/"rowheader"]` have data cells they describe. | ๐ŸŸฉ 0 | ๐ŸŸฉ **100%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Page has the HTML doctype | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Properly defines charset | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Avoids requesting the geolocation permission on page load | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | No issues in the `Issues` panel in Chrome Devtools | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Avoids `document.write()` | ๐ŸŸฉ 0 | ๐ŸŸฉ **100%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Detected JavaScript libraries | ๐ŸŸฉ 0 | ๐ŸŸฉ **100%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Avoids requesting the notification permission on page load | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Allows users to paste into input fields | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Uses passive listeners to improve scrolling performance | ๐ŸŸฉ 0 | ๐ŸŸฉ **100%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Document has a meta description | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Page has successful HTTP status code | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Document uses legible font sizes | ๐ŸŸฉ 99.65% legible text | ๐ŸŸฉ **99.65% legible text** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Links have descriptive text | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Links are crawlable | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | robots.txt is valid | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Document has a valid `hreflang` | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Document has a valid `rel=canonical` | ๐ŸŸฉ 0 | ๐ŸŸฉ **passed** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | | Lighthouse | Image elements have explicit `width` and `height` | ๐ŸŸจ 0 | ๐ŸŸจ **50%** | ![โ†‘ +โˆžโ€‰%](https://img.shields.io/badge/%E2%86%91%20%2B%E2%88%9E%E2%80%89%25-gray) | 421 other audits are unchanged. </details> <!-- generated by code-pushup/github-action --> </div> </div> <div class="page-bar-simple"> </div> <div class="footer"> <ul class="body"> <li>ยฉ <script> document.write(new Date().getFullYear()) </script> Githubissues.</li> <li>Githubissues is a development platform for aggregating issues.</li> </ul> </div> <script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.min.js"></script> <script src="/githubissues/assets/js.js"></script> <script src="/githubissues/assets/markdown.js"></script> <script src="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.4.0/build/highlight.min.js"></script> <script src="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.4.0/build/languages/go.min.js"></script> <script> hljs.highlightAll(); </script> </body> </html>