web-performance
4
总安装量
4
周安装量
#51897
全站排名
安装命令
npx skills add https://github.com/1mangesh1/dev-skills-collection --skill web-performance
Agent 安装分布
opencode
4
gemini-cli
4
claude-code
4
cursor
4
kilo
3
github-copilot
3
Skill 文档
Web Performance Optimization
Strategies and techniques for optimizing web application performance and user experience.
Core Web Vitals
Largest Contentful Paint (LCP)
- Time to largest content element visible
- Target: < 2.5 seconds
- Optimize: image size, server response, render-blocking resources
First Input Delay (FID)
- Time for page to respond to user input
- Target: < 100 milliseconds
- Optimize: reduce JavaScript, break up tasks
Cumulative Layout Shift (CLS)
- Visual stability of page
- Target: < 0.1
- Optimize: reserve space for images/ads, avoid layout disruptions
Performance Metrics
| Metric | Target | Tool |
|---|---|---|
| First Contentful Paint (FCP) | < 1.8s | Chrome DevTools |
| Largest Contentful Paint (LCP) | < 2.5s | Lighthouse |
| Time to Interactive (TTI) | < 3.8s | WebPageTest |
| Total Blocking Time (TBT) | < 150ms | Lighthouse |
Optimization Techniques
Image Optimization
<!-- Lazy loading -->
<img src="image.jpg" loading="lazy">
<!-- Responsive images -->
<picture>
<source media="(max-width: 500px)" srcset="small.jpg">
<img src="large.jpg" alt="Description">
</picture>
<!-- Modern formats -->
<picture>
<source type="image/webp" srcset="image.webp">
<img src="image.jpg" alt="Description">
</picture>
Code Splitting
// Dynamic import
const module = await import('./heavy-module');
// React lazy loading
const Component = React.lazy(() => import('./Component'));
Caching Strategies
- Browser cache: Set Cache-Control headers
- Service workers: Offline support and cache control
- CDN: Distribute content geographically
- Redis: Server-side caching
Minification & Compression
- Minify CSS, JavaScript, HTML
- Gzip compression
- Brotli for better compression
- Remove unused code (tree shaking)
Performance Audit Checklist
- Optimize images (format, size, lazy load)
- Minify CSS, JS, HTML
- Enable gzip/brotli compression
- Implement code splitting
- Cache static assets
- Use CDN for assets
- Optimize critical rendering path
- Remove unused dependencies
- Lazy load non-critical routes
- Optimize fonts (subset, preload)
- Implement service workers
- Monitor Core Web Vitals
Tools for Analysis
- Chrome Lighthouse – Audit performance
- WebPageTest – Detailed analysis
- Speedcurve – Continuous monitoring
- Bundle Analyzer – Webpack/Rollup bundle size
- Sentry – Error and performance monitoring
Best Practices
- Measure First – Establish baseline metrics
- Prioritize – Fix biggest issues first
- Test Impact – Verify improvements
- Monitor Continuously – Track over time
- User-Centric – Focus on real user metrics
Example Performance Budget
JavaScript: < 200KB
CSS: < 50KB
Images: < 500KB total
Fonts: < 100KB
Total: < 850KB
References
- Web Vitals by Google
- Chrome Developers Performance
- MDN Web Performance
- Lighthouse Documentation
- WebPageTest Blog