Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsBlogPro
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges
  • Chrome Extension
  • Skill Manager

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Web Performance

ASecurity

Make websites fast: Core Web Vitals, loading optimization, rendering performance, and measurement workflows. Use when pages are slow or targets must be met.

2 stars
0 votes
0 copies
0 views
Added 9/29/2026
ai-agentsjavascriptgojavabashbackendperformance

Security Analysis

A100/100

Scanned 9/29/2026

$npx -y skills add aicodedecode/awesome-muse-skills --skill web-performance --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Web Performance?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Web Performance
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/aicodedecode-web-performance/badge)](https://www.skillsdirectory.com/skills/aicodedecode-web-performance)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
Files
SKILL.md
---
name: web-performance
description: Make websites fast: Core Web Vitals, loading optimization, rendering performance, and measurement workflows. Use when pages are slow or targets must be met.
category: web-development
---

# Web Performance

A practical guide to web performance: Core Web Vitals, the loading pipeline (and what blocks it), rendering performance, image/font/JS optimization, and a measurement workflow that finds real bottlenecks instead of chasing scores.

## Overview

Performance = **how fast the page becomes usable**, measured by Core Web Vitals: **LCP** (largest contentful paint — main content visible, <2.5s), **INP** (interaction to next paint — responsiveness, <200ms), **CLS** (cumulative layout shift — visual stability, <0.1). Optimize in that priority order for most sites. Measure field data (CrUX/real users) over lab scores — lab lies about networks and devices.

## When to use

- Slow pages: diagnosing LCP/INP/CLS failures.
- Performance budgets for new projects.
- Image, font, and JavaScript optimization.
- Setting up real-user monitoring (RUM).

## Core concepts

- **Critical rendering path.** HTML → CSSOM → render tree → layout → paint. Anything blocking (render-blocking CSS/JS, slow server) delays everything. Inline critical CSS, defer the rest.
- **LCP.** Usually a hero image or headline. Fix: preload the LCP image (`fetchpriority="high"`), compress + modern format, responsive sizes, fast server (TTFB), no lazy-loading the LCP element.
- **INP.** Long tasks blocking the main thread (>50ms). Fix: code-split, defer non-critical JS, break up long tasks (`setTimeout`/scheduler yielding), move work off-thread (Web Workers).
- **CLS.** Layout shifts from late-loading images/ads/fonts. Fix: explicit width/height (or aspect-ratio) on media, reserve space for dynamic content, `font-display: swap` with fallback metrics.
- **Resource hints.** `preconnect` (origins), `preload` (critical resources), `prefetch` (next navigation), `dns-prefetch`. Powerful, easy to overuse — hint only what you're sure about.
- **Caching.** Long-lived hashed assets (`immutable`), short HTML. CDN for static. Service worker for repeat visits.
- **RUM vs lab.** Lab (Lighthouse) for iteration; field (CrUX, web-vitals library) for truth. Optimize what real users experience on real devices/networks.

## Practical workflow

**1. Measure first.**
```bash
npx lighthouse https://example.com --view
# Plus: PageSpeed Insights (field data), web-vitals JS library in production
```
Identify the failing metric and its dominant contributor (Lighthouse points at it: "LCP element", "longest tasks", "shift sources").

**2. Fix LCP.**
- Preload hero image; `fetchpriority="high"`; never `loading="lazy"` on it.
- Serve AVIF/WebP at right sizes (`srcset`); compress aggressively.
- Reduce TTFB: CDN, edge rendering, faster backend for the HTML.

**3. Fix INP.**
- Find long tasks (DevTools Performance → long task markers); split or defer.
- `import()` route-level code splitting; third-party scripts async/defer or partytown/worker.
- Debounce expensive handlers; avoid forced synchronous layouts in scroll/resize.

**4. Fix CLS.**
- `width`/`height` or `aspect-ratio` on all images/embeds.
- Reserve space for ads/dynamic inserts; skeleton loaders matching final layout.
- Web fonts: `font-display: swap` + `size-adjust` fallback to minimize swap shift.

**5. Budgets.** Set and enforce: e.g., JS < 200KB gzipped per route, images < 1MB total, Lighthouse performance ≥ 90. CI check via Lighthouse CI.

**6. Monitor.** web-vitals library → analytics; alert on regressions per deploy. Performance is a feature with a maintenance cost — monitor or it rots.

## Common pitfalls

- **Optimizing without measuring.** Guessing at bottlenecks. Profile first; the slow thing is rarely what you assume.
- **Lab-score tunnel vision.** Lighthouse 100 on desktop ≠ fast for users on 4G Moto G. Weight field data.
- **Unoptimized images.** The #1 web performance bug, perennially. Modern formats, responsive sizes, compression, lazy-load below fold.
- **JS bloat.** Shipping megabytes of JS for kilobytes of interactivity. Audit with bundle analyzer; question every dependency.
- **Render-blocking everything.** Synchronous scripts and un-inlined CSS in `<head>`. Defer/async scripts; inline critical CSS.
- **Third-party sprawl.** Each tag manager/widget/chat adds requests + main-thread cost. Audit quarterly; lazy-load or remove.
- **Font FOIT/FOUT pain.** Blocking text on web fonts (FOIT) or jarring swaps. `font-display: swap` + preloaded key fonts + metric-matched fallbacks.
- **No performance budget.** Without a budget, every sprint adds weight. Budgets in CI make performance a constraint, not a wish.
- **CLS from cookie banners/ads.** Late-injected UI shifting content. Reserve space or overlay without reflowing content.

Attribution

aicodedecodeaicodedecode
View sourceSee grades on GitHubMore from aicodedecode →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Caveman

Terse caveman voice: answer first, fluff gone, every technical fact kept. Use for /caveman, "caveman mode", "talk like caveman", "be brief", "less tokens". Stays on until "stop caveman" or "normal mode".

1100021 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

698621 votes

Writing Skills

Create and manage Claude Code skills in HASH repository following Anthropic best practices. Use when creating new skills, modifying skill-rules.json, understanding trigger patterns, working with hooks, debugging skill activation, or implementing progressive disclosure. Covers skill structure, YAML frontmatter, trigger types (keywords, intent patterns), UserPromptSubmit hook, and the 500-line rule. Includes validation and debugging with SKILL_DEBUG. Examples include rust-error-stack, cargo-dep...

3931 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3421 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Amp, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Grok Build, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

741 votes
View all in ai-agents →