Skip to content

Commit 1bb0c8a

Browse files
committed
chore: add a helper lighthouse script
1 parent 62b9475 commit 1bb0c8a

4 files changed

Lines changed: 53 additions & 29 deletions

File tree

.lighthouserc.cjs

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
const fs = require('fs')
2+
3+
// Auto-detect Chrome executable path
4+
function findChrome() {
5+
const paths = [
6+
// Linux
7+
'/usr/bin/google-chrome-stable',
8+
'/usr/bin/google-chrome',
9+
'/usr/bin/chromium-browser',
10+
// macOS
11+
'/Applications/Google Chrome.app/Contents/MacOS/Google Chrome',
12+
// Windows
13+
'C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe',
14+
'C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe',
15+
]
16+
17+
for (const p of paths) {
18+
if (fs.existsSync(p)) return p
19+
}
20+
21+
return undefined
22+
}
23+
24+
module.exports = {
25+
ci: {
26+
collect: {
27+
startServerCommand: 'pnpm preview',
28+
startServerReadyPattern: 'Listening',
29+
url: [
30+
'http://localhost:3000/',
31+
'http://localhost:3000/search?q=nuxt',
32+
'http://localhost:3000/nuxt',
33+
],
34+
numberOfRuns: 1,
35+
chromePath: findChrome(),
36+
puppeteerScript: './lighthouse-setup.cjs',
37+
settings: {
38+
onlyCategories: ['accessibility'],
39+
skipAudits: ['valid-source-maps'],
40+
},
41+
},
42+
assert: {
43+
assertions: {
44+
'categories:accessibility': ['warn', { minScore: 1 }],
45+
},
46+
},
47+
upload: {
48+
target: 'temporary-public-storage',
49+
},
50+
},
51+
}

.lighthouserc.json

Lines changed: 0 additions & 27 deletions
This file was deleted.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
*/
88

99
/** @param {import('puppeteer').Browser} browser */
10-
export default async function setup(browser, { url }) {
10+
module.exports = async function setup(browser, { url }) {
1111
const colorMode = process.env.LIGHTHOUSE_COLOR_MODE || 'dark'
1212
const page = await browser.newPage()
1313

scripts/lighthouse-a11y.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# Run Lighthouse accessibility tests in both light and dark mode
33
#
44
# This script runs lhci autorun twice, once for each color mode.
5-
# The LIGHTHOUSE_COLOR_MODE env var is read by lighthouse-setup.js
5+
# The LIGHTHOUSE_COLOR_MODE env var is read by lighthouse-setup.cjs
66
# to set the appropriate theme before each audit.
77

88
set -e

0 commit comments

Comments
 (0)