library/specializations/ux-ui-design/skills/lighthouse/SKILL.md
Performance and accessibility auditing using Google Lighthouse. Measure Core Web Vitals, accessibility scores, SEO, and best practices. Generate reports and track performance budgets.
npx skillsauth add a5c-ai/babysitter lighthouseInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are lighthouse - a specialized skill for comprehensive web auditing using Google Lighthouse, providing performance, accessibility, SEO, and best practices analysis.
This skill enables AI-powered web auditing including:
lighthouse CLI or npm packageMeasure and analyze Core Web Vitals:
{
"coreWebVitals": {
"LCP": {
"value": 2.1,
"unit": "s",
"rating": "good",
"threshold": { "good": 2.5, "poor": 4.0 },
"description": "Largest Contentful Paint"
},
"INP": {
"value": 150,
"unit": "ms",
"rating": "good",
"threshold": { "good": 200, "poor": 500 },
"description": "Interaction to Next Paint"
},
"CLS": {
"value": 0.05,
"unit": "",
"rating": "good",
"threshold": { "good": 0.1, "poor": 0.25 },
"description": "Cumulative Layout Shift"
},
"FCP": {
"value": 1.2,
"unit": "s",
"rating": "good",
"description": "First Contentful Paint"
},
"TTFB": {
"value": 0.3,
"unit": "s",
"rating": "good",
"description": "Time to First Byte"
}
}
}
Generate scores across all Lighthouse categories:
{
"scores": {
"performance": {
"score": 92,
"displayValue": "92",
"color": "green"
},
"accessibility": {
"score": 98,
"displayValue": "98",
"color": "green"
},
"bestPractices": {
"score": 95,
"displayValue": "95",
"color": "green"
},
"seo": {
"score": 100,
"displayValue": "100",
"color": "green"
},
"pwa": {
"score": 85,
"displayValue": "85",
"color": "orange"
}
}
}
Detailed performance breakdown:
{
"performanceMetrics": {
"firstContentfulPaint": 1200,
"largestContentfulPaint": 2100,
"totalBlockingTime": 150,
"cumulativeLayoutShift": 0.05,
"speedIndex": 1800,
"timeToInteractive": 2500
},
"opportunities": [
{
"id": "unused-css-rules",
"title": "Remove unused CSS",
"description": "Remove dead rules from stylesheets",
"savings": "120 KiB",
"estimatedSavings": 800
},
{
"id": "render-blocking-resources",
"title": "Eliminate render-blocking resources",
"resources": [
{ "url": "/styles/main.css", "transferSize": 45000 }
],
"estimatedSavings": 500
}
],
"diagnostics": [
{
"id": "dom-size",
"title": "Avoid an excessive DOM size",
"description": "Browser engineers recommend pages contain fewer than ~1,500 DOM nodes",
"value": 1823,
"rating": "warning"
}
]
}
Comprehensive accessibility analysis:
{
"accessibility": {
"score": 98,
"audits": {
"passed": [
"color-contrast",
"document-title",
"html-has-lang",
"meta-viewport"
],
"failed": [
{
"id": "image-alt",
"title": "Image elements do not have [alt] attributes",
"impact": "critical",
"nodes": [
{
"html": "<img src=\"hero.jpg\">",
"selector": ".hero-image > img"
}
],
"recommendation": "Add descriptive alt text to images"
}
],
"notApplicable": ["frame-title", "video-caption"]
}
}
}
SEO optimization recommendations:
{
"seo": {
"score": 100,
"audits": {
"passed": [
{ "id": "document-title", "title": "Document has a <title> element" },
{ "id": "meta-description", "title": "Document has a meta description" },
{ "id": "http-status-code", "title": "Page has successful HTTP status code" },
{ "id": "is-crawlable", "title": "Page isn't blocked from indexing" }
],
"opportunities": [
{
"id": "link-text",
"title": "Links do not have descriptive text",
"nodes": [
{ "html": "<a href=\"/more\">Click here</a>" }
]
}
]
}
}
}
Track against defined performance budgets:
{
"budget": {
"resourceSizes": [
{
"resourceType": "script",
"budget": 300000,
"actual": 285000,
"status": "pass"
},
{
"resourceType": "stylesheet",
"budget": 100000,
"actual": 125000,
"status": "fail",
"overage": 25000
},
{
"resourceType": "image",
"budget": 500000,
"actual": 450000,
"status": "pass"
}
],
"timings": [
{
"metric": "largest-contentful-paint",
"budget": 2500,
"actual": 2100,
"status": "pass"
}
]
}
}
# Basic audit
lighthouse https://example.com --output json --output-path report.json
# Desktop audit
lighthouse https://example.com --preset desktop
# Specific categories
lighthouse https://example.com --only-categories=performance,accessibility
# With performance budget
lighthouse https://example.com --budget-path=budget.json
# Multiple runs for accuracy
lighthouse https://example.com --chrome-flags="--headless" -n 3
This skill can leverage the following MCP servers:
| Server | Description | Installation | |--------|-------------|--------------| | Lighthouse MCP Server (danielsogl) | 13+ tools for comprehensive auditing | GitHub | | Lighthouse MCP (priyankark) | Agentic optimization loops | GitHub |
This skill integrates with the following processes:
responsive-design.js - Performance testing across viewportsaccessibility-audit.js - Accessibility scoringcomponent-library.js - Component performance impactWhen executing operations, provide structured output:
{
"operation": "audit",
"url": "https://example.com",
"device": "mobile",
"status": "success",
"scores": {
"performance": 92,
"accessibility": 98,
"bestPractices": 95,
"seo": 100
},
"coreWebVitals": {
"LCP": { "value": 2.1, "rating": "good" },
"INP": { "value": 150, "rating": "good" },
"CLS": { "value": 0.05, "rating": "good" }
},
"artifacts": ["report.json", "report.html"]
}
development
Model documentation skill for generating model cards following Google's model card framework.
development
MLflow integration skill for experiment tracking, model registry, and artifact management. Enables LLMs to log experiments, compare runs, manage model lifecycle, and retrieve artifacts through the MLflow API.
data-ai
LIME-based local explanation skill for individual predictions across tabular, text, and image data.
devops
Kubeflow Pipelines skill for ML workflow orchestration, component management, and Kubernetes-native ML.