From 9dbaf731d325f64208384b02a449fe501ca0bf24 Mon Sep 17 00:00:00 2001 From: Adam Raine <6752989+adamraine@users.noreply.github.com> Date: Wed, 22 Sep 2021 15:13:40 -0400 Subject: [PATCH] core(fr): api for constructing flow result (#13034) --- flow-report/src/sidebar/flow.tsx | 9 +- flow-report/src/sidebar/sidebar.tsx | 2 +- flow-report/src/summary/summary.tsx | 15 +- flow-report/src/util.ts | 67 +- flow-report/test/sidebar/flow-test.tsx | 4 +- flow-report/test/summary/summary-test.tsx | 15 +- flow-report/test/util-test.tsx | 45 +- lighthouse-core/fraggle-rock/user-flow.js | 135 + .../scripts/update-flow-fixtures.js | 41 +- .../fraggle-rock/reports/sample-lhrs.json | 43311 ++++++++-------- types/global-lh.d.ts | 2 +- types/lhr/flow.d.ts | 15 +- 12 files changed, 21688 insertions(+), 21973 deletions(-) create mode 100644 lighthouse-core/fraggle-rock/user-flow.js diff --git a/flow-report/src/sidebar/flow.tsx b/flow-report/src/sidebar/flow.tsx index 16f1713c6ed3..395f30b88d81 100644 --- a/flow-report/src/sidebar/flow.tsx +++ b/flow-report/src/sidebar/flow.tsx @@ -7,7 +7,7 @@ import {FunctionComponent} from 'preact'; import {FlowSegment} from '../common'; -import {classNames, useCurrentLhr, useDerivedStepNames, useFlowResult} from '../util'; +import {classNames, useCurrentLhr, useFlowResult} from '../util'; import {Separator} from '../common'; const SidebarFlowStep: FunctionComponent<{ @@ -42,13 +42,12 @@ const SidebarFlowSeparator: FunctionComponent = () => { export const SidebarFlow: FunctionComponent = () => { const flowResult = useFlowResult(); const currentLhr = useCurrentLhr(); - const stepNames = useDerivedStepNames(); return (
{ - flowResult.lhrs.map((lhr, index) => { - const stepName = stepNames[index]; + flowResult.steps.map((step, index) => { + const {lhr, name} = step; const url = new URL(location.href); url.hash = `#index=${index}`; return <> @@ -61,7 +60,7 @@ export const SidebarFlow: FunctionComponent = () => { key={lhr.fetchTime} mode={lhr.gatherMode} href={url.href} - label={stepName} + label={name} isCurrent={index === (currentLhr && currentLhr.index)} /> ; diff --git a/flow-report/src/sidebar/sidebar.tsx b/flow-report/src/sidebar/sidebar.tsx index 26d967ceb5f4..258da89c385b 100644 --- a/flow-report/src/sidebar/sidebar.tsx +++ b/flow-report/src/sidebar/sidebar.tsx @@ -74,7 +74,7 @@ export const SidebarHeader: FunctionComponent<{title: string, date: string}> = ( export const Sidebar: FunctionComponent = () => { const flowResult = useFlowResult(); - const firstLhr = flowResult.lhrs[0]; + const firstLhr = flowResult.steps[0].lhr; return (
diff --git a/flow-report/src/summary/summary.tsx b/flow-report/src/summary/summary.tsx index c579c056d163..d62e803e0222 100644 --- a/flow-report/src/summary/summary.tsx +++ b/flow-report/src/summary/summary.tsx @@ -8,7 +8,7 @@ import {FunctionComponent} from 'preact'; import {useMemo} from 'preact/hooks'; import {FlowSegment, Separator} from '../common'; -import {getScreenDimensions, getScreenshot, useDerivedStepNames, useFlowResult} from '../util'; +import {getScreenDimensions, getScreenshot, useFlowResult} from '../util'; import {Util} from '../../../report/renderer/util'; import {CategoryScore} from '../wrappers/category-score'; @@ -113,15 +113,14 @@ export const SummaryFlowStep: FunctionComponent<{ */ const SummaryFlow: FunctionComponent = () => { const flowResult = useFlowResult(); - const stepNames = useDerivedStepNames(); return (
{ - flowResult.lhrs.map((lhr, index) => + flowResult.steps.map((step, index) => ) @@ -136,8 +135,8 @@ export const SummaryHeader: FunctionComponent = () => { let numNavigation = 0; let numTimespan = 0; let numSnapshot = 0; - for (const lhr of flowResult.lhrs) { - switch (lhr.gatherMode) { + for (const step of flowResult.steps) { + switch (step.lhr.gatherMode) { case 'navigation': numNavigation++; break; diff --git a/flow-report/src/util.ts b/flow-report/src/util.ts index 4f12f9dadd64..6d52b7787940 100644 --- a/flow-report/src/util.ts +++ b/flow-report/src/util.ts @@ -14,33 +14,6 @@ function getHashParam(param: string): string|null { return params.get(param); } -function shortenUrl(longUrl: string) { - const url = new URL(longUrl); - return `${url.hostname}${url.pathname}`; -} - -/** - * The step label should be enumerated if there is another report of the same gather mode in the same section. - * Navigation reports will never be enumerated. - */ -function shouldEnumerate(flowResult: LH.FlowResult, index: number) { - const {lhrs} = flowResult; - if (lhrs[index].gatherMode === 'navigation') return false; - - for (let i = index + 1; lhrs[i] && lhrs[i].gatherMode !== 'navigation'; ++i) { - if (lhrs[i].gatherMode === lhrs[index].gatherMode) { - return true; - } - } - for (let i = index - 1; lhrs[i] && lhrs[i].gatherMode !== 'navigation'; --i) { - if (lhrs[i].gatherMode === lhrs[index].gatherMode) { - return true; - } - } - return false; -} - - export function classNames(...args: Array>): string { const classes = []; for (const arg of args) { @@ -83,7 +56,7 @@ export function useFlowResult(): LH.FlowResult { export function useLocale(): LH.Locale { const flowResult = useFlowResult(); - return flowResult.lhrs[0].configSettings.locale; + return flowResult.steps[0].lhr.configSettings.locale; } export function useHashParam(param: string) { @@ -118,42 +91,12 @@ export function useCurrentLhr(): {value: LH.Result, index: number}|null { return null; } - const value = flowResult.lhrs[index]; - if (!value) { - console.warn(`No LHR at index ${index}`); + const step = flowResult.steps[index]; + if (!step) { + console.warn(`No flow step at index ${index}`); return null; } - return {value, index}; + return {value: step.lhr, index}; }, [indexString, flowResult]); } - -export function useDerivedStepNames() { - const flowResult = useFlowResult(); - - return useMemo(() => { - let numTimespan = 1; - let numSnapshot = 1; - - return flowResult.lhrs.map((lhr, index) => { - const shortUrl = shortenUrl(lhr.finalUrl); - - switch (lhr.gatherMode) { - case 'navigation': - numTimespan = 1; - numSnapshot = 1; - return `Navigation report (${shortUrl})`; - case 'timespan': - if (shouldEnumerate(flowResult, index)) { - return `Timespan report ${numTimespan++} (${shortUrl})`; - } - return `Timespan report (${shortUrl})`; - case 'snapshot': - if (shouldEnumerate(flowResult, index)) { - return `Snapshot report ${numSnapshot++} (${shortUrl})`; - } - return `Snapshot report (${shortUrl})`; - } - }); - }, [flowResult]); -} diff --git a/flow-report/test/sidebar/flow-test.tsx b/flow-report/test/sidebar/flow-test.tsx index db07180ae26b..11f37f0a5531 100644 --- a/flow-report/test/sidebar/flow-test.tsx +++ b/flow-report/test/sidebar/flow-test.tsx @@ -30,8 +30,8 @@ describe('SidebarFlow', () => { const root = render(, {wrapper}); const navigation = root.getByText('Navigation report (www.mikescerealshack.co/)'); - const timespan = root.getByText('Timespan report (www.mikescerealshack.co/search)'); - const snapshot = root.getByText('Snapshot report (www.mikescerealshack.co/search)'); + const timespan = root.getByText('Search input'); + const snapshot = root.getByText('Search results'); const navigation2 = root.getByText('Navigation report (www.mikescerealshack.co/corrections)'); const links = root.getAllByRole('link') as HTMLAnchorElement[]; diff --git a/flow-report/test/summary/summary-test.tsx b/flow-report/test/summary/summary-test.tsx index 882685ca514e..ba7c9fe1c4f5 100644 --- a/flow-report/test/summary/summary-test.tsx +++ b/flow-report/test/summary/summary-test.tsx @@ -50,7 +50,7 @@ describe('SummaryHeader', () => { describe('SummaryFlowStep', () => { it('renders navigation step', async () => { const root = render(, {wrapper}); @@ -77,7 +77,7 @@ describe('SummaryFlowStep', () => { it('renders timespan step', async () => { const root = render(, {wrapper}); @@ -89,23 +89,24 @@ describe('SummaryFlowStep', () => { const screenshot = root.getByTestId('SummaryFlowStep__screenshot') as HTMLImageElement; expect(screenshot.src).toBeFalsy(); - expect(root.getByTestId('SummaryCategory__null')); + // Accessibility and SEO are missing in timespan. + const nullCategories = root.getAllByTestId('SummaryCategory__null'); + expect(nullCategories).toHaveLength(2); + const gauges = root.getAllByTestId('CategoryScore'); - expect(gauges).toHaveLength(3); + expect(gauges).toHaveLength(2); const links = root.getAllByRole('link') as HTMLAnchorElement[]; expect(links.map(a => a.href)).toEqual([ 'file:///Users/example/report.html/#index=1', 'file:///Users/example/report.html/#index=1&anchor=performance', - // Accessibility is missing in timespan. 'file:///Users/example/report.html/#index=1&anchor=best-practices', - 'file:///Users/example/report.html/#index=1&anchor=seo', ]); }); it('renders snapshot step', async () => { const root = render(, {wrapper}); diff --git a/flow-report/test/util-test.tsx b/flow-report/test/util-test.tsx index a700302b0d3d..bb1cddeaad6f 100644 --- a/flow-report/test/util-test.tsx +++ b/flow-report/test/util-test.tsx @@ -8,11 +8,12 @@ import fs from 'fs'; import {dirname} from 'path'; import {fileURLToPath} from 'url'; +import {jest} from '@jest/globals'; import {renderHook} from '@testing-library/preact-hooks'; import {FunctionComponent} from 'preact'; import {act} from 'preact/test-utils'; -import {FlowResultContext, useCurrentLhr, useDerivedStepNames} from '../src/util'; +import {FlowResultContext, useCurrentLhr} from '../src/util'; const flowResult: LH.FlowResult = JSON.parse( fs.readFileSync( @@ -25,6 +26,7 @@ const flowResult: LH.FlowResult = JSON.parse( let wrapper: FunctionComponent; beforeEach(() => { + global.console.warn = jest.fn(); wrapper = ({children}) => ( {children} ); @@ -34,9 +36,10 @@ describe('useCurrentLhr', () => { it('gets current lhr index from url hash', () => { global.location.hash = '#index=1'; const {result} = renderHook(() => useCurrentLhr(), {wrapper}); + expect(console.warn).not.toHaveBeenCalled(); expect(result.current).toEqual({ index: 1, - value: flowResult.lhrs[1], + value: flowResult.steps[1].lhr, }); }); @@ -46,7 +49,7 @@ describe('useCurrentLhr', () => { expect(render.result.current).toEqual({ index: 1, - value: flowResult.lhrs[1], + value: flowResult.steps[1].lhr, }); await act(() => { @@ -54,56 +57,30 @@ describe('useCurrentLhr', () => { }); await render.waitForNextUpdate(); + expect(console.warn).not.toHaveBeenCalled(); expect(render.result.current).toEqual({ index: 2, - value: flowResult.lhrs[2], + value: flowResult.steps[2].lhr, }); }); it('return null if lhr index is unset', () => { const {result} = renderHook(() => useCurrentLhr(), {wrapper}); + expect(console.warn).not.toHaveBeenCalled(); expect(result.current).toBeNull(); }); it('return null if lhr index is out of bounds', () => { global.location.hash = '#index=5'; const {result} = renderHook(() => useCurrentLhr(), {wrapper}); + expect(console.warn).toHaveBeenCalled(); expect(result.current).toBeNull(); }); it('returns null for invalid value', () => { global.location.hash = '#index=OHNO'; const {result} = renderHook(() => useCurrentLhr(), {wrapper}); + expect(console.warn).toHaveBeenCalled(); expect(result.current).toBeNull(); }); }); - -describe('useDerivedStepNames', () => { - it('counts up for each mode', () => { - const {result} = renderHook(() => useDerivedStepNames(), {wrapper}); - expect(result.current).toEqual([ - 'Navigation report (www.mikescerealshack.co/)', - 'Timespan report (www.mikescerealshack.co/search)', - 'Snapshot report (www.mikescerealshack.co/search)', - 'Navigation report (www.mikescerealshack.co/corrections)', - ]); - }); - - it('enumerates if multiple in same group', () => { - const lhrs = flowResult.lhrs; - lhrs[3] = lhrs[2]; - const newFlowResult = {lhrs}; - const wrapper: FunctionComponent = ({children}) => ( - {children} - ); - - const {result} = renderHook(() => useDerivedStepNames(), {wrapper}); - - expect(result.current).toEqual([ - 'Navigation report (www.mikescerealshack.co/)', - 'Timespan report (www.mikescerealshack.co/search)', - 'Snapshot report 1 (www.mikescerealshack.co/search)', - 'Snapshot report 2 (www.mikescerealshack.co/search)', - ]); - }); -}); diff --git a/lighthouse-core/fraggle-rock/user-flow.js b/lighthouse-core/fraggle-rock/user-flow.js new file mode 100644 index 000000000000..8c16e1ca198c --- /dev/null +++ b/lighthouse-core/fraggle-rock/user-flow.js @@ -0,0 +1,135 @@ +/** + * @license Copyright 2021 The Lighthouse Authors. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + */ +'use strict'; + +const {generateFlowReportHtml} = require('../../report/generator/report-generator.js'); +const {navigation, startTimespan, snapshot} = require('./api.js'); + +/** @typedef {Parameters[0]} FrOptions */ +/** @typedef {Omit} UserFlowOptions */ +/** @typedef {UserFlowOptions & {stepName?: string}} StepOptions */ + +class UserFlow { + /** + * @param {FrOptions['page']} page + * @param {UserFlowOptions=} options + */ + constructor(page, options) { + /** @type {FrOptions} */ + this.options = {page, ...options}; + /** @type {LH.FlowResult.Step[]} */ + this.steps = []; + } + + /** + * @param {string} longUrl + * @returns {string} + */ + _shortenUrl(longUrl) { + const url = new URL(longUrl); + return `${url.hostname}${url.pathname}`; + } + + /** + * @param {LH.Result} lhr + * @return {string} + */ + _getDefaultStepName(lhr) { + const shortUrl = this._shortenUrl(lhr.finalUrl); + switch (lhr.gatherMode) { + case 'navigation': + return `Navigation report (${shortUrl})`; + case 'timespan': + return `Timespan report (${shortUrl})`; + case 'snapshot': + return `Snapshot report (${shortUrl})`; + } + } + + /** + * @param {string} url + * @param {StepOptions=} stepOptions + */ + async navigate(url, stepOptions) { + if (this.currentTimespan) throw Error('Timespan already in progress'); + + const options = {url, ...this.options, ...stepOptions}; + const result = await navigation(options); + if (!result) throw Error('Navigation returned undefined'); + + const providedName = stepOptions && stepOptions.stepName; + this.steps.push({ + lhr: result.lhr, + name: providedName || this._getDefaultStepName(result.lhr), + }); + + return result; + } + + /** + * @param {StepOptions=} stepOptions + */ + async startTimespan(stepOptions) { + if (this.currentTimespan) throw Error('Timespan already in progress'); + + const options = {...this.options, ...stepOptions}; + const timespan = await startTimespan(options); + this.currentTimespan = {timespan, options}; + } + + async endTimespan() { + if (!this.currentTimespan) throw Error('No timespan in progress'); + + const {timespan, options} = this.currentTimespan; + const result = await timespan.endTimespan(); + this.currentTimespan = undefined; + if (!result) throw Error('Timespan returned undefined'); + + const providedName = options && options.stepName; + this.steps.push({ + lhr: result.lhr, + name: providedName || this._getDefaultStepName(result.lhr), + }); + + return result; + } + + /** + * @param {StepOptions=} stepOptions + */ + async snapshot(stepOptions) { + if (this.currentTimespan) throw Error('Timespan already in progress'); + + const options = {...this.options, ...stepOptions}; + const result = await snapshot(options); + if (!result) throw Error('Snapshot returned undefined'); + + const providedName = stepOptions && stepOptions.stepName; + this.steps.push({ + lhr: result.lhr, + name: providedName || this._getDefaultStepName(result.lhr), + }); + + return result; + } + + /** + * @return {LH.FlowResult} + */ + getFlowResult() { + return {steps: this.steps}; + } + + /** + * @return {string} + */ + generateReport() { + const flowResult = this.getFlowResult(); + return generateFlowReportHtml(flowResult); + } +} + +module.exports = UserFlow; diff --git a/lighthouse-core/scripts/update-flow-fixtures.js b/lighthouse-core/scripts/update-flow-fixtures.js index 1db469167981..706bdd5c2118 100644 --- a/lighthouse-core/scripts/update-flow-fixtures.js +++ b/lighthouse-core/scripts/update-flow-fixtures.js @@ -8,52 +8,37 @@ const fs = require('fs'); const open = require('open'); const puppeteer = require('puppeteer'); -const lighthouse = require('../fraggle-rock/api.js'); -const reportGenerator = require('../../report/generator/report-generator.js'); +const UserFlow = require('../fraggle-rock/user-flow.js'); (async () => { - const browser = await puppeteer.launch({headless: false, slowMo: 50}); + const browser = await puppeteer.launch({headless: false}); try { const page = await browser.newPage(); - const navigationResult1 = await lighthouse.navigation({ - url: 'https://www.mikescerealshack.co', - page, - }); + const flow = new UserFlow(page); - const timespan = await lighthouse.startTimespan({page}); + await flow.navigate('https://www.mikescerealshack.co'); + + await flow.startTimespan({stepName: 'Search input'}); await page.type('input', 'call of duty'); const networkQuietPromise = page.waitForNavigation({waitUntil: ['networkidle0']}); await page.click('button[type=submit]'); await networkQuietPromise; - const timespanResult = await timespan.endTimespan(); - - const snapshotResult = await lighthouse.snapshot({page}); + await flow.endTimespan(); - const navigationResult2 = await lighthouse.navigation({ - url: 'https://www.mikescerealshack.co/corrections', - page, - }); + await flow.snapshot({stepName: 'Search results'}); - if ( - !navigationResult1 || - !navigationResult2 || - !timespanResult || - !snapshotResult - ) throw new Error('No results'); + await flow.navigate('https://www.mikescerealshack.co/corrections'); - const flow = { - lhrs: [navigationResult1.lhr, timespanResult.lhr, snapshotResult.lhr, navigationResult2.lhr], - }; + const flowResult = flow.getFlowResult(); + const report = flow.generateReport(); fs.writeFileSync( `${__dirname}/../test/fixtures/fraggle-rock/reports/sample-lhrs.json`, - JSON.stringify(flow, null, 2) + JSON.stringify(flowResult, null, 2) ); - const htmlReport = reportGenerator.generateFlowReportHtml(flow); - - fs.writeFileSync(`${__dirname}/../../flow.report.html`, htmlReport); + fs.writeFileSync(`${__dirname}/../../flow.report.html`, report); open(`${__dirname}/../../flow.report.html`); process.exit(0); diff --git a/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-lhrs.json b/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-lhrs.json index 36adf92368a7..7056a262ca2e 100644 --- a/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-lhrs.json +++ b/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-lhrs.json @@ -1,22471 +1,22138 @@ { - "lhrs": [ + "steps": [ { - "gatherMode": "navigation", - "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4469.0 Safari/537.36", - "environment": { - "networkUserAgent": "", - "hostUserAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4469.0 Safari/537.36", - "benchmarkIndex": 1716, - "credits": { - "axe-core": "4.2.3" - } - }, - "lighthouseVersion": "8.3.0", - "fetchTime": "2021-08-26T19:23:27.529Z", - "requestedUrl": "https://www.mikescerealshack.co/", - "finalUrl": "https://www.mikescerealshack.co/", - "runWarnings": [], - "audits": { - "is-on-https": { - "id": "is-on-https", - "title": "Uses HTTPS", - "description": "All sites should be protected with HTTPS, even ones that don't handle sensitive data. This includes avoiding [mixed content](https://developers.google.com/web/fundamentals/security/prevent-mixed-content/what-is-mixed-content), where some resources are loaded over HTTP despite the initial request being served over HTTPS. HTTPS prevents intruders from tampering with or passively listening in on the communications between your app and your users, and is a prerequisite for HTTP/2 and many new web platform APIs. [Learn more](https://web.dev/is-on-https/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "service-worker": { - "id": "service-worker", - "title": "Does not register a service worker that controls page and `start_url`", - "description": "The service worker is the technology that enables your app to use many Progressive Web App features, such as offline, add to homescreen, and push notifications. [Learn more](https://web.dev/service-worker/).", - "score": 0, - "scoreDisplayMode": "binary" - }, - "viewport": { - "id": "viewport", - "title": "Has a `` tag with `width` or `initial-scale`", - "description": "Add a `` tag to optimize your app for mobile screens. [Learn more](https://web.dev/viewport/).", - "score": 1, - "scoreDisplayMode": "binary", - "warnings": [] - }, - "first-contentful-paint": { - "id": "first-contentful-paint", - "title": "First Contentful Paint", - "description": "First Contentful Paint marks the time at which the first text or image is painted. [Learn more](https://web.dev/first-contentful-paint/).", - "score": 0.97, - "scoreDisplayMode": "numeric", - "numericValue": 1411.9320000000002, - "numericUnit": "millisecond", - "displayValue": "1.4 s" - }, - "largest-contentful-paint": { - "id": "largest-contentful-paint", - "title": "Largest Contentful Paint", - "description": "Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more](https://web.dev/lighthouse-largest-contentful-paint/)", - "score": 0.93, - "scoreDisplayMode": "numeric", - "numericValue": 2333.616, - "numericUnit": "millisecond", - "displayValue": "2.3 s" - }, - "first-meaningful-paint": { - "id": "first-meaningful-paint", - "title": "First Meaningful Paint", - "description": "First Meaningful Paint measures when the primary content of a page is visible. [Learn more](https://web.dev/first-meaningful-paint/).", - "score": 0.99, - "scoreDisplayMode": "numeric", - "numericValue": 1411.9320000000002, - "numericUnit": "millisecond", - "displayValue": "1.4 s" - }, - "speed-index": { - "id": "speed-index", - "title": "Speed Index", - "description": "Speed Index shows how quickly the contents of a page are visibly populated. [Learn more](https://web.dev/speed-index/).", - "score": 1, - "scoreDisplayMode": "numeric", - "numericValue": 1679.2807200018947, - "numericUnit": "millisecond", - "displayValue": "1.7 s" - }, - "screenshot-thumbnails": { - "id": "screenshot-thumbnails", - "title": "Screenshot Thumbnails", - "description": "This is what the load of your site looked like.", - "score": null, - "scoreDisplayMode": "informative", - "details": { - "type": "filmstrip", - "scale": 3000, - "items": [ - { - "timing": 300, - "timestamp": 121805065196, - "data": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRQBAwQEBQQFCQUFCRQNCw0UFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFP/AABEIAHoAeAMBEQACEQEDEQH/xAGiAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+gEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoLEQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/AP1ToAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgD/9k=" - }, - { - "timing": 600, - "timestamp": 121805365196, - "data": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRQBAwQEBQQFCQUFCRQNCw0UFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFP/AABEIAHoAeAMBEQACEQEDEQH/xAGiAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+gEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoLEQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/AP1ToAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgD/9k=" - }, - { - "timing": 900, - "timestamp": 121805665196, - "data": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRQBAwQEBQQFCQUFCRQNCw0UFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFP/AABEIAHYAeAMBEQACEQEDEQH/xAGiAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+gEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoLEQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APjj7b4YPhFZPt14PE5vceQUjFn9j8vIbfu3+bv427du3nOeK+s9qubdWPzf6vPktyPm/AyP7Rtf+fmH/vsVfPHuZfVsR/z7f3MP7Rtf+fmH/vsUc8e4fVsR/wA+39zA6ja4/wCPmH/vsUc8O4/q1f8Akf3MT4k3ug3+uLJ4aS4h0ny08uG7dXljbyo94ZgSHO/f84CB/vCOMHy146krxV3dntYOHI5e60rLfv1OTrnPSCgAoAKACgAoAKACgAoAKAN/wTZ6JqOupaa/dR6fYzKB9tmnlijgIdWJbyredzuRZIwFjOGkRjwhBTGrdTv9H8LfDTT7s2mp+KdF1a1WJZbi+t7vVYZJmDMPLtM6YRG5wpbz0kUjAV1JJE6l+6YN5B4A12aKSAzeGZLy5kgaMX811b2IZo2ScqbTzPIQGRCoeWVvvYGwLK9Re6zY0rwh8M4dLmvdR8X2d5PBDK/9mW15f289xJhHjSNzpUkYwN8Z3lQzsDlETc694fuo8oJySQMD09KszEoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAsacltNf26XkskNo0irNLCgkdEyNxVSQGIHIBIz0yOtK6RSi30N7UtM8IpdTLpmv6vdwLbzOkl7o8dsWlVQY0wtzJ8r8gt1U4+Vu08xXJ/VhtlYeEZHUXet61APNUEw6PDJ8nmKGbm6XkIWYDuQBkAlgcwcjH6/p3g22tZv7E1/XNQvF2FE1DQ4bSNx/F86XcpBHb5ee+KakJxZzHfHenuS1bcKYgoAKACgAoAKACgAoAKACgD9B/2Gf24/ht+z/8AAyXwl4rfXINWOq3F0r6fZrKnlukYUglvUNwR2+lcdSlKU24noUq0IQ5Wz3r/AIejfBcRKv8AbPjHcN2W/sqDJyxIP4A4HsBnJyTl7Cp2NvrNMfP/AMFSPgtKbvbq3i+HzkCx7NKhP2c5Y7kznJOR9/cPkXj72T2E+wfWafc0P+HrnwN9fEn/AILB/wDHKn6vPsH1mn3Pzf8A20/jL4f+PX7QOteL/DAu/wCxrm2tYYmvYhFIxSFVb5QTgZBHPpXbSi4xszgrTVSV0eF1sYBQAUAFABQAUAFABQAUAFAHpn7Nvj3wp8MvjT4e8R+N9Hk1/wALWi3S3mnw2kN08nmW0scZEUxEbbZHRvmPG3PJAFZ1IuUbI1pSUJXZ9f6l+2p+zxfQpHB4Fu9MOCrPZ/D/AEM8fLgqJLhwGAUjkEYkk4zsKcXsKh3fWKfYx/ht+2B+zt4Yl8ff2v8ADC6mXV/E82qaQYvDOl3H2WxaO3CwFZJQE+eKbKJkASZBBJxpKjNpWfQzhWpxvddSl4q/aw+A2q/DrxNpFv4U1O71q90O40+ynl8EaFZRrdvatDHcM8LmRG8wrKSnRi+1Qu1FUaM002OdeEotJHwzXceeFABQAUAFABQAUAFABQAUAFABQA5MO23IBxn5m2gfiePwoGiaVYRsWMFnOdxLrjpx3/n/AE5B2IpVVXIU5XqDuB/UcUCYygQUAFABQAUAFABQAUAFABQAUAFABQAYoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA/wD/2Q==" - }, - { - "timing": 1200, - "timestamp": 121805965196, - "data": "data:image/jpeg;base64,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" - }, - { - "timing": 1500, - "timestamp": 121806265196, - "data": "data:image/jpeg;base64,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" - }, - { - "timing": 1800, - "timestamp": 121806565196, - "data": "data:image/jpeg;base64,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" - }, - { - "timing": 2100, - "timestamp": 121806865196, - "data": "data:image/jpeg;base64,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" - }, - { - "timing": 2400, - "timestamp": 121807165196, - "data": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRQBAwQEBQQFCQUFCRQNCw0UFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFP/AABEIAHYAeAMBEQACEQEDEQH/xAGiAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+gEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoLEQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APjj7b4YPhFZPt14PE5vceQUjFn9j8vIbfu3+bv427du3nOeK+s9qubdWPzf6vPktyPm/AyP7Rtf+fmH/vsVfPHuZfVsR/z7f3MP7Rtf+fmH/vsUc8e4fVsR/wA+39zA6ja4/wCPmH/vsUc8O4/q1f8Akf3MT4k3ug3+uLJ4aS4h0ny08uG7dXljbyo94ZgSHO/f84CB/vCOMHy146krxV3dntYOHI5e60rLfv1OTrnPSCgAoAKACgAoAKACgAoAKAN/wTZ6JqOupaa/dR6fYzKB9tmnlijgIdWJbyredzuRZIwFjOGkRjwhBTGrdTv9H8LfDTT7s2mp+KdF1a1WJZbi+t7vVYZJmDMPLtM6YRG5wpbz0kUjAV1JJE6l+6YN5B4A12aKSAzeGZLy5kgaMX811b2IZo2ScqbTzPIQGRCoeWVvvYGwLK9Re6zY0rwh8M4dLmvdR8X2d5PBDK/9mW15f289xJhHjSNzpUkYwN8Z3lQzsDlETc694fuo8oJySQMD09KszEoAKACgAoAKACgAoAKACgAoA6z4X/C/xB8YPF9v4c8N2q3F9JG88ssz7IbaCNd0s0rc4RVBJwCTwFDMQDMpKKuy4Rc3yxOj8N/BJL3Wda0fxH4t0PwhqmnymCNb+7ikt7mQW80uFuI3Me0MkKF8lf3wwSwVHIyUldHFXryo1Y0fZuV03dapWaXq27uySbdnoUdb+FNnoerCwPjbw1qBmnW0hudP1COWCOZnTBnYsNkXlsWMsYlUMAhO7dtuxnSxXtYOahJWV2nGSdtdtNXpstWne2qv59nPTkUjuCgAoAKACgAoAKACgAoAKACgAoA+kf2BPHWjfD74/wBlqOqzmCWW2e2tB5pjWWRmX93kEAswB2hjgkAYJKil7ONVODdu3r/Vzw81x2LyyNPGYaHPGMvfit3H/gPX1tfS56f+3L4D+FOk6ZpWu6RcQ6Nr0skx/s23Ek9xdpkmLzt+w7uiySB3CiPOXdxvmnTq04ctZbWtr0KwuZ4HMq8KuXSbhJPm3upaNN3as2272vffoeIaPrll8VtG8Xanqs3g7w5rn2u1gsvtsDFyt2UtpjEZbjCxQRxBwCkghDkxeThSum5jUjPASpxjzzi73t05VOS0jD7V+V7Xslq271X8Gt498QXenXx+H3gPz5Zb641S01mLyQ7CUxw+Wt1IqR7+NsSAou0kEBQSw1iI06ftEqk5Kys4yv8AYT+yruzvd6NqSW2njcqCKV0DrKFYqJEztbHcZAOD70j3+iYygAoAKACgAoAKACgAoAKACgC/oNvpl3qkMesXtzp+mnd51xZ2q3Mq4UkBY2kjBycDlxgHPOMFXsUk2bo0XwbLBqJj8S6vHcRZFotzosapMAufnZbpjGSRtXAcEsu4oNxE8w+TshsemeDS8/m67rkarcqkSro8DGSAsuZSftfyuELny/mBZVG8BiVOYfIRmx8H/YLpj4g1xtQWNjFD/YkXkyS44Bk+15VScgsEbHXBzgHMLkZzNVuS1bcKYgoAKACgAoAKACgAoAKACgD9B/2GP24/ht+z/wDAyXwl4rfXINWOq3F0r6fZrKnlukYUglvUNwR2+lcdSlOU24noUq0IQ5Wz3r/h6N8FxEq/2z4x3Ddlv7KgycsSD+AOB7AZyck5ewqdjb6zTHz/APBUj4LSm726t4vh85AsezSoT9nOWJZM5yTuH39w+RePvZPYT7B9Zp9zQ/4eufA318Sf+Csf/HKj6vPsCxNM/N/9tP4y+H/j1+0DrXi/wwLv+xrm2tYYmvYhFIxSFVb5QTgZBHPpXdSi4xszgrTVSV0eF1sYBQAUAFABQAUAFABQAUAFAHpv7Nnj3wl8MPjX4c8T+OdBbxN4WsPtJu9LS0hujMXtpY4/3UzKjbZHRuSMbcjkCs6kXKLS3NKclGSbPrKL9s/4D/2W0EngtRe+eXW8g+G2jqVjJY7NrXrDIG1Qx7BsglgV4vYVDv8ArFPscV4A/aa+CeiHxlHqvhnUrS31XxVqur2P2Dwjo17LBYzmE2sAa7ZlhMXlyDy0VkxJwe40nRnK1jOFanG911NbX/2rvgbqnwp8V+H5vCNxrOv3+gyWOn6jL4F0fTvKvzEwF0zwTsV+dgRsX5FRcbmBZlCjOMk2xzr05RaSPh+u488KACgAoAKACgAoAKACgAoAKACgCxGkRwWyVJAzvCkH8f8AIoK0BkiYjyz6/wCscD6cf5/CgLELLtC5yG7jjFAmNoEFABQAUAFABQAUAFABQAUAFABQAUAGKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAP//Z" - }, - { - "timing": 2700, - "timestamp": 121807465196, - "data": "data:image/jpeg;base64,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" - }, - { - "timing": 3000, - "timestamp": 121807765196, - "data": "data:image/jpeg;base64,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" - } - ] - } - }, - "final-screenshot": { - "id": "final-screenshot", - "title": "Final Screenshot", - "description": "The last screenshot captured of the pageload.", - "score": null, - "scoreDisplayMode": "informative", - "details": { - "type": "screenshot", - "timing": 1029, - "timestamp": 121805794681, - "data": "data:image/jpeg;base64,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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/9k=" - } - }, - "total-blocking-time": { - "id": "total-blocking-time", - "title": "Total Blocking Time", - "description": "Sum of all time periods between FCP and Time to Interactive, when task length exceeded 50ms, expressed in milliseconds. [Learn more](https://web.dev/lighthouse-total-blocking-time/).", - "score": 1, - "scoreDisplayMode": "numeric", - "numericValue": 42, - "numericUnit": "millisecond", - "displayValue": "40 ms" - }, - "max-potential-fid": { - "id": "max-potential-fid", - "title": "Max Potential First Input Delay", - "description": "The maximum potential First Input Delay that your users could experience is the duration of the longest task. [Learn more](https://web.dev/lighthouse-max-potential-fid/).", - "score": 0.98, - "scoreDisplayMode": "numeric", - "numericValue": 86, - "numericUnit": "millisecond", - "displayValue": "90 ms" - }, - "cumulative-layout-shift": { - "id": "cumulative-layout-shift", - "title": "Cumulative Layout Shift", - "description": "Cumulative Layout Shift measures the movement of visible elements within the viewport. [Learn more](https://web.dev/cls/).", - "score": 1, - "scoreDisplayMode": "numeric", - "numericValue": 0.0026205596923828123, - "numericUnit": "unitless", - "displayValue": "0.003", - "details": { - "type": "debugdata", - "items": [ - { - "cumulativeLayoutShiftMainFrame": 0.0026205596923828123, - "totalCumulativeLayoutShift": 0.0026205596923828123 - } - ] - } - }, - "errors-in-console": { - "id": "errors-in-console", - "title": "No browser errors logged to the console", - "description": "Errors logged to the console indicate unresolved problems. They can come from network request failures and other browser concerns. [Learn more](https://web.dev/errors-in-console/)", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "server-response-time": { - "id": "server-response-time", - "title": "Initial server response time was short", - "description": "Keep the server response time for the main document short because all other requests depend on it. [Learn more](https://web.dev/time-to-first-byte/).", - "score": 1, - "scoreDisplayMode": "binary", - "numericValue": 41.55800000000005, - "numericUnit": "millisecond", - "displayValue": "Root document took 40 ms", - "details": { - "type": "opportunity", - "headings": [ - { - "key": "url", - "valueType": "url", - "label": "URL" - }, - { - "key": "responseTime", - "valueType": "timespanMs", - "label": "Time Spent" - } - ], - "items": [ - { - "url": "https://www.mikescerealshack.co/", - "responseTime": 41.55800000000005 - } - ], - "overallSavingsMs": -58.44199999999995 - } - }, - "interactive": { - "id": "interactive", - "title": "Time to Interactive", - "description": "Time to interactive is the amount of time it takes for the page to become fully interactive. [Learn more](https://web.dev/interactive/).", - "score": 0.99, - "scoreDisplayMode": "numeric", - "numericValue": 2027.5810000000001, - "numericUnit": "millisecond", - "displayValue": "2.0 s" - }, - "user-timings": { - "id": "user-timings", - "title": "User Timing marks and measures", - "description": "Consider instrumenting your app with the User Timing API to measure your app's real-world performance during key user experiences. [Learn more](https://web.dev/user-timings/).", - "score": null, - "scoreDisplayMode": "informative", - "displayValue": "4 user timings", - "details": { - "type": "table", - "headings": [ - { - "key": "name", - "itemType": "text", - "text": "Name" - }, - { - "key": "timingType", - "itemType": "text", - "text": "Type" - }, - { - "key": "startTime", - "itemType": "ms", - "granularity": 0.01, - "text": "Start Time" - }, - { - "key": "duration", - "itemType": "ms", - "granularity": 0.01, - "text": "Duration" - } - ], - "items": [ - { - "name": "Next.js-before-hydration", - "startTime": 0, - "duration": 715.62, - "timingType": "Measure" - }, - { - "name": "Next.js-hydration", - "startTime": 715.62, - "duration": 12.017, - "timingType": "Measure" - }, - { - "name": "beforeRender", - "startTime": 715.637, - "timingType": "Mark" - }, - { - "name": "afterHydrate", - "startTime": 727.648, - "timingType": "Mark" - } - ] - } - }, - "critical-request-chains": { - "id": "critical-request-chains", - "title": "Avoid chaining critical requests", - "description": "The Critical Request Chains below show you what resources are loaded with a high priority. Consider reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load. [Learn more](https://web.dev/critical-request-chains/).", - "score": null, - "scoreDisplayMode": "notApplicable", - "displayValue": "", - "details": { - "type": "criticalrequestchain", - "chains": { - "86CE0257147E2C95A023EE7493070A28": { - "request": { - "url": "https://www.mikescerealshack.co/", - "startTime": 121804.769144, - "endTime": 121805.293867, - "responseReceivedTime": 121805.286882, - "transferSize": 3550 + "lhr": { + "gatherMode": "navigation", + "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.0 Safari/537.36", + "environment": { + "networkUserAgent": "", + "hostUserAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.0 Safari/537.36", + "benchmarkIndex": 1929, + "credits": { + "axe-core": "4.2.3" + } + }, + "lighthouseVersion": "8.4.0", + "fetchTime": "2021-09-14T22:24:22.462Z", + "requestedUrl": "https://www.mikescerealshack.co/", + "finalUrl": "https://www.mikescerealshack.co/", + "runWarnings": [], + "audits": { + "is-on-https": { + "id": "is-on-https", + "title": "Uses HTTPS", + "description": "All sites should be protected with HTTPS, even ones that don't handle sensitive data. This includes avoiding [mixed content](https://developers.google.com/web/fundamentals/security/prevent-mixed-content/what-is-mixed-content), where some resources are loaded over HTTP despite the initial request being served over HTTPS. HTTPS prevents intruders from tampering with or passively listening in on the communications between your app and your users, and is a prerequisite for HTTP/2 and many new web platform APIs. [Learn more](https://web.dev/is-on-https/).", + "score": 1, + "scoreDisplayMode": "binary", + "details": { + "type": "table", + "headings": [], + "items": [] + } + }, + "service-worker": { + "id": "service-worker", + "title": "Does not register a service worker that controls page and `start_url`", + "description": "The service worker is the technology that enables your app to use many Progressive Web App features, such as offline, add to homescreen, and push notifications. [Learn more](https://web.dev/service-worker/).", + "score": 0, + "scoreDisplayMode": "binary" + }, + "viewport": { + "id": "viewport", + "title": "Has a `` tag with `width` or `initial-scale`", + "description": "A `` not only optimizes your app for mobile screen sizes, but also prevents [a 300 millisecond delay to user input](https://developers.google.com/web/updates/2013/12/300ms-tap-delay-gone-away). [Learn more](https://web.dev/viewport/).", + "score": 1, + "scoreDisplayMode": "binary", + "warnings": [] + }, + "first-contentful-paint": { + "id": "first-contentful-paint", + "title": "First Contentful Paint", + "description": "First Contentful Paint marks the time at which the first text or image is painted. [Learn more](https://web.dev/first-contentful-paint/).", + "score": 0.98, + "scoreDisplayMode": "numeric", + "numericValue": 1323.2420000000004, + "numericUnit": "millisecond", + "displayValue": "1.3 s" + }, + "largest-contentful-paint": { + "id": "largest-contentful-paint", + "title": "Largest Contentful Paint", + "description": "Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more](https://web.dev/lighthouse-largest-contentful-paint/)", + "score": 0.79, + "scoreDisplayMode": "numeric", + "numericValue": 2969.3620000000005, + "numericUnit": "millisecond", + "displayValue": "3.0 s" + }, + "first-meaningful-paint": { + "id": "first-meaningful-paint", + "title": "First Meaningful Paint", + "description": "First Meaningful Paint measures when the primary content of a page is visible. [Learn more](https://web.dev/first-meaningful-paint/).", + "score": 1, + "scoreDisplayMode": "numeric", + "numericValue": 1323.2420000000004, + "numericUnit": "millisecond", + "displayValue": "1.3 s" + }, + "speed-index": { + "id": "speed-index", + "title": "Speed Index", + "description": "Speed Index shows how quickly the contents of a page are visibly populated. [Learn more](https://web.dev/speed-index/).", + "score": 1, + "scoreDisplayMode": "numeric", + "numericValue": 1323.2420000000004, + "numericUnit": "millisecond", + "displayValue": "1.3 s" + }, + "screenshot-thumbnails": { + "id": "screenshot-thumbnails", + "title": "Screenshot Thumbnails", + "description": "This is what the load of your site looked like.", + "score": null, + "scoreDisplayMode": "informative", + "details": { + "type": "filmstrip", + "scale": 3000, + "items": [ + { + "timing": 300, + "timestamp": 56836623734, + "data": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRQBAwQEBQQFCQUFCRQNCw0UFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFP/AABEIAHoAeAMBEQACEQEDEQH/xAGiAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+gEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoLEQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/AP1ToAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgD/9k=" + }, + { + "timing": 600, + "timestamp": 56836923734, + "data": "data:image/jpeg;base64,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" + }, + { + "timing": 900, + "timestamp": 56837223734, + "data": "data:image/jpeg;base64,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" + }, + { + "timing": 1200, + "timestamp": 56837523734, + "data": "data:image/jpeg;base64,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" + }, + { + "timing": 1500, + "timestamp": 56837823734, + "data": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRQBAwQEBQQFCQUFCRQNCw0UFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFP/AABEIAHYAeAMBEQACEQEDEQH/xAGiAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+gEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoLEQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APjj7b4YPhFZPt14PE5vceSUjFn9j8vIbfu3+bv427du3nOeK+s9oubdWPzf6vPktyPm/AyP7Rtf+fmH/vsVfPHuZfVsR/z7f3MP7Rtf+fmH/vsUc8e4fVsR/wA+39zA6ja4/wCPmH/vsUc8O4/q1f8Akf3MT4k3ug3+uLJ4aS4h0ny08uG7dXljbyo94ZgSHO/f84CB/vCOMHy146krxV3dntYOHI5e60rLfv1OTrnPSCgAoAKACgAoAKACgAoAKAN/wTZ6JqOupaa/dR6fYzKB9tmnlijgIdWJbyredzuRZIwFjOGkRjwhBTGrdTv9H8LfDTT7s2mp+KdF1a1WJZbi+t7vVYZJmDMPLtM6YRG5wpbz0kUjAV1JJE6l+6YN5B4A12aKSAzeGZLy5kgaMX811b2IZo2ScqbTzPIQGRCoeWVvvYGwLK9Re6zY0rwh8M4dLmvdR8X2d5PBDK/9mW15f289xJhHjSNzpUkYwN8Z3lQzsDlETc694fuo8oJySQMD09KszEoAKACgAoAKACgAoAKACgAoA6v4Y/DDxB8X/F9v4c8N2qXF9JHJcSyTPshtoI13SzStg4RFBJwCTwqhmIBmUlFXZcIub5YnR+G/got7retaL4j8VaL4Q1XT5TBGt/dRSW9zILeWXC3EblNu5IV35K4m4JYKjkWpK6OKtWlRqxo+zlJtN3SulZpa9b6uySb0ehR1j4U22i6pFYv4z8OXzXFwlnDcaffJLBFMzrj7QxK7IhGzOZoxKgYBCck7bsZ0sV7WDkoNWV2nGS01201d1stWtbWav5/0JHHHoc0juCgAoAKACgAoAKACgAoAKACgAoA+kf2A/Hmj/D39oGx1HVZ2gllt3trQeaY1lkZlBjyMAsRnaGOCRjBJUUnTjVTg3bt6/wBXPDzXHYvLI08Zhoc8Iy9+K3cfL0evra+lz1D9uTwH8KdL0vStc0i5h0XXpJJs6fbh7i4vE6w+dv2Hdj5ZJQ7hRHnLu4LxSp1acOWstrW16FYXM8DmVeFTLZN05J8ySektHf3mkm23e2+r6HiWg67p3xU0nxVqWrS+D/DWufbrOGz+2QOztHd7LaYRtNcFUhgjiVgCjiEMTH5OAV1MKkZ4B04x55xd07dOVTktIw+03yva+mjbfNTk8JN461290+7PgDwEs7zXd1qen61GYHY72jhMS3cipH5igbYowUGGKnCgqxaxEaVP2tqk2rJJxfN0X8qu9bt979nbxy6iW3uZoklSdEcqssedrgH7wyAcHryAfag95apMioAKACgAoAKACgAoAKACgAoAv6Db6Zd6pDHrF7c6fpp3edcWdqtzKuFJAWNpIwcnA5cYBzzjBV7FJNm6NF8Gy2+omPxLq8dxET9kW50WNUnAXPzst0xQkjauA4JZdxQbiJ5h8nZDY9M8Gl5/N13XI1W5VIlXR4GMkBZcyk/a/lcIXPl/MCyqN4DEqcw+Qj+w+DvsFyT4g1xtQSNjFCNDi8mSXHyqZPteVUnILBGxjODnAOYXIzmarclq24UxBQAUAFABQAUAFABQAUAFAH6D/sMftx/Db9n/AOBkvhLxW+uQasdVuLpX0+zWVPLdIwpBLeobgjt9K46lKcptxPQpVoQhytnvX/D0b4LiJV/tnxjuG7Lf2VBk5YkH8AcD2Azk5Jy9hU7G31mmPn/4KkfBaU3e3VvF8PnIFj2aVCfs5yxLJnOSdw+/uHyLx97J7CfYPrNPuaH/AA9c+Bvr4k/8FY/+OVH1efYFiaZ+b/7afxl8P/Hr9oHWvF/hgXf9jXNtawxNexCKRikKq3ygnAyCOfSu6lFxjZnBWmqkro8LrYwCgAoAKACgAoAKACgAoAKAPTf2bPHvhL4YfGvw54n8c6C3ibwtYfaTd6WlpDdGYvbSxx/upmVG2yOjckY25HIFZ1IuUWluaU5KMk2fWUX7Z/wH/stoJPBai988ut5B8NtHUrGSx2bWvWGQNqhj2DZBLArxewqHf9Yp9jivAH7TXwT0Q+Mo9V8M6laW+q+KtV1ex+weEdGvZYLGcwm1gDXbMsJi8uQeWismJOD3Gk6M5WsZwrU43uupra/+1d8DdU+FPivw/N4RuNZ1+/0GSx0/UZfAuj6d5V+YmAumeCdivzsCNi/IqLjcwLMoUZxkm2OdenKLSR8P13HnhQAUAFABQAUAFABQAUAFABQAUAWI0iOC2SpIGd4Ug/j/AJFBWgMkTEeWfX/WOB9OP8/hQFiFl2hc5DdxxigTG0CCgAoAKACgAoAKACgAoAKACgAoAKADFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAH//Z" + }, + { + "timing": 1800, + "timestamp": 56838123734, + "data": "data:image/jpeg;base64,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" + }, + { + "timing": 2100, + "timestamp": 56838423734, + "data": "data:image/jpeg;base64,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" + }, + { + "timing": 2400, + "timestamp": 56838723734, + "data": "data:image/jpeg;base64,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" + }, + { + "timing": 2700, + "timestamp": 56839023734, + "data": "data:image/jpeg;base64,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" + }, + { + "timing": 3000, + "timestamp": 56839323734, + "data": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRQBAwQEBQQFCQUFCRQNCw0UFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFP/AABEIAHYAeAMBEQACEQEDEQH/xAGiAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgsQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+gEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoLEQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APjj7b4YPhFZPt14PE5vceSUjFn9j8vIbfu3+bv427du3nOeK+s9oubdWPzf6vPktyPm/AyP7Rtf+fmH/vsVfPHuZfVsR/z7f3MP7Rtf+fmH/vsUc8e4fVsR/wA+39zA6ja4/wCPmH/vsUc8O4/q1f8Akf3MT4k3ug3+uLJ4aS4h0ny08uG7dXljbyo94ZgSHO/f84CB/vCOMHy146krxV3dntYOHI5e60rLfv1OTrnPSCgAoAKACgAoAKACgAoAKAN/wTZ6JqOupaa/dR6fYzKB9tmnlijgIdWJbyredzuRZIwFjOGkRjwhBTGrdTv9H8LfDTT7s2mp+KdF1a1WJZbi+t7vVYZJmDMPLtM6YRG5wpbz0kUjAV1JJE6l+6YN5B4A12aKSAzeGZLy5kgaMX811b2IZo2ScqbTzPIQGRCoeWVvvYGwLK9Re6zY0rwh8M4dLmvdR8X2d5PBDK/9mW15f289xJhHjSNzpUkYwN8Z3lQzsDlETc694fuo8oJySQMD09KszEoAKACgAoAKACgAoAKACgAoA6v4Y/DDxB8X/F9v4c8N2qXF9JHJcSyTPshtoI13SzStg4RFBJwCTwqhmIBmUlFXZcIub5YnR+G/got7retaL4j8VaL4Q1XT5TBGt/dRSW9zILeWXC3EblNu5IV35K4m4JYKjkWpK6OKtWlRqxo+zlJtN3SulZpa9b6uySb0ehR1j4U22i6pFYv4z8OXzXFwlnDcaffJLBFMzrj7QxK7IhGzOZoxKgYBCck7bsZ0sV7WDkoNWV2nGS01201d1stWtbWav5/0JHHHoc0juCgAoAKACgAoAKACgAoAKACgAoA+kf2A/Hmj/D39oGx1HVZ2gllt3trQeaY1lkZlBjyMAsRnaGOCRjBJUUnTjVTg3bt6/wBXPDzXHYvLI08Zhoc8Iy9+K3cfL0evra+lz1D9uTwH8KdL0vStc0i5h0XXpJJs6fbh7i4vE6w+dv2Hdj5ZJQ7hRHnLu4LxSp1acOWstrW16FYXM8DmVeFTLZN05J8ySektHf3mkm23e2+r6HiWg67p3xU0nxVqWrS+D/DWufbrOGz+2QOztHd7LaYRtNcFUhgjiVgCjiEMTH5OAV1MKkZ4B04x55xd07dOVTktIw+03yva+mjbfNTk8JN461290+7PgDwEs7zXd1qen61GYHY72jhMS3cipH5igbYowUGGKnCgqxaxEaVP2tqk2rJJxfN0X8qu9bt979nbxy6iW3uZoklSdEcqssedrgH7wyAcHryAfag95apMioAKACgAoAKACgAoAKACgAoAv6Db6Zd6pDHrF7c6fpp3edcWdqtzKuFJAWNpIwcnA5cYBzzjBV7FJNm6NF8Gy2+omPxLq8dxET9kW50WNUnAXPzst0xQkjauA4JZdxQbiJ5h8nZDY9M8Gl5/N13XI1W5VIlXR4GMkBZcyk/a/lcIXPl/MCyqN4DEqcw+Qj+w+DvsFyT4g1xtQSNjFCNDi8mSXHyqZPteVUnILBGxjODnAOYXIzmarclq24UxBQAUAFABQAUAFABQAUAFAH6D/sMftx/Db9n/AOBkvhLxW+uQasdVuLpX0+zWVPLdIwpBLeobgjt9K46lKcptxPQpVoQhytnvX/D0b4LiJV/tnxjuG7Lf2VBk5YkH8AcD2Azk5Jy9hU7G31mmPn/4KkfBaU3e3VvF8PnIFj2aVCfs5yxLJnOSdw+/uHyLx97J7CfYPrNPuaH/AA9c+Bvr4k/8FY/+OVH1efYFiaZ+b/7afxl8P/Hr9oHWvF/hgXf9jXNtawxNexCKRikKq3ygnAyCOfSu6lFxjZnBWmqkro8LrYwCgAoAKACgAoAKACgAoAKAPTf2bPHvhL4YfGvw54n8c6C3ibwtYfaTd6WlpDdGYvbSxx/upmVG2yOjckY25HIFZ1IuUWluaU5KMk2fWUX7Z/wH/stoJPBai988ut5B8NtHUrGSx2bWvWGQNqhj2DZBLArxewqHf9Yp9jivAH7TXwT0Q+Mo9V8M6laW+q+KtV1ex+weEdGvZYLGcwm1gDXbMsJi8uQeWismJOD3Gk6M5WsZwrU43uupra/+1d8DdU+FPivw/N4RuNZ1+/0GSx0/UZfAuj6d5V+YmAumeCdivzsCNi/IqLjcwLMoUZxkm2OdenKLSR8P13HnhQAUAFABQAUAFABQAUAFABQAUAWI0iOC2SpIGd4Ug/j/AJFBWgMkTEeWfX/WOB9OP8/hQFiFl2hc5DdxxigTG0CCgAoAKACgAoAKACgAoAKACgAoAKADFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFABQAUAFAH//Z" } - } - }, - "longestChain": { - "duration": 524.7229999949923, - "length": 1, - "transferSize": 3550 + ] } - } - }, - "redirects": { - "id": "redirects", - "title": "Avoid multiple page redirects", - "description": "Redirects introduce additional delays before the page can be loaded. [Learn more](https://web.dev/redirects/).", - "score": 1, - "scoreDisplayMode": "numeric", - "numericValue": 0, - "numericUnit": "millisecond", - "displayValue": "", - "details": { - "type": "opportunity", - "headings": [], - "items": [], - "overallSavingsMs": 0 - } - }, - "installable-manifest": { - "id": "installable-manifest", - "title": "Web app manifest or service worker do not meet the installability requirements", - "description": "Service worker is the technology that enables your app to use many Progressive Web App features, such as offline, add to homescreen, and push notifications. With proper service worker and manifest implementations, browsers can proactively prompt users to add your app to their homescreen, which can lead to higher engagement. [Learn more](https://web.dev/installable-manifest/).", - "score": 0, - "scoreDisplayMode": "binary", - "numericValue": 2, - "numericUnit": "element", - "displayValue": "2 reasons", - "warnings": [], - "details": { - "type": "table", - "headings": [ - { - "key": "reason", - "itemType": "text", - "text": "Failure reason" - } - ], - "items": [ - { - "reason": "Page has no manifest URL" - }, - { - "reason": "No manifest was fetched" - } - ], - "debugData": { + }, + "final-screenshot": { + "id": "final-screenshot", + "title": "Final Screenshot", + "description": "The last screenshot captured of the pageload.", + "score": null, + "scoreDisplayMode": "informative", + "details": { + "type": "screenshot", + "timing": 635, + "timestamp": 56836958404, + "data": "data:image/jpeg;base64,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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB//9k=" + } + }, + "total-blocking-time": { + "id": "total-blocking-time", + "title": "Total Blocking Time", + "description": "Sum of all time periods between FCP and Time to Interactive, when task length exceeded 50ms, expressed in milliseconds. [Learn more](https://web.dev/lighthouse-total-blocking-time/).", + "score": 0.99, + "scoreDisplayMode": "numeric", + "numericValue": 83.99999999999977, + "numericUnit": "millisecond", + "displayValue": "80 ms" + }, + "max-potential-fid": { + "id": "max-potential-fid", + "title": "Max Potential First Input Delay", + "description": "The maximum potential First Input Delay that your users could experience is the duration of the longest task. [Learn more](https://web.dev/lighthouse-max-potential-fid/).", + "score": 0.89, + "scoreDisplayMode": "numeric", + "numericValue": 134, + "numericUnit": "millisecond", + "displayValue": "130 ms" + }, + "cumulative-layout-shift": { + "id": "cumulative-layout-shift", + "title": "Cumulative Layout Shift", + "description": "Cumulative Layout Shift measures the movement of visible elements within the viewport. [Learn more](https://web.dev/cls/).", + "score": 1, + "scoreDisplayMode": "numeric", + "numericValue": 0.004178787231445312, + "numericUnit": "unitless", + "displayValue": "0.004", + "details": { "type": "debugdata", - "manifestUrl": null + "items": [ + { + "cumulativeLayoutShiftMainFrame": 0.004178787231445312, + "totalCumulativeLayoutShift": 0.004178787231445312 + } + ] } - } - }, - "apple-touch-icon": { - "id": "apple-touch-icon", - "title": "Does not provide a valid `apple-touch-icon`", - "description": "For ideal appearance on iOS when users add a progressive web app to the home screen, define an `apple-touch-icon`. It must point to a non-transparent 192px (or 180px) square PNG. [Learn More](https://web.dev/apple-touch-icon/).", - "score": 0, - "scoreDisplayMode": "binary", - "warnings": [] - }, - "splash-screen": { - "id": "splash-screen", - "title": "Is not configured for a custom splash screen", - "description": "A themed splash screen ensures a high-quality experience when users launch your app from their homescreens. [Learn more](https://web.dev/splash-screen/).", - "score": 0, - "scoreDisplayMode": "binary", - "explanation": "Failures: No manifest was fetched.", - "details": { - "type": "debugdata", - "items": [ - { - "failures": [ - "No manifest was fetched" - ], - "isParseFailure": true, - "parseFailureReason": "No manifest was fetched" - } - ] - } - }, - "themed-omnibox": { - "id": "themed-omnibox", - "title": "Does not set a theme color for the address bar.", - "description": "The browser address bar can be themed to match your site. [Learn more](https://web.dev/themed-omnibox/).", - "score": 0, - "scoreDisplayMode": "binary", - "explanation": "Failures: No manifest was fetched,\nNo `` tag found.", - "details": { - "type": "debugdata", - "items": [ - { - "failures": [ - "No manifest was fetched", - "No `` tag found" - ], - "themeColor": null, - "isParseFailure": true, - "parseFailureReason": "No manifest was fetched" - } - ] - } - }, - "maskable-icon": { - "id": "maskable-icon", - "title": "Manifest doesn't have a maskable icon", - "description": "A maskable icon ensures that the image fills the entire shape without being letterboxed when installing the app on a device. [Learn more](https://web.dev/maskable-icon-audit/).", - "score": 0, - "scoreDisplayMode": "binary", - "explanation": "No manifest was fetched" - }, - "content-width": { - "id": "content-width", - "title": "Content is sized correctly for the viewport", - "description": "If the width of your app's content doesn't match the width of the viewport, your app might not be optimized for mobile screens. [Learn more](https://web.dev/content-width/).", - "score": 1, - "scoreDisplayMode": "binary" - }, - "image-aspect-ratio": { - "id": "image-aspect-ratio", - "title": "Displays images with correct aspect ratio", - "description": "Image display dimensions should match natural aspect ratio. [Learn more](https://web.dev/image-aspect-ratio/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "image-size-responsive": { - "id": "image-size-responsive", - "title": "Serves images with appropriate resolution", - "description": "Image natural dimensions should be proportional to the display size and the pixel ratio to maximize image clarity. [Learn more](https://web.dev/serve-responsive-images/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "preload-fonts": { - "id": "preload-fonts", - "title": "Fonts with `font-display: optional` are preloaded", - "description": "Preload `optional` fonts so first-time visitors may use them. [Learn more](https://web.dev/preload-optional-fonts/)", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "deprecations": { - "id": "deprecations", - "title": "Avoids deprecated APIs", - "description": "Deprecated APIs will eventually be removed from the browser. [Learn more](https://web.dev/deprecations/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "mainthread-work-breakdown": { - "id": "mainthread-work-breakdown", - "title": "Minimizes main-thread work", - "description": "Consider reducing the time spent parsing, compiling and executing JS. You may find delivering smaller JS payloads helps with this. [Learn more](https://web.dev/mainthread-work-breakdown/)", - "score": 1, - "scoreDisplayMode": "numeric", - "numericValue": 746.9080000000002, - "numericUnit": "millisecond", - "displayValue": "0.7 s", - "details": { - "type": "table", - "headings": [ - { - "key": "groupLabel", - "itemType": "text", - "text": "Category" - }, - { - "key": "duration", - "itemType": "ms", - "granularity": 1, - "text": "Time Spent" - } - ], - "items": [ - { - "group": "other", - "groupLabel": "Other", - "duration": 259.4800000000003 - }, - { - "group": "scriptEvaluation", - "groupLabel": "Script Evaluation", - "duration": 230.2920000000001 - }, - { - "group": "styleLayout", - "groupLabel": "Style & Layout", - "duration": 193.21599999999995 - }, - { - "group": "paintCompositeRender", - "groupLabel": "Rendering", - "duration": 26.639999999999993 - }, - { - "group": "scriptParseCompile", - "groupLabel": "Script Parsing & Compilation", - "duration": 20.195999999999987 - }, - { - "group": "parseHTML", - "groupLabel": "Parse HTML & CSS", - "duration": 14.091999999999997 + }, + "errors-in-console": { + "id": "errors-in-console", + "title": "No browser errors logged to the console", + "description": "Errors logged to the console indicate unresolved problems. They can come from network request failures and other browser concerns. [Learn more](https://web.dev/errors-in-console/)", + "score": 1, + "scoreDisplayMode": "binary", + "details": { + "type": "table", + "headings": [], + "items": [] + } + }, + "server-response-time": { + "id": "server-response-time", + "title": "Initial server response time was short", + "description": "Keep the server response time for the main document short because all other requests depend on it. [Learn more](https://web.dev/time-to-first-byte/).", + "score": 1, + "scoreDisplayMode": "binary", + "numericValue": 48.548, + "numericUnit": "millisecond", + "displayValue": "Root document took 50 ms", + "details": { + "type": "opportunity", + "headings": [ + { + "key": "url", + "valueType": "url", + "label": "URL" + }, + { + "key": "responseTime", + "valueType": "timespanMs", + "label": "Time Spent" + } + ], + "items": [ + { + "url": "https://www.mikescerealshack.co/", + "responseTime": 48.548 + } + ], + "overallSavingsMs": -51.452 + } + }, + "interactive": { + "id": "interactive", + "title": "Time to Interactive", + "description": "Time to interactive is the amount of time it takes for the page to become fully interactive. [Learn more](https://web.dev/interactive/).", + "score": 0.98, + "scoreDisplayMode": "numeric", + "numericValue": 2444.9140000000007, + "numericUnit": "millisecond", + "displayValue": "2.4 s" + }, + "user-timings": { + "id": "user-timings", + "title": "User Timing marks and measures", + "description": "Consider instrumenting your app with the User Timing API to measure your app's real-world performance during key user experiences. [Learn more](https://web.dev/user-timings/).", + "score": null, + "scoreDisplayMode": "informative", + "displayValue": "4 user timings", + "details": { + "type": "table", + "headings": [ + { + "key": "name", + "itemType": "text", + "text": "Name" + }, + { + "key": "timingType", + "itemType": "text", + "text": "Type" + }, + { + "key": "startTime", + "itemType": "ms", + "granularity": 0.01, + "text": "Start Time" + }, + { + "key": "duration", + "itemType": "ms", + "granularity": 0.01, + "text": "Duration" + } + ], + "items": [ + { + "name": "Next.js-before-hydration", + "startTime": 0, + "duration": 406.868, + "timingType": "Measure" + }, + { + "name": "Next.js-hydration", + "startTime": 406.868, + "duration": 12.852, + "timingType": "Measure" + }, + { + "name": "beforeRender", + "startTime": 406.881, + "timingType": "Mark" + }, + { + "name": "afterHydrate", + "startTime": 419.73, + "timingType": "Mark" + } + ] + } + }, + "critical-request-chains": { + "id": "critical-request-chains", + "title": "Avoid chaining critical requests", + "description": "The Critical Request Chains below show you what resources are loaded with a high priority. Consider reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load. [Learn more](https://web.dev/critical-request-chains/).", + "score": null, + "scoreDisplayMode": "notApplicable", + "displayValue": "", + "details": { + "type": "criticalrequestchain", + "chains": { + "E7887194466C954A10E49E6F1832C102": { + "request": { + "url": "https://www.mikescerealshack.co/", + "startTime": 56836.325777, + "endTime": 56836.553242, + "responseReceivedTime": 56836.552084999996, + "transferSize": 3551 + } + } }, - { - "group": "garbageCollection", - "groupLabel": "Garbage Collection", - "duration": 2.9920000000000004 + "longestChain": { + "duration": 227.46500000357628, + "length": 1, + "transferSize": 3551 } - ] - } - }, - "bootup-time": { - "id": "bootup-time", - "title": "JavaScript execution time", - "description": "Consider reducing the time spent parsing, compiling, and executing JS. You may find delivering smaller JS payloads helps with this. [Learn more](https://web.dev/bootup-time/).", - "score": 1, - "scoreDisplayMode": "numeric", - "numericValue": 188.04, - "numericUnit": "millisecond", - "displayValue": "0.2 s", - "details": { - "type": "table", - "headings": [ - { - "key": "url", - "itemType": "url", - "text": "URL" - }, - { - "key": "total", - "granularity": 1, - "itemType": "ms", - "text": "Total CPU Time" - }, - { - "key": "scripting", - "granularity": 1, - "itemType": "ms", - "text": "Script Evaluation" - }, - { - "key": "scriptParseCompile", - "granularity": 1, - "itemType": "ms", - "text": "Script Parse" + } + }, + "redirects": { + "id": "redirects", + "title": "Avoid multiple page redirects", + "description": "Redirects introduce additional delays before the page can be loaded. [Learn more](https://web.dev/redirects/).", + "score": 1, + "scoreDisplayMode": "numeric", + "numericValue": 0, + "numericUnit": "millisecond", + "displayValue": "", + "details": { + "type": "opportunity", + "headings": [], + "items": [], + "overallSavingsMs": 0 + } + }, + "installable-manifest": { + "id": "installable-manifest", + "title": "Web app manifest or service worker do not meet the installability requirements", + "description": "Service worker is the technology that enables your app to use many Progressive Web App features, such as offline, add to homescreen, and push notifications. With proper service worker and manifest implementations, browsers can proactively prompt users to add your app to their homescreen, which can lead to higher engagement. [Learn more](https://web.dev/installable-manifest/).", + "score": 0, + "scoreDisplayMode": "binary", + "numericValue": 2, + "numericUnit": "element", + "displayValue": "2 reasons", + "warnings": [], + "details": { + "type": "table", + "headings": [ + { + "key": "reason", + "itemType": "text", + "text": "Failure reason" + } + ], + "items": [ + { + "reason": "Page has no manifest URL" + }, + { + "reason": "No manifest was fetched" + } + ], + "debugData": { + "type": "debugdata", + "manifestUrl": null } - ], - "items": [ - { - "url": "https://www.mikescerealshack.co/", - "total": 296.88399999999996, - "scripting": 21.879999999999995, - "scriptParseCompile": 3.26 - }, - { - "url": "Unattributable", - "total": 213.90800000000024, - "scripting": 15.144, - "scriptParseCompile": 0.772 - }, - { - "url": "https://www.mikescerealshack.co/_next/static/chunks/webpack-657a8433bac0aabd564e.js", - "total": 86.21999999999998, - "scripting": 85.36799999999998, - "scriptParseCompile": 0.424 - }, - { - "url": "https://www.mikescerealshack.co/_next/static/chunks/pages/_app-ef508c97234d1af96c47.js", - "total": 62.076, - "scripting": 60.32000000000001, - "scriptParseCompile": 0.8720000000000001 + } + }, + "apple-touch-icon": { + "id": "apple-touch-icon", + "title": "Does not provide a valid `apple-touch-icon`", + "description": "For ideal appearance on iOS when users add a progressive web app to the home screen, define an `apple-touch-icon`. It must point to a non-transparent 192px (or 180px) square PNG. [Learn More](https://web.dev/apple-touch-icon/).", + "score": 0, + "scoreDisplayMode": "binary", + "warnings": [] + }, + "splash-screen": { + "id": "splash-screen", + "title": "Is not configured for a custom splash screen", + "description": "A themed splash screen ensures a high-quality experience when users launch your app from their homescreens. [Learn more](https://web.dev/splash-screen/).", + "score": 0, + "scoreDisplayMode": "binary", + "explanation": "Failures: No manifest was fetched.", + "details": { + "type": "debugdata", + "items": [ + { + "failures": [ + "No manifest was fetched" + ], + "isParseFailure": true, + "parseFailureReason": "No manifest was fetched" + } + ] + } + }, + "themed-omnibox": { + "id": "themed-omnibox", + "title": "Does not set a theme color for the address bar.", + "description": "The browser address bar can be themed to match your site. [Learn more](https://web.dev/themed-omnibox/).", + "score": 0, + "scoreDisplayMode": "binary", + "explanation": "Failures: No manifest was fetched,\nNo `` tag found.", + "details": { + "type": "debugdata", + "items": [ + { + "failures": [ + "No manifest was fetched", + "No `` tag found" + ], + "themeColor": null, + "isParseFailure": true, + "parseFailureReason": "No manifest was fetched" + } + ] + } + }, + "maskable-icon": { + "id": "maskable-icon", + "title": "Manifest doesn't have a maskable icon", + "description": "A maskable icon ensures that the image fills the entire shape without being letterboxed when installing the app on a device. [Learn more](https://web.dev/maskable-icon-audit/).", + "score": 0, + "scoreDisplayMode": "binary", + "explanation": "No manifest was fetched" + }, + "content-width": { + "id": "content-width", + "title": "Content is sized correctly for the viewport", + "description": "If the width of your app's content doesn't match the width of the viewport, your app might not be optimized for mobile screens. [Learn more](https://web.dev/content-width/).", + "score": 1, + "scoreDisplayMode": "binary" + }, + "image-aspect-ratio": { + "id": "image-aspect-ratio", + "title": "Displays images with correct aspect ratio", + "description": "Image display dimensions should match natural aspect ratio. [Learn more](https://web.dev/image-aspect-ratio/).", + "score": 1, + "scoreDisplayMode": "binary", + "details": { + "type": "table", + "headings": [], + "items": [] + } + }, + "image-size-responsive": { + "id": "image-size-responsive", + "title": "Serves images with appropriate resolution", + "description": "Image natural dimensions should be proportional to the display size and the pixel ratio to maximize image clarity. [Learn more](https://web.dev/serve-responsive-images/).", + "score": 1, + "scoreDisplayMode": "binary", + "details": { + "type": "table", + "headings": [], + "items": [] + } + }, + "preload-fonts": { + "id": "preload-fonts", + "title": "Fonts with `font-display: optional` are preloaded", + "description": "Preload `optional` fonts so first-time visitors may use them. [Learn more](https://web.dev/preload-optional-fonts/)", + "score": null, + "scoreDisplayMode": "notApplicable" + }, + "deprecations": { + "id": "deprecations", + "title": "Avoids deprecated APIs", + "description": "Deprecated APIs will eventually be removed from the browser. [Learn more](https://web.dev/deprecations/).", + "score": 1, + "scoreDisplayMode": "binary", + "details": { + "type": "table", + "headings": [], + "items": [] + } + }, + "mainthread-work-breakdown": { + "id": "mainthread-work-breakdown", + "title": "Minimizes main-thread work", + "description": "Consider reducing the time spent parsing, compiling and executing JS. You may find delivering smaller JS payloads helps with this. [Learn more](https://web.dev/mainthread-work-breakdown/)", + "score": 1, + "scoreDisplayMode": "numeric", + "numericValue": 682.7280000000007, + "numericUnit": "millisecond", + "displayValue": "0.7 s", + "details": { + "type": "table", + "headings": [ + { + "key": "groupLabel", + "itemType": "text", + "text": "Category" + }, + { + "key": "duration", + "itemType": "ms", + "granularity": 1, + "text": "Time Spent" + } + ], + "items": [ + { + "group": "other", + "groupLabel": "Other", + "duration": 294.0760000000006 + }, + { + "group": "scriptEvaluation", + "groupLabel": "Script Evaluation", + "duration": 202.07200000000017 + }, + { + "group": "styleLayout", + "groupLabel": "Style & Layout", + "duration": 127.72400000000003 + }, + { + "group": "parseHTML", + "groupLabel": "Parse HTML & CSS", + "duration": 22.304 + }, + { + "group": "paintCompositeRender", + "groupLabel": "Rendering", + "duration": 19.044 + }, + { + "group": "scriptParseCompile", + "groupLabel": "Script Parsing & Compilation", + "duration": 17.508 + } + ] + } + }, + "bootup-time": { + "id": "bootup-time", + "title": "JavaScript execution time", + "description": "Consider reducing the time spent parsing, compiling, and executing JS. You may find delivering smaller JS payloads helps with this. [Learn more](https://web.dev/bootup-time/).", + "score": 1, + "scoreDisplayMode": "numeric", + "numericValue": 189.2160000000001, + "numericUnit": "millisecond", + "displayValue": "0.2 s", + "details": { + "type": "table", + "headings": [ + { + "key": "url", + "itemType": "url", + "text": "URL" + }, + { + "key": "total", + "granularity": 1, + "itemType": "ms", + "text": "Total CPU Time" + }, + { + "key": "scripting", + "granularity": 1, + "itemType": "ms", + "text": "Script Evaluation" + }, + { + "key": "scriptParseCompile", + "granularity": 1, + "itemType": "ms", + "text": "Script Parse" + } + ], + "items": [ + { + "url": "https://www.mikescerealshack.co/", + "total": 242.848, + "scripting": 20.515999999999988, + "scriptParseCompile": 3.028 + }, + { + "url": "Unattributable", + "total": 234.4400000000001, + "scripting": 11.111999999999998, + "scriptParseCompile": 0.744 + }, + { + "url": "https://www.mikescerealshack.co/_next/static/chunks/framework.9d524150d48315f49e80.js", + "total": 161.63200000000012, + "scripting": 148.85200000000012, + "scriptParseCompile": 4.9639999999999995 + } + ], + "summary": { + "wastedMs": 189.2160000000001 } - ], - "summary": { - "wastedMs": 188.04 } - } - }, - "uses-rel-preload": { - "id": "uses-rel-preload", - "title": "Preload key requests", - "description": "Consider using `` to prioritize fetching resources that are currently requested later in page load. [Learn more](https://web.dev/uses-rel-preload/).", - "score": null, - "scoreDisplayMode": "notApplicable", - "details": { - "type": "opportunity", - "headings": [], - "items": [], - "overallSavingsMs": 0 - } - }, - "uses-rel-preconnect": { - "id": "uses-rel-preconnect", - "title": "Preconnect to required origins", - "description": "Consider adding `preconnect` or `dns-prefetch` resource hints to establish early connections to important third-party origins. [Learn more](https://web.dev/uses-rel-preconnect/).", - "score": 0.87, - "scoreDisplayMode": "numeric", - "numericValue": 161.36899999904634, - "numericUnit": "millisecond", - "displayValue": "Potential savings of 160 ms", - "warnings": [], - "details": { - "type": "opportunity", - "headings": [ - { - "key": "url", - "valueType": "url", - "label": "URL" - }, - { - "key": "wastedMs", - "valueType": "timespanMs", - "label": "Potential Savings" - } - ], - "items": [ - { - "url": "https://fonts.googleapis.com", - "wastedMs": 161.36899999904634 - } - ], - "overallSavingsMs": 161.36899999904634 - } - }, - "font-display": { - "id": "font-display", - "title": "All text remains visible during webfont loads", - "description": "Leverage the font-display CSS feature to ensure text is user-visible while webfonts are loading. [Learn more](https://web.dev/font-display/).", - "score": 1, - "scoreDisplayMode": "binary", - "warnings": [], - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "diagnostics": { - "id": "diagnostics", - "title": "Diagnostics", - "description": "Collection of useful page vitals.", - "score": null, - "scoreDisplayMode": "informative", - "details": { - "type": "debugdata", - "items": [ - { - "numRequests": 23, - "numScripts": 12, - "numStylesheets": 2, - "numFonts": 3, - "numTasks": 507, - "numTasksOver10ms": 4, - "numTasksOver25ms": 1, - "numTasksOver50ms": 0, - "numTasksOver100ms": 0, - "numTasksOver500ms": 0, - "rtt": 22.891000000000005, - "throughput": 17420811.69336929, - "maxRtt": 123.648, - "maxServerLatency": 36.634, - "totalByteWeight": 183611, - "totalTaskTime": 186.72699999999978, - "mainDocumentTransferSize": 3550 - } - ] - } - }, - "network-requests": { - "id": "network-requests", - "title": "Network Requests", - "description": "Lists the network requests that were made during page load.", - "score": null, - "scoreDisplayMode": "informative", - "details": { - "type": "table", - "headings": [ - { - "key": "url", - "itemType": "url", - "text": "URL" - }, - { - "key": "protocol", - "itemType": "text", - "text": "Protocol" - }, - { - "key": "startTime", - "itemType": "ms", - "granularity": 1, - "text": "Start Time" - }, - { - "key": "endTime", - "itemType": "ms", - "granularity": 1, - "text": "End Time" - }, - { - "key": "transferSize", - "itemType": "bytes", - "displayUnit": "kb", - "granularity": 1, - "text": "Transfer Size" - }, - { - "key": "resourceSize", - "itemType": "bytes", - "displayUnit": "kb", - "granularity": 1, - "text": "Resource Size" - }, - { - "key": "statusCode", - "itemType": "text", - "text": "Status Code" - }, - { - "key": "mimeType", - "itemType": "text", - "text": "MIME Type" - }, - { - "key": "resourceType", - "itemType": "text", - "text": "Resource Type" - } - ], - "items": [ - { - "url": "https://www.mikescerealshack.co/", - "protocol": "h2", - "startTime": 0, - "endTime": 524.7229999949923, - "finished": true, - "transferSize": 3550, - "resourceSize": 9301, - "statusCode": 200, - "mimeType": "text/html", - "resourceType": "Document" - }, - { - "url": "https://www.mikescerealshack.co/fonts/danielbd.woff2", - "protocol": "h2", - "startTime": 544.1089999949327, - "endTime": 601.4409999916097, - "finished": true, - "transferSize": 35882, - "resourceSize": 35680, - "statusCode": 200, - "mimeType": "font/woff2", - "resourceType": "Font" - }, - { - "url": "https://events.mikescerealshack.co/js/index.js", - "protocol": "http/1.1", - "startTime": 684.4459999992978, - "endTime": 1247.589999999036, - "finished": true, - "transferSize": 1090, - "resourceSize": 1341, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script" - }, - { - "url": "https://www.mikescerealshack.co/_next/static/css/08dcb440d7d83b488817.css", - "protocol": "h2", - "startTime": 544.752999994671, - "endTime": 649.755999998888, - "finished": true, - "transferSize": 5000, - "resourceSize": 18126, - "statusCode": 200, - "mimeType": "text/css", - "resourceType": "Stylesheet" - }, - { - "url": "https://www.mikescerealshack.co/_next/static/chunks/main-1f8481d632114a408557.js", - "protocol": "h2", - "startTime": 545.3669999988051, - "endTime": 612.6709999953164, - "finished": true, - "transferSize": 7039, - "resourceSize": 17656, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script" - }, - { - "url": "https://www.mikescerealshack.co/_next/static/chunks/webpack-657a8433bac0aabd564e.js", - "protocol": "h2", - "startTime": 546.0339999990538, - "endTime": 662.2449999995297, - "finished": true, - "transferSize": 1403, - "resourceSize": 2351, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script" - }, - { - "url": "https://www.mikescerealshack.co/_next/static/chunks/framework.9d524150d48315f49e80.js", - "protocol": "h2", - "startTime": 546.5750000003027, - "endTime": 631.4679999923101, - "finished": true, - "transferSize": 43880, - "resourceSize": 130277, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script" - }, - { - "url": "https://www.mikescerealshack.co/_next/static/chunks/commons.49455e4fa8cc3f51203f.js", - "protocol": "h2", - "startTime": 547.0149999891873, - "endTime": 633.1199999985984, - "finished": true, - "transferSize": 15117, - "resourceSize": 44060, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script" - }, - { - "url": "https://www.mikescerealshack.co/_next/static/chunks/pages/_app-ef508c97234d1af96c47.js", - "protocol": "h2", - "startTime": 547.482999987551, - "endTime": 662.7099999896018, - "finished": true, - "transferSize": 744, - "resourceSize": 1235, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script" - }, - { - "url": "https://www.mikescerealshack.co/_next/static/chunks/1aeab0175d4c4d823d7a78205bceb5dd9cd36d32.a629f28ec97ae6e480bf.js", - "protocol": "h2", - "startTime": 547.7399999945192, - "endTime": 636.237999991863, - "finished": true, - "transferSize": 23958, - "resourceSize": 67673, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script" - }, - { - "url": "https://www.mikescerealshack.co/_next/static/chunks/pages/index-37980adf97404e76e41a.js", - "protocol": "h2", - "startTime": 548.2369999954244, - "endTime": 633.9289999887114, - "finished": true, - "transferSize": 1115, - "resourceSize": 1856, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script" - }, - { - "url": "https://www.mikescerealshack.co/logo-text.svg", - "protocol": "h2", - "startTime": 682.0379999990109, - "endTime": 790.871999997762, - "finished": true, - "transferSize": 14329, - "resourceSize": 53947, - "statusCode": 200, - "mimeType": "image/svg+xml", - "resourceType": "Image" - }, - { - "url": "https://www.mikescerealshack.co/_next/static/p2jwxtY4-8WEKSVkE5jXt/_buildManifest.js", - "protocol": "h2", - "startTime": 685.0290000002133, - "endTime": 796.0079999902518, - "finished": true, - "transferSize": 754, - "resourceSize": 1545, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script" - }, - { - "url": "https://www.mikescerealshack.co/_next/static/p2jwxtY4-8WEKSVkE5jXt/_ssgManifest.js", - "protocol": "h2", - "startTime": 685.4179999936605, - "endTime": 724.6429999941029, - "finished": true, - "transferSize": 234, - "resourceSize": 76, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script" - }, - { - "url": "https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;700&display=swap", - "protocol": "h2", - "startTime": 685.6489999918267, - "endTime": 848.1409999949392, - "finished": true, - "transferSize": 1006, - "resourceSize": 3282, - "statusCode": 200, - "mimeType": "text/css", - "resourceType": "Stylesheet" - }, - { - "url": "https://www.mikescerealshack.co/_next/static/chunks/1aeab0175d4c4d823d7a78205bceb5dd9cd36d32.a629f28ec97ae6e480bf.js", - "protocol": "h2", - "startTime": 805.2739999984624, - "endTime": 807.712999987416, - "finished": true, - "transferSize": 0, - "resourceSize": 0, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Other" - }, - { - "url": "https://www.mikescerealshack.co/_next/static/chunks/9ea7d3ba8dd80c65c50028121847762825088b49.dc477066508a83415fce.js", - "protocol": "h2", - "startTime": 805.7770000013988, - "endTime": 910.3459999896586, - "finished": true, - "transferSize": 3857, - "resourceSize": 0, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Other" - }, - { - "url": "https://www.mikescerealshack.co/_next/static/chunks/pages/scenes/%5Bseason%5D/%5Bepisode%5D/%5Bscene%5D-526fe33be891a56314a3.js", - "protocol": "h2", - "startTime": 806.2019999924814, - "endTime": 839.295999991009, - "finished": true, - "transferSize": 2971, - "resourceSize": 0, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Other" - }, - { - "url": "https://fonts.gstatic.com/s/poppins/v15/pxiEyp8kv8JHgFVrJJfecnFHGPc.woff2", - "protocol": "h2", - "startTime": 958.8949999888428, - "endTime": 992.2589999914635, - "finished": true, - "transferSize": 8390, - "resourceSize": 7900, - "statusCode": 200, - "mimeType": "font/woff2", - "resourceType": "Font" - }, - { - "url": "https://fonts.gstatic.com/s/poppins/v15/pxiByp8kv8JHgFVrLCz7Z1xlFd2JQEk.woff2", - "protocol": "h2", - "startTime": 959.2489999922691, - "endTime": 999.5939999935217, - "finished": true, - "transferSize": 7947, - "resourceSize": 7832, - "statusCode": 200, - "mimeType": "font/woff2", - "resourceType": "Font" - }, - { - "url": "https://www.mikescerealshack.co/_next/static/chunks/9ea7d3ba8dd80c65c50028121847762825088b49.dc477066508a83415fce.js", - "protocol": "h2", - "startTime": 961.658999993233, - "endTime": 963.0139999935636, - "finished": true, - "transferSize": 0, - "resourceSize": 8890, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script" - }, - { - "url": "https://www.mikescerealshack.co/_next/static/chunks/pages/scenes/%5Bseason%5D/%5Bepisode%5D/%5Bscene%5D-526fe33be891a56314a3.js", - "protocol": "h2", - "startTime": 962.1859999897424, - "endTime": 963.912999999593, - "finished": true, - "transferSize": 0, - "resourceSize": 6837, - "statusCode": 200, - "mimeType": "application/javascript", - "resourceType": "Script" - }, - { - "url": "https://www.mikescerealshack.co/favicon.png", - "protocol": "h2", - "startTime": 1255.0349999946775, - "endTime": 1286.9299999874784, - "finished": true, - "transferSize": 5345, - "resourceSize": 5164, - "statusCode": 200, - "mimeType": "image/png", - "resourceType": "Other" - } - ] - } - }, - "network-rtt": { - "id": "network-rtt", - "title": "Network Round Trip Times", - "description": "Network round trip times (RTT) have a large impact on performance. If the RTT to an origin is high, it's an indication that servers closer to the user could improve performance. [Learn more](https://hpbn.co/primer-on-latency-and-bandwidth/).", - "score": null, - "scoreDisplayMode": "informative", - "numericValue": 123.648, - "numericUnit": "millisecond", - "displayValue": "120 ms", - "details": { - "type": "table", - "headings": [ - { - "key": "origin", - "itemType": "text", - "text": "URL" - }, - { - "key": "rtt", - "itemType": "ms", - "granularity": 1, - "text": "Time Spent" - } - ], - "items": [ - { - "origin": "https://events.mikescerealshack.co", - "rtt": 123.648 - }, - { - "origin": "https://www.mikescerealshack.co", - "rtt": 26.504999999999995 - }, - { - "origin": "https://fonts.googleapis.com", - "rtt": 22.891000000000005 - }, - { - "origin": "https://fonts.gstatic.com", - "rtt": 22.891000000000005 - } - ] - } - }, - "network-server-latency": { - "id": "network-server-latency", - "title": "Server Backend Latencies", - "description": "Server latencies can impact web performance. If the server latency of an origin is high, it's an indication the server is overloaded or has poor backend performance. [Learn more](https://hpbn.co/primer-on-web-performance/#analyzing-the-resource-waterfall).", - "score": null, - "scoreDisplayMode": "informative", - "numericValue": 36.634, - "numericUnit": "millisecond", - "displayValue": "40 ms", - "details": { - "type": "table", - "headings": [ - { - "key": "origin", - "itemType": "text", - "text": "URL" - }, - { - "key": "serverResponseTime", - "itemType": "ms", - "granularity": 1, - "text": "Time Spent" - } - ], - "items": [ - { - "origin": "https://www.mikescerealshack.co", - "serverResponseTime": 36.634 - }, - { - "origin": "https://fonts.googleapis.com", - "serverResponseTime": 12.669999999999987 - }, - { - "origin": "https://events.mikescerealshack.co", - "serverResponseTime": 9.651999999999958 - }, - { - "origin": "https://fonts.gstatic.com", - "serverResponseTime": 1.8199999999999967 - } - ] - } - }, - "main-thread-tasks": { - "id": "main-thread-tasks", - "title": "Tasks", - "description": "Lists the toplevel main thread tasks that executed during page load.", - "score": null, - "scoreDisplayMode": "informative", - "details": { - "type": "table", - "headings": [ - { - "key": "startTime", - "itemType": "ms", - "granularity": 1, - "text": "Start Time" - }, - { - "key": "duration", - "itemType": "ms", - "granularity": 1, - "text": "End Time" - } - ], - "items": [ - { - "duration": 9.507, - "startTime": 968.491 - }, - { - "duration": 6.779, - "startTime": 986.355 - }, - { - "duration": 10.258, - "startTime": 998.71 - }, - { - "duration": 33.281, - "startTime": 1097.202 - }, - { - "duration": 21.555, - "startTime": 1133.379 - }, - { - "duration": 15.519, - "startTime": 1155.003 - }, - { - "duration": 6.533, - "startTime": 1236.791 - }, - { - "duration": 6.091, - "startTime": 1397.301 - } - ] - } - }, - "metrics": { - "id": "metrics", - "title": "Metrics", - "description": "Collects all available metrics.", - "score": null, - "scoreDisplayMode": "informative", - "numericValue": 2028, - "numericUnit": "millisecond", - "details": { - "type": "debugdata", - "items": [ - { - "firstContentfulPaint": 1412, - "firstMeaningfulPaint": 1412, - "largestContentfulPaint": 2334, - "interactive": 2028, - "speedIndex": 1679, - "totalBlockingTime": 42, - "maxPotentialFID": 86, - "cumulativeLayoutShift": 0.0026205596923828123, - "cumulativeLayoutShiftMainFrame": 0.0026205596923828123, - "totalCumulativeLayoutShift": 0.0026205596923828123, - "observedTimeOrigin": 0, - "observedTimeOriginTs": 121804765196, - "observedNavigationStart": 0, - "observedNavigationStartTs": 121804765196, - "observedFirstPaint": 689, - "observedFirstPaintTs": 121805454453, - "observedFirstContentfulPaint": 689, - "observedFirstContentfulPaintTs": 121805454454, - "observedFirstContentfulPaintAllFrames": 689, - "observedFirstContentfulPaintAllFramesTs": 121805454454, - "observedFirstMeaningfulPaint": 689, - "observedFirstMeaningfulPaintTs": 121805454454, - "observedLargestContentfulPaint": 956, - "observedLargestContentfulPaintTs": 121805720788, - "observedLargestContentfulPaintAllFrames": 956, - "observedLargestContentfulPaintAllFramesTs": 121805720788, - "observedTraceEnd": 3829, - "observedTraceEndTs": 121808593777, - "observedLoad": 1256, - "observedLoadTs": 121806020944, - "observedDomContentLoaded": 558, - "observedDomContentLoadedTs": 121805322862, - "observedCumulativeLayoutShift": 0.0026205596923828123, - "observedCumulativeLayoutShiftMainFrame": 0.0026205596923828123, - "observedTotalCumulativeLayoutShift": 0.0026205596923828123, - "observedFirstVisualChange": 712, - "observedFirstVisualChangeTs": 121805477196, - "observedLastVisualChange": 1029, - "observedLastVisualChangeTs": 121805794196, - "observedSpeedIndex": 723, - "observedSpeedIndexTs": 121805487714 - }, - { - "lcpInvalidated": false - } - ] - } - }, - "performance-budget": { - "id": "performance-budget", - "title": "Performance budget", - "description": "Keep the quantity and size of network requests under the targets set by the provided performance budget. [Learn more](https://developers.google.com/web/tools/lighthouse/audits/budgets).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "timing-budget": { - "id": "timing-budget", - "title": "Timing budget", - "description": "Set a timing budget to help you keep an eye on the performance of your site. Performant sites load fast and respond to user input events quickly. [Learn more](https://developers.google.com/web/tools/lighthouse/audits/budgets).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "resource-summary": { - "id": "resource-summary", - "title": "Keep request counts low and transfer sizes small", - "description": "To set budgets for the quantity and size of page resources, add a budget.json file. [Learn more](https://web.dev/use-lighthouse-for-performance-budgets/).", - "score": null, - "scoreDisplayMode": "informative", - "displayValue": "23 requests • 179 KiB", - "details": { - "type": "table", - "headings": [ - { - "key": "label", - "itemType": "text", - "text": "Resource Type" - }, - { - "key": "requestCount", - "itemType": "numeric", - "text": "Requests" - }, - { - "key": "transferSize", - "itemType": "bytes", - "text": "Transfer Size" - } - ], - "items": [ - { - "resourceType": "total", - "label": "Total", - "requestCount": 23, - "transferSize": 183611 - }, - { - "resourceType": "script", - "label": "Script", - "requestCount": 12, - "transferSize": 95334 - }, - { - "resourceType": "font", - "label": "Font", - "requestCount": 3, - "transferSize": 52219 - }, - { - "resourceType": "image", - "label": "Image", - "requestCount": 1, - "transferSize": 14329 - }, - { - "resourceType": "other", - "label": "Other", - "requestCount": 4, - "transferSize": 12173 - }, - { - "resourceType": "stylesheet", - "label": "Stylesheet", - "requestCount": 2, - "transferSize": 6006 - }, - { - "resourceType": "document", - "label": "Document", - "requestCount": 1, - "transferSize": 3550 - }, - { - "resourceType": "media", - "label": "Media", - "requestCount": 0, - "transferSize": 0 - }, - { - "resourceType": "third-party", - "label": "Third-party", - "requestCount": 3, - "transferSize": 17343 - } - ] - } - }, - "third-party-summary": { - "id": "third-party-summary", - "title": "Minimize third-party usage", - "description": "Third-party code can significantly impact load performance. Limit the number of redundant third-party providers and try to load third-party code after your page has primarily finished loading. [Learn more](https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/loading-third-party-javascript/).", - "score": 1, - "scoreDisplayMode": "binary", - "displayValue": "Third-party code blocked the main thread for 0 ms", - "details": { - "type": "table", - "headings": [ - { - "key": "entity", - "itemType": "link", - "text": "Third-Party", - "subItemsHeading": { + }, + "uses-rel-preload": { + "id": "uses-rel-preload", + "title": "Preload key requests", + "description": "Consider using `` to prioritize fetching resources that are currently requested later in page load. [Learn more](https://web.dev/uses-rel-preload/).", + "score": null, + "scoreDisplayMode": "notApplicable", + "details": { + "type": "opportunity", + "headings": [], + "items": [], + "overallSavingsMs": 0 + } + }, + "uses-rel-preconnect": { + "id": "uses-rel-preconnect", + "title": "Preconnect to required origins", + "description": "Consider adding `preconnect` or `dns-prefetch` resource hints to establish early connections to important third-party origins. [Learn more](https://web.dev/uses-rel-preconnect/).", + "score": 1, + "scoreDisplayMode": "numeric", + "numericValue": 0, + "numericUnit": "millisecond", + "displayValue": "", + "warnings": [], + "details": { + "type": "opportunity", + "headings": [], + "items": [], + "overallSavingsMs": 0 + } + }, + "font-display": { + "id": "font-display", + "title": "All text remains visible during webfont loads", + "description": "Leverage the font-display CSS feature to ensure text is user-visible while webfonts are loading. [Learn more](https://web.dev/font-display/).", + "score": 1, + "scoreDisplayMode": "binary", + "warnings": [], + "details": { + "type": "table", + "headings": [], + "items": [] + } + }, + "diagnostics": { + "id": "diagnostics", + "title": "Diagnostics", + "description": "Collection of useful page vitals.", + "score": null, + "scoreDisplayMode": "informative", + "details": { + "type": "debugdata", + "items": [ + { + "numRequests": 23, + "numScripts": 12, + "numStylesheets": 2, + "numFonts": 3, + "numTasks": 410, + "numTasksOver10ms": 4, + "numTasksOver25ms": 2, + "numTasksOver50ms": 0, + "numTasksOver100ms": 0, + "numTasksOver500ms": 0, + "rtt": 8.997, + "throughput": 12934489.892703472, + "maxRtt": 124.113, + "maxServerLatency": 35.56999999999999, + "totalByteWeight": 183597, + "totalTaskTime": 170.6819999999999, + "mainDocumentTransferSize": 3551 + } + ] + } + }, + "network-requests": { + "id": "network-requests", + "title": "Network Requests", + "description": "Lists the network requests that were made during page load.", + "score": null, + "scoreDisplayMode": "informative", + "details": { + "type": "table", + "headings": [ + { "key": "url", - "itemType": "url" + "itemType": "url", + "text": "URL" + }, + { + "key": "protocol", + "itemType": "text", + "text": "Protocol" + }, + { + "key": "startTime", + "itemType": "ms", + "granularity": 1, + "text": "Start Time" + }, + { + "key": "endTime", + "itemType": "ms", + "granularity": 1, + "text": "End Time" + }, + { + "key": "transferSize", + "itemType": "bytes", + "displayUnit": "kb", + "granularity": 1, + "text": "Transfer Size" + }, + { + "key": "resourceSize", + "itemType": "bytes", + "displayUnit": "kb", + "granularity": 1, + "text": "Resource Size" + }, + { + "key": "statusCode", + "itemType": "text", + "text": "Status Code" + }, + { + "key": "mimeType", + "itemType": "text", + "text": "MIME Type" + }, + { + "key": "resourceType", + "itemType": "text", + "text": "Resource Type" } - }, - { - "key": "transferSize", - "granularity": 1, - "itemType": "bytes", - "text": "Transfer Size", - "subItemsHeading": { - "key": "transferSize" + ], + "items": [ + { + "url": "https://www.mikescerealshack.co/", + "protocol": "h2", + "startTime": 0, + "endTime": 227.46500000357628, + "finished": true, + "transferSize": 3551, + "resourceSize": 9301, + "statusCode": 200, + "mimeType": "text/html", + "resourceType": "Document" + }, + { + "url": "https://www.mikescerealshack.co/fonts/danielbd.woff2", + "protocol": "h2", + "startTime": 255.6040000054054, + "endTime": 328.5600000017439, + "finished": true, + "transferSize": 35885, + "resourceSize": 35680, + "statusCode": 200, + "mimeType": "font/woff2", + "resourceType": "Font" + }, + { + "url": "https://events.mikescerealshack.co/js/index.js", + "protocol": "http/1.1", + "startTime": 256.0860000012326, + "endTime": 705.2900000053342, + "finished": true, + "transferSize": 1090, + "resourceSize": 1341, + "statusCode": 200, + "mimeType": "application/javascript", + "resourceType": "Script" + }, + { + "url": "https://www.mikescerealshack.co/_next/static/css/08dcb440d7d83b488817.css", + "protocol": "h2", + "startTime": 257.4700000041048, + "endTime": 321.94900000467896, + "finished": true, + "transferSize": 5001, + "resourceSize": 18126, + "statusCode": 200, + "mimeType": "text/css", + "resourceType": "Stylesheet" + }, + { + "url": "https://www.mikescerealshack.co/_next/static/chunks/main-1f8481d632114a408557.js", + "protocol": "h2", + "startTime": 258.07000000349944, + "endTime": 324.560000000929, + "finished": true, + "transferSize": 6987, + "resourceSize": 17656, + "statusCode": 200, + "mimeType": "application/javascript", + "resourceType": "Script" + }, + { + "url": "https://www.mikescerealshack.co/_next/static/chunks/webpack-657a8433bac0aabd564e.js", + "protocol": "h2", + "startTime": 258.4790000037174, + "endTime": 322.65600000391714, + "finished": true, + "transferSize": 1403, + "resourceSize": 2351, + "statusCode": 200, + "mimeType": "application/javascript", + "resourceType": "Script" + }, + { + "url": "https://www.mikescerealshack.co/_next/static/chunks/framework.9d524150d48315f49e80.js", + "protocol": "h2", + "startTime": 258.88700000359677, + "endTime": 384.0909999998985, + "finished": true, + "transferSize": 43880, + "resourceSize": 130277, + "statusCode": 200, + "mimeType": "application/javascript", + "resourceType": "Script" + }, + { + "url": "https://www.mikescerealshack.co/_next/static/chunks/commons.49455e4fa8cc3f51203f.js", + "protocol": "h2", + "startTime": 259.4440000029863, + "endTime": 343.19200000027195, + "finished": true, + "transferSize": 15118, + "resourceSize": 44060, + "statusCode": 200, + "mimeType": "application/javascript", + "resourceType": "Script" + }, + { + "url": "https://www.mikescerealshack.co/_next/static/chunks/pages/_app-ef508c97234d1af96c47.js", + "protocol": "h2", + "startTime": 259.847000001173, + "endTime": 344.1900000034366, + "finished": true, + "transferSize": 743, + "resourceSize": 1235, + "statusCode": 200, + "mimeType": "application/javascript", + "resourceType": "Script" + }, + { + "url": "https://www.mikescerealshack.co/_next/static/chunks/1aeab0175d4c4d823d7a78205bceb5dd9cd36d32.a629f28ec97ae6e480bf.js", + "protocol": "h2", + "startTime": 260.30500000342727, + "endTime": 329.2860000001383, + "finished": true, + "transferSize": 23958, + "resourceSize": 67673, + "statusCode": 200, + "mimeType": "application/javascript", + "resourceType": "Script" + }, + { + "url": "https://www.mikescerealshack.co/_next/static/chunks/pages/index-37980adf97404e76e41a.js", + "protocol": "h2", + "startTime": 260.71500000398373, + "endTime": 343.6660000006668, + "finished": true, + "transferSize": 1115, + "resourceSize": 1856, + "statusCode": 200, + "mimeType": "application/javascript", + "resourceType": "Script" + }, + { + "url": "https://www.mikescerealshack.co/logo-text.svg", + "protocol": "h2", + "startTime": 263.68200000433717, + "endTime": 471.6820000030566, + "finished": true, + "transferSize": 14333, + "resourceSize": 53947, + "statusCode": 200, + "mimeType": "image/svg+xml", + "resourceType": "Image" + }, + { + "url": "https://www.mikescerealshack.co/_next/static/p2jwxtY4-8WEKSVkE5jXt/_buildManifest.js", + "protocol": "h2", + "startTime": 264.2039999991539, + "endTime": 344.6800000019721, + "finished": true, + "transferSize": 754, + "resourceSize": 1545, + "statusCode": 200, + "mimeType": "application/javascript", + "resourceType": "Script" + }, + { + "url": "https://www.mikescerealshack.co/_next/static/p2jwxtY4-8WEKSVkE5jXt/_ssgManifest.js", + "protocol": "h2", + "startTime": 264.6080000049551, + "endTime": 319.1399999996065, + "finished": true, + "transferSize": 286, + "resourceSize": 76, + "statusCode": 200, + "mimeType": "application/javascript", + "resourceType": "Script" + }, + { + "url": "https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;700&display=swap", + "protocol": "h2", + "startTime": 265.0290000019595, + "endTime": 459.92800000385614, + "finished": true, + "transferSize": 1006, + "resourceSize": 3282, + "statusCode": 200, + "mimeType": "text/css", + "resourceType": "Stylesheet" + }, + { + "url": "https://www.mikescerealshack.co/_next/static/chunks/1aeab0175d4c4d823d7a78205bceb5dd9cd36d32.a629f28ec97ae6e480bf.js", + "protocol": "h2", + "startTime": 425.53200000111246, + "endTime": 428.30099999991944, + "finished": true, + "transferSize": 0, + "resourceSize": 0, + "statusCode": 200, + "mimeType": "application/javascript", + "resourceType": "Other" + }, + { + "url": "https://www.mikescerealshack.co/_next/static/chunks/9ea7d3ba8dd80c65c50028121847762825088b49.dc477066508a83415fce.js", + "protocol": "h2", + "startTime": 425.9989999991376, + "endTime": 465.41300000535557, + "finished": true, + "transferSize": 3856, + "resourceSize": 0, + "statusCode": 200, + "mimeType": "application/javascript", + "resourceType": "Other" + }, + { + "url": "https://www.mikescerealshack.co/_next/static/chunks/pages/scenes/%5Bseason%5D/%5Bepisode%5D/%5Bscene%5D-526fe33be891a56314a3.js", + "protocol": "h2", + "startTime": 426.7210000034538, + "endTime": 466.01799999916693, + "finished": true, + "transferSize": 2970, + "resourceSize": 0, + "statusCode": 200, + "mimeType": "application/javascript", + "resourceType": "Other" + }, + { + "url": "https://fonts.gstatic.com/s/poppins/v15/pxiEyp8kv8JHgFVrJJfecnFHGPc.woff2", + "protocol": "h2", + "startTime": 476.93900000012945, + "endTime": 566.8710000027204, + "finished": true, + "transferSize": 8391, + "resourceSize": 7900, + "statusCode": 200, + "mimeType": "font/woff2", + "resourceType": "Font" + }, + { + "url": "https://fonts.gstatic.com/s/poppins/v15/pxiByp8kv8JHgFVrLCz7Z1xlFd2JQEk.woff2", + "protocol": "h2", + "startTime": 477.26500000135275, + "endTime": 577.7100000050268, + "finished": true, + "transferSize": 7947, + "resourceSize": 7832, + "statusCode": 200, + "mimeType": "font/woff2", + "resourceType": "Font" + }, + { + "url": "https://www.mikescerealshack.co/_next/static/chunks/9ea7d3ba8dd80c65c50028121847762825088b49.dc477066508a83415fce.js", + "protocol": "h2", + "startTime": 486.5330000029644, + "endTime": 487.7889999988838, + "finished": true, + "transferSize": 0, + "resourceSize": 8890, + "statusCode": 200, + "mimeType": "application/javascript", + "resourceType": "Script" + }, + { + "url": "https://www.mikescerealshack.co/_next/static/chunks/pages/scenes/%5Bseason%5D/%5Bepisode%5D/%5Bscene%5D-526fe33be891a56314a3.js", + "protocol": "h2", + "startTime": 486.7930000036722, + "endTime": 488.29400000249734, + "finished": true, + "transferSize": 0, + "resourceSize": 6837, + "statusCode": 200, + "mimeType": "application/javascript", + "resourceType": "Script" + }, + { + "url": "https://www.mikescerealshack.co/favicon.png", + "protocol": "h2", + "startTime": 712.082999998529, + "endTime": 747.9940000048373, + "finished": true, + "transferSize": 5323, + "resourceSize": 5164, + "statusCode": 200, + "mimeType": "image/png", + "resourceType": "Other" } - }, - { - "key": "blockingTime", - "granularity": 1, - "itemType": "ms", - "text": "Main-Thread Blocking Time", - "subItemsHeading": { - "key": "blockingTime" + ] + } + }, + "network-rtt": { + "id": "network-rtt", + "title": "Network Round Trip Times", + "description": "Network round trip times (RTT) have a large impact on performance. If the RTT to an origin is high, it's an indication that servers closer to the user could improve performance. [Learn more](https://hpbn.co/primer-on-latency-and-bandwidth/).", + "score": null, + "scoreDisplayMode": "informative", + "numericValue": 124.113, + "numericUnit": "millisecond", + "displayValue": "120 ms", + "details": { + "type": "table", + "headings": [ + { + "key": "origin", + "itemType": "text", + "text": "URL" + }, + { + "key": "rtt", + "itemType": "ms", + "granularity": 1, + "text": "Time Spent" } - } - ], - "items": [ - { - "mainThreadTime": 3.556, - "blockingTime": 0, - "transferSize": 17343, - "entity": { - "type": "link", - "text": "Google Fonts", - "url": "https://fonts.google.com/" - }, - "subItems": { - "type": "subitems", - "items": [ - { - "url": "https://fonts.gstatic.com/s/poppins/v15/pxiEyp8kv8JHgFVrJJfecnFHGPc.woff2", - "mainThreadTime": 0, - "blockingTime": 0, - "transferSize": 8390 - }, - { - "url": "https://fonts.gstatic.com/s/poppins/v15/pxiByp8kv8JHgFVrLCz7Z1xlFd2JQEk.woff2", - "mainThreadTime": 0, - "blockingTime": 0, - "transferSize": 7947 - } - ] + ], + "items": [ + { + "origin": "https://events.mikescerealshack.co", + "rtt": 124.113 + }, + { + "origin": "https://fonts.googleapis.com", + "rtt": 48.958000000000006 + }, + { + "origin": "https://www.mikescerealshack.co", + "rtt": 23.60900000000001 + }, + { + "origin": "https://fonts.gstatic.com", + "rtt": 8.997 } - } - ], - "summary": { - "wastedBytes": 17343, - "wastedMs": 0 + ] } - } - }, - "third-party-facades": { - "id": "third-party-facades", - "title": "Lazy load third-party resources with facades", - "description": "Some third-party embeds can be lazy loaded. Consider replacing them with a facade until they are required. [Learn more](https://web.dev/third-party-facades/).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "largest-contentful-paint-element": { - "id": "largest-contentful-paint-element", - "title": "Largest Contentful Paint element", - "description": "This is the largest contentful element painted within the viewport. [Learn More](https://web.dev/lighthouse-largest-contentful-paint/)", - "score": null, - "scoreDisplayMode": "informative", - "displayValue": "1 element found", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "itemType": "node", - "text": "Element" - } - ], - "items": [ - { - "node": { - "type": "node", - "lhId": "page-1-IMG", - "path": "1,HTML,1,BODY,0,DIV,0,DIV,4,IMG", - "selector": "body > div#__next > div.flex > img.h-32", - "boundingRect": { - "top": 192, - "bottom": 320, - "left": 38, - "right": 322, - "width": 284, - "height": 128 - }, - "snippet": "\"Mike's", - "nodeLabel": "Mike's Cereal Shack Logo" + }, + "network-server-latency": { + "id": "network-server-latency", + "title": "Server Backend Latencies", + "description": "Server latencies can impact web performance. If the server latency of an origin is high, it's an indication the server is overloaded or has poor backend performance. [Learn more](https://hpbn.co/primer-on-web-performance/#analyzing-the-resource-waterfall).", + "score": null, + "scoreDisplayMode": "informative", + "numericValue": 35.56999999999999, + "numericUnit": "millisecond", + "displayValue": "40 ms", + "details": { + "type": "table", + "headings": [ + { + "key": "origin", + "itemType": "text", + "text": "URL" + }, + { + "key": "serverResponseTime", + "itemType": "ms", + "granularity": 1, + "text": "Time Spent" } - } - ] - } - }, - "layout-shift-elements": { - "id": "layout-shift-elements", - "title": "Avoid large layout shifts", - "description": "These DOM elements contribute most to the CLS of the page.", - "score": null, - "scoreDisplayMode": "informative", - "displayValue": "5 elements found", - "details": { - "type": "table", - "headings": [ - { - "key": "node", - "itemType": "node", - "text": "Element" - }, - { - "key": "score", - "itemType": "numeric", - "granularity": 0.001, - "text": "CLS Contribution" - } - ], - "items": [ - { - "node": { - "type": "node", - "lhId": "page-2-DIV", - "path": "1,HTML,1,BODY,0,DIV,0,DIV,5,FORM,2,DIV", - "selector": "div#__next > div.flex > form.flex > div.font-poppins", - "boundingRect": { - "top": 482, - "bottom": 526, - "left": 58, - "right": 302, - "width": 244, - "height": 44 - }, - "snippet": "
", - "nodeLabel": "SEARCHRANDOM" - }, - "score": 0.0009176013980022934 - }, - { - "node": { - "type": "node", - "lhId": "page-3-DIV", - "path": "1,HTML,1,BODY,0,DIV,0,DIV,5,FORM,0,DIV", - "selector": "div#__next > div.flex > form.flex > div.font-poppins", - "boundingRect": { - "top": 352, - "bottom": 376, - "left": 56, - "right": 304, - "width": 248, - "height": 24 - }, - "snippet": "
", - "nodeLabel": "search any line from The Office" - }, - "score": 0.0005271573688018226 - }, - { - "node": { - "type": "node", - "lhId": "page-3-DIV", - "path": "1,HTML,1,BODY,0,DIV,0,DIV,5,FORM,0,DIV", - "selector": "div#__next > div.flex > form.flex > div.font-poppins", - "boundingRect": { - "top": 352, - "bottom": 376, - "left": 56, - "right": 304, - "width": 248, - "height": 24 - }, - "snippet": "
", - "nodeLabel": "search any line from The Office" - }, - "score": 0.0004925652526072917 - }, - { - "node": { - "type": "node", - "lhId": "page-4-DIV", - "path": "1,HTML,1,BODY,0,DIV,0,DIV,8,FOOTER,0,DIV,0,DIV", - "selector": "div.flex > footer.w-full > div.w-full > div", - "boundingRect": { - "top": 588, - "bottom": 600, - "left": 8, - "right": 352, - "width": 344, - "height": 12 - }, - "snippet": "
", - "nodeLabel": "Code © 2020-2021 Mike's Cereal Shack Authors" - }, - "score": 0.0003416178364857023 - }, - { - "node": { - "type": "node", - "lhId": "page-5-DIV", - "path": "1,HTML,1,BODY,0,DIV,0,DIV,8,FOOTER,0,DIV,1,DIV", - "selector": "div.flex > footer.w-full > div.w-full > div", - "boundingRect": { - "top": 600, - "bottom": 612, - "left": 8, - "right": 352, - "width": 344, - "height": 12 - }, - "snippet": "
", - "nodeLabel": "Content © 2005-2013 NBCUniversal Media, LLC" + ], + "items": [ + { + "origin": "https://www.mikescerealshack.co", + "serverResponseTime": 35.56999999999999 }, - "score": 0.0003416178364857023 - } - ] - } - }, - "long-tasks": { - "id": "long-tasks", - "title": "Avoid long main-thread tasks", - "description": "Lists the longest tasks on the main thread, useful for identifying worst contributors to input delay. [Learn more](https://web.dev/long-tasks-devtools/)", - "score": null, - "scoreDisplayMode": "informative", - "displayValue": "3 long tasks found", - "details": { - "type": "table", - "headings": [ - { - "key": "url", - "itemType": "url", - "text": "URL" - }, - { - "key": "startTime", - "itemType": "ms", - "granularity": 1, - "text": "Start Time" - }, - { - "key": "duration", - "itemType": "ms", - "granularity": 1, - "text": "Duration" - } - ], - "items": [ - { - "url": "https://www.mikescerealshack.co/_next/static/chunks/webpack-657a8433bac0aabd564e.js", - "duration": 86, - "startTime": 1565.546 - }, - { - "url": "https://www.mikescerealshack.co/", - "duration": 67, - "startTime": 851.4760000000001 - }, - { - "url": "https://www.mikescerealshack.co/_next/static/chunks/pages/_app-ef508c97234d1af96c47.js", - "duration": 62, - "startTime": 2341.616 - } - ] - } - }, - "no-unload-listeners": { - "id": "no-unload-listeners", - "title": "Avoids `unload` event listeners", - "description": "The `unload` event does not fire reliably and listening for it can prevent browser optimizations like the Back-Forward Cache. Consider using the `pagehide` or `visibilitychange` events instead. [Learn more](https://developers.google.com/web/updates/2018/07/page-lifecycle-api#the-unload-event)", - "score": 1, - "scoreDisplayMode": "binary" - }, - "non-composited-animations": { - "id": "non-composited-animations", - "title": "Avoid non-composited animations", - "description": "Animations which are not composited can be janky and increase CLS. [Learn more](https://web.dev/non-composited-animations)", - "score": null, - "scoreDisplayMode": "notApplicable", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "unsized-images": { - "id": "unsized-images", - "title": "Image elements do not have explicit `width` and `height`", - "description": "Set an explicit width and height on image elements to reduce layout shifts and improve CLS. [Learn more](https://web.dev/optimize-cls/#images-without-dimensions)", - "score": 0, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [ - { - "key": "url", - "itemType": "thumbnail", - "text": "" - }, - { - "key": "url", - "itemType": "url", - "text": "URL" - }, - { - "key": "node", - "itemType": "node", - "text": "Failing Elements" - } - ], - "items": [ - { - "url": "https://www.mikescerealshack.co/logo-text.svg", - "node": { - "type": "node", - "lhId": "page-1-IMG", - "path": "1,HTML,1,BODY,0,DIV,0,DIV,4,IMG", - "selector": "body > div#__next > div.flex > img.h-32", - "boundingRect": { - "top": 192, - "bottom": 320, - "left": 38, - "right": 322, - "width": 284, - "height": 128 - }, - "snippet": "\"Mike's", - "nodeLabel": "Mike's Cereal Shack Logo" - } - } - ] - } - }, - "valid-source-maps": { - "id": "valid-source-maps", - "title": "Page has valid source maps", - "description": "Source maps translate minified code to the original source code. This helps developers debug in production. In addition, Lighthouse is able to provide further insights. Consider deploying source maps to take advantage of these benefits. [Learn more](https://developers.google.com/web/tools/chrome-devtools/javascript/source-maps).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "preload-lcp-image": { - "id": "preload-lcp-image", - "title": "Preload Largest Contentful Paint image", - "description": "Preload the image used by the LCP element in order to improve your LCP time. [Learn more](https://web.dev/optimize-lcp/#preload-important-resources).", - "score": null, - "scoreDisplayMode": "notApplicable", - "details": { - "type": "opportunity", - "headings": [], - "items": [], - "overallSavingsMs": 0 - } - }, - "csp-xss": { - "id": "csp-xss", - "title": "Ensure CSP is effective against XSS attacks", - "description": "A strong Content Security Policy (CSP) significantly reduces the risk of cross-site scripting (XSS) attacks. [Learn more](https://web.dev/csp-xss/)", - "score": null, - "scoreDisplayMode": "informative", - "details": { - "type": "table", - "headings": [ - { - "key": "description", - "itemType": "text", - "subItemsHeading": { - "key": "description" - }, - "text": "Description" - }, - { - "key": "directive", - "itemType": "code", - "subItemsHeading": { - "key": "directive" + { + "origin": "https://fonts.gstatic.com", + "serverResponseTime": 20.057000000000002 }, - "text": "Directive" - }, - { - "key": "severity", - "itemType": "text", - "subItemsHeading": { - "key": "severity" + { + "origin": "https://events.mikescerealshack.co", + "serverResponseTime": 0 }, - "text": "Severity" - } - ], - "items": [ - { - "severity": "High", - "description": "No CSP found in enforcement mode" - } - ] - } - }, - "full-page-screenshot": { - "id": "full-page-screenshot", - "title": "Full-page screenshot", - "description": "A full-height screenshot of the final rendered page", - "score": null, - "scoreDisplayMode": "informative", - "details": { - "type": "full-page-screenshot", - "screenshot": { - "data": "data:image/jpeg;base64,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", - "width": 360, - "height": 640 - }, - "nodes": { - "page-0-IMG": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "page-1-IMG": { - "top": 192, - "bottom": 320, - "left": 38, - "right": 322, - "width": 284, - "height": 128 - }, - "page-2-DIV": { - "top": 482, - "bottom": 526, - "left": 58, - "right": 302, - "width": 244, - "height": 44 - }, - "page-3-DIV": { - "top": 352, - "bottom": 376, - "left": 56, - "right": 304, - "width": 248, - "height": 24 - }, - "page-4-DIV": { - "top": 588, - "bottom": 600, - "left": 8, - "right": 352, - "width": 344, - "height": 12 - }, - "page-5-DIV": { - "top": 600, - "bottom": 612, - "left": 8, - "right": 352, - "width": 344, - "height": 12 - }, - "9-0-A": { - "top": 192, - "bottom": 215, - "left": 24, - "right": 121, - "width": 97, - "height": 23 - }, - "9-1-A": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-2-A": { - "top": 128, - "bottom": 151, - "left": 24, - "right": 82, - "width": 58, - "height": 23 - }, - "9-3-A": { - "top": 160, - "bottom": 183, - "left": 24, - "right": 148, - "width": 124, - "height": 23 - }, - "9-4-A": { - "top": 224, - "bottom": 247, - "left": 24, - "right": 134, - "width": 110, - "height": 23 - }, - "9-5-A": { - "top": 256, - "bottom": 279, - "left": 24, - "right": 114, - "width": 90, - "height": 23 - }, - "9-6-A": { - "top": 288, - "bottom": 311, - "left": 24, - "right": 160, - "width": 136, - "height": 23 - }, - "9-7-A": { - "top": 320, - "bottom": 343, - "left": 24, - "right": 139, - "width": 115, - "height": 23 - }, - "9-8-A": { - "top": 482, - "bottom": 526, - "left": 183, - "right": 302, - "width": 119, - "height": 44 - }, - "9-9-A": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-10-A": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-11-path": { - "top": 20, - "bottom": 44, - "left": 315, - "right": 336, - "width": 21, - "height": 24 - }, - "9-12-BODY": { - "top": 0, - "bottom": 640, - "left": 0, - "right": 360, - "width": 360, - "height": 640 - }, - "9-13-LINK": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-14-LINK": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-15-LINK": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-16-LINK": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-17-LINK": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-18-LINK": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-19-LINK": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-20-LINK": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-21-LINK": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-22-LINK": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-23-LINK": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-24-LINK": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-25-LINK": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-26-LINK": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-27-LINK": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-28-LINK": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-29-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-30-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-31-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-32-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-33-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-34-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-35-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-36-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-37-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-38-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-39-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-40-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-41-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-42-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-43-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-44-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-45-META": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-46-SCRIPT": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-47-SCRIPT": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-48-SCRIPT": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-49-SCRIPT": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-50-SCRIPT": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-51-SCRIPT": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-52-SCRIPT": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-53-SCRIPT": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-54-SCRIPT": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-55-SCRIPT": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-56-SCRIPT": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-57-SCRIPT": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-58-SCRIPT": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-59-SCRIPT": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-60-SCRIPT": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-61-SCRIPT": { - "top": 0, - "bottom": 0, - "left": 0, - "right": 0, - "width": 0, - "height": 0 - }, - "9-62-INPUT": { - "top": 392, - "bottom": 450, - "left": 20, - "right": 340, - "width": 320, - "height": 58 - }, - "9-63-BUTTON": { - "top": 482, - "bottom": 526, - "left": 58, - "right": 167, - "width": 109, - "height": 44 - } - } - } - }, - "script-treemap-data": { - "id": "script-treemap-data", - "title": "Script Treemap Data", - "description": "Used for treemap app", - "score": null, - "scoreDisplayMode": "informative", - "details": { - "type": "treemap-data", - "nodes": [ - { - "name": "https://www.mikescerealshack.co/", - "resourceBytes": 582 - }, - { - "name": "https://events.mikescerealshack.co/js/index.js", - "resourceBytes": 1341, - "unusedBytes": 193 - }, - { - "name": "https://www.mikescerealshack.co/_next/static/chunks/polyfills-e893e522365b6e0e5fa4.js", - "resourceBytes": 85 - }, - { - "name": "https://www.mikescerealshack.co/_next/static/chunks/main-1f8481d632114a408557.js", - "resourceBytes": 17656, - "unusedBytes": 4493 - }, - { - "name": "https://www.mikescerealshack.co/_next/static/chunks/webpack-657a8433bac0aabd564e.js", - "resourceBytes": 2351, - "unusedBytes": 1109 - }, - { - "name": "https://www.mikescerealshack.co/_next/static/chunks/framework.9d524150d48315f49e80.js", - "resourceBytes": 130277, - "unusedBytes": 47403 - }, - { - "name": "https://www.mikescerealshack.co/_next/static/chunks/commons.49455e4fa8cc3f51203f.js", - "resourceBytes": 44060, - "unusedBytes": 20326 - }, - { - "name": "https://www.mikescerealshack.co/_next/static/chunks/pages/_app-ef508c97234d1af96c47.js", - "resourceBytes": 1235, - "unusedBytes": 360 - }, - { - "name": "https://www.mikescerealshack.co/_next/static/chunks/1aeab0175d4c4d823d7a78205bceb5dd9cd36d32.a629f28ec97ae6e480bf.js", - "resourceBytes": 67673, - "unusedBytes": 31755 - }, - { - "name": "https://www.mikescerealshack.co/_next/static/chunks/pages/index-37980adf97404e76e41a.js", - "resourceBytes": 1856, - "unusedBytes": 109 - }, - { - "name": "https://www.mikescerealshack.co/_next/static/p2jwxtY4-8WEKSVkE5jXt/_buildManifest.js", - "resourceBytes": 1545, - "unusedBytes": 0 - }, - { - "name": "https://www.mikescerealshack.co/_next/static/p2jwxtY4-8WEKSVkE5jXt/_ssgManifest.js", - "resourceBytes": 76, - "unusedBytes": 0 - }, - { - "name": "https://www.mikescerealshack.co/_next/static/chunks/9ea7d3ba8dd80c65c50028121847762825088b49.dc477066508a83415fce.js", - "resourceBytes": 8890, - "unusedBytes": 7978 - }, - { - "name": "https://www.mikescerealshack.co/_next/static/chunks/pages/scenes/%5Bseason%5D/%5Bepisode%5D/%5Bscene%5D-526fe33be891a56314a3.js", - "resourceBytes": 6837, - "unusedBytes": 6340 - } - ] - } - }, - "pwa-cross-browser": { - "id": "pwa-cross-browser", - "title": "Site works cross-browser", - "description": "To reach the most number of users, sites should work across every major browser. [Learn more](https://web.dev/pwa-cross-browser/).", - "score": null, - "scoreDisplayMode": "manual" - }, - "pwa-page-transitions": { - "id": "pwa-page-transitions", - "title": "Page transitions don't feel like they block on the network", - "description": "Transitions should feel snappy as you tap around, even on a slow network. This experience is key to a user's perception of performance. [Learn more](https://web.dev/pwa-page-transitions/).", - "score": null, - "scoreDisplayMode": "manual" - }, - "pwa-each-page-has-url": { - "id": "pwa-each-page-has-url", - "title": "Each page has a URL", - "description": "Ensure individual pages are deep linkable via URL and that URLs are unique for the purpose of shareability on social media. [Learn more](https://web.dev/pwa-each-page-has-url/).", - "score": null, - "scoreDisplayMode": "manual" - }, - "accesskeys": { - "id": "accesskeys", - "title": "`[accesskey]` values are unique", - "description": "Access keys let users quickly focus a part of the page. For proper navigation, each access key must be unique. [Learn more](https://web.dev/accesskeys/).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-allowed-attr": { - "id": "aria-allowed-attr", - "title": "`[aria-*]` attributes match their roles", - "description": "Each ARIA `role` supports a specific subset of `aria-*` attributes. Mismatching these invalidates the `aria-*` attributes. [Learn more](https://web.dev/aria-allowed-attr/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "aria-command-name": { - "id": "aria-command-name", - "title": "`button`, `link`, and `menuitem` elements have accessible names", - "description": "When an element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more](https://web.dev/aria-name/).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-hidden-body": { - "id": "aria-hidden-body", - "title": "`[aria-hidden=\"true\"]` is not present on the document ``", - "description": "Assistive technologies, like screen readers, work inconsistently when `aria-hidden=\"true\"` is set on the document ``. [Learn more](https://web.dev/aria-hidden-body/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "aria-hidden-focus": { - "id": "aria-hidden-focus", - "title": "`[aria-hidden=\"true\"]` elements do not contain focusable descendents", - "description": "Focusable descendents within an `[aria-hidden=\"true\"]` element prevent those interactive elements from being available to users of assistive technologies like screen readers. [Learn more](https://web.dev/aria-hidden-focus/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "aria-input-field-name": { - "id": "aria-input-field-name", - "title": "ARIA input fields have accessible names", - "description": "When an input field doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more](https://web.dev/aria-name/).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-meter-name": { - "id": "aria-meter-name", - "title": "ARIA `meter` elements have accessible names", - "description": "When an element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more](https://web.dev/aria-name/).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-progressbar-name": { - "id": "aria-progressbar-name", - "title": "ARIA `progressbar` elements have accessible names", - "description": "When a `progressbar` element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more](https://web.dev/aria-name/).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-required-attr": { - "id": "aria-required-attr", - "title": "`[role]`s have all required `[aria-*]` attributes", - "description": "Some ARIA roles have required attributes that describe the state of the element to screen readers. [Learn more](https://web.dev/aria-required-attr/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "aria-required-children": { - "id": "aria-required-children", - "title": "Elements with an ARIA `[role]` that require children to contain a specific `[role]` have all required children.", - "description": "Some ARIA parent roles must contain specific child roles to perform their intended accessibility functions. [Learn more](https://web.dev/aria-required-children/).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-required-parent": { - "id": "aria-required-parent", - "title": "`[role]`s are contained by their required parent element", - "description": "Some ARIA child roles must be contained by specific parent roles to properly perform their intended accessibility functions. [Learn more](https://web.dev/aria-required-parent/).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-roles": { - "id": "aria-roles", - "title": "`[role]` values are valid", - "description": "ARIA roles must have valid values in order to perform their intended accessibility functions. [Learn more](https://web.dev/aria-roles/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "aria-toggle-field-name": { - "id": "aria-toggle-field-name", - "title": "ARIA toggle fields have accessible names", - "description": "When a toggle field doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more](https://web.dev/aria-name/).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-tooltip-name": { - "id": "aria-tooltip-name", - "title": "ARIA `tooltip` elements have accessible names", - "description": "When an element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more](https://web.dev/aria-name/).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-treeitem-name": { - "id": "aria-treeitem-name", - "title": "ARIA `treeitem` elements have accessible names", - "description": "When an element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more](https://web.dev/aria-name/).", - "score": null, - "scoreDisplayMode": "notApplicable" - }, - "aria-valid-attr-value": { - "id": "aria-valid-attr-value", - "title": "`[aria-*]` attributes have valid values", - "description": "Assistive technologies, like screen readers, can't interpret ARIA attributes with invalid values. [Learn more](https://web.dev/aria-valid-attr-value/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "aria-valid-attr": { - "id": "aria-valid-attr", - "title": "`[aria-*]` attributes are valid and not misspelled", - "description": "Assistive technologies, like screen readers, can't interpret ARIA attributes with invalid names. [Learn more](https://web.dev/aria-valid-attr/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "button-name": { - "id": "button-name", - "title": "Buttons have an accessible name", - "description": "When a button doesn't have an accessible name, screen readers announce it as \"button\", making it unusable for users who rely on screen readers. [Learn more](https://web.dev/button-name/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "bypass": { - "id": "bypass", - "title": "The page contains a heading, skip link, or landmark region", - "description": "Adding ways to bypass repetitive content lets keyboard users navigate the page more efficiently. [Learn more](https://web.dev/bypass/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "color-contrast": { - "id": "color-contrast", - "title": "Background and foreground colors have a sufficient contrast ratio", - "description": "Low-contrast text is difficult or impossible for many users to read. [Learn more](https://web.dev/color-contrast/).", - "score": 1, - "scoreDisplayMode": "binary", - "details": { - "type": "table", - "headings": [], - "items": [] - } - }, - "definition-list": { - "id": "definition-list", - "title": "`
`'s contain only properly-ordered `
` and `
` groups, `