
Web Performance Optimization
Measure Core Web Vitals and apply a prioritized fix list when your site feels slow or fails Lighthouse before launch.
Overview
Web Performance Optimization is an agent skill most often used in Ship (also Build frontend, Launch SEO) that systematically measures Core Web Vitals and prioritizes loading and runtime fixes for web apps.
Install
npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill web-performance-optimizationWhat is this skill?
- Three-step flow: baseline metrics, issue identification, then prioritized optimizations
- Core Web Vitals focus: LCP, FID, and CLS measurement and remediation
- Covers JavaScript bundle size, render-blocking resources, and main-thread long tasks
- Image and asset optimization plus HTTP caching header strategies
- Lighthouse audits, network waterfall analysis, and Time to Interactive (TTI) improvement
- 3-step workflow: measure, identify issues, prioritize optimizations
Adoption & trust: 2.2k installs on skills.sh; 40.1k GitHub stars; 2/3 security scanners passed (skills.sh audits).
What problem does it solve?
Your site or app loads slowly and you lack a baseline and ordered list of what to fix first.
Who is it for?
Solo builders shipping Next.js, React, or marketing sites who need Lighthouse-ready Core Web Vitals before launch or after a traffic spike.
Skip if: Native-only mobile apps with no web surface, or teams that only need backend API latency tuning without a browser bundle.
When should I use this skill?
Website or app loading slowly; optimizing Core Web Vitals; reducing bundle size; improving TTI; optimizing images; caching; debugging bottlenecks; preparing for performance audits.
What do I get? / Deliverables
You get measured baselines, named bottlenecks, and a prioritized optimization plan you can implement or hand to your coding agent.
- Baseline performance metrics
- Prioritized issue list
- Optimization action plan
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Performance tuning belongs on the Ship shelf because it gates release readiness and SEO-facing quality, even though some fixes happen during Build. Perf is the canonical subphase for bundle size, caching, runtime bottlenecks, and audit prep—not generic security or code review.
Where it fits
Trim initial JS and lazy-load routes while implementing a new dashboard shell.
Run Lighthouse and waterfall analysis the week before turning on paid traffic.
Stabilize LCP and CLS on money pages after Google Search Console flags poor URLs.
Speed up blog and docs templates that drive organic signups.
How it compares
Use instead of one-off “make it faster” prompts when you want a measure-first audit workflow aligned to Core Web Vitals.
Common Questions / FAQ
Who is web-performance-optimization for?
Indie developers and small teams shipping web products who own frontend delivery and need structured perf work without hiring a dedicated performance engineer.
When should I use web-performance-optimization?
Use when load time is slow, bundles are heavy, images are bloated, or you are optimizing LCP, FID, and CLS; also during Ship perf hardening and Launch SEO readiness when rankings depend on page experience.
Is web-performance-optimization safe to install?
It is procedural guidance for measurement and code changes; review the Security Audits panel on this page and treat any suggested scripts or third-party tooling as you would any community skill before running them in production.
SKILL.md
READMESKILL.md - Web Performance Optimization
# Web Performance Optimization ## Overview Help developers optimize website and web application performance to improve user experience, SEO rankings, and conversion rates. This skill provides systematic approaches to measure, analyze, and improve loading speed, runtime performance, and Core Web Vitals metrics. ## When to Use This Skill - Use when website or app is loading slowly - Use when optimizing for Core Web Vitals (LCP, FID, CLS) - Use when reducing JavaScript bundle size - Use when improving Time to Interactive (TTI) - Use when optimizing images and assets - Use when implementing caching strategies - Use when debugging performance bottlenecks - Use when preparing for performance audits ## How It Works ### Step 1: Measure Current Performance I'll help you establish baseline metrics: - Run Lighthouse audits - Measure Core Web Vitals (LCP, FID, CLS) - Check bundle sizes - Analyze network waterfall - Identify performance bottlenecks ### Step 2: Identify Issues Analyze performance problems: - Large JavaScript bundles - Unoptimized images - Render-blocking resources - Slow server response times - Missing caching headers - Layout shifts - Long tasks blocking main thread ### Step 3: Prioritize Optimizations Focus on high-impact improvements: - Critical rendering path optimization - Code splitting and lazy loading - Image optimization - Caching strategies - Third-party script optimization ### Step 4: Implement Optimizations Apply performance improvements: - Optimize assets (images, fonts, CSS, JS) - Implement code splitting - Add caching headers - Lazy load non-critical resources - Optimize critical rendering path ### Step 5: Verify Improvements Measure impact of changes: - Re-run Lighthouse audits - Compare before/after metrics - Monitor real user metrics (RUM) - Test on different devices and networks ## Examples ### Example 1: Optimizing Core Web Vitals ```markdown ## Performance Audit Results ### Current Metrics (Before Optimization) - **LCP (Largest Contentful Paint):** 4.2s ❌ (should be < 2.5s) - **FID (First Input Delay):** 180ms ❌ (should be < 100ms) - **CLS (Cumulative Layout Shift):** 0.25 ❌ (should be < 0.1) - **Lighthouse Score:** 62/100 ### Issues Identified 1. **LCP Issue:** Hero image (2.5MB) loads slowly 2. **FID Issue:** Large JavaScript bundle (850KB) blocks main thread 3. **CLS Issue:** Images without dimensions cause layout shifts ### Optimization Plan #### Fix LCP (Largest Contentful Paint) **Problem:** Hero image is 2.5MB and loads slowly **Solutions:** \`\`\`html <!-- Before: Unoptimized image --> <img src="/hero.jpg" alt="Hero"> <!-- After: Optimized with modern formats --> <picture> <source srcset="/hero.avif" type="image/avif"> <source srcset="/hero.webp" type="image/webp"> <img src="/hero.jpg" alt="Hero" width="1200" height="600" loading="eager" fetchpriority="high" > </picture> \`\`\` **Additional optimizations:** - Compress image to < 200KB - Use CDN for faster delivery - Preload hero image: `<link rel="preload" as="image" href="/hero.avif">` #### Fix FID (First Input Delay) **Problem:** 850KB JavaScript bundle blocks main thread **Solutions:** 1. **Code Splitting:** \`\`\`javascript // Before: Everything in one bundle import { HeavyComponent } from './HeavyComponent'; import { Analytics } from './analytics'; import { ChatWidget } from './chat'; // After: Lazy load non-critical code const HeavyComponent = lazy(() => import('./HeavyComponent')); const ChatWidget = lazy(() => import('./chat')); // Load analytics after page interactive if (typeof window !== 'undefined') { window.addEventListener('load', () => { import('./analytics').then(({ Analytics }) => { Analytic