mindrally

performance-optimization

3
0
# Install this skill:
npx skills add Mindrally/skills --skill "performance-optimization"

Install specific skill from multi-skill repository

# Description

Performance optimization guidelines for web development including server-side rendering, CSS best practices, and JavaScript optimization

# SKILL.md


name: performance-optimization
description: Performance optimization guidelines for web development including server-side rendering, CSS best practices, and JavaScript optimization


Performance Optimization

Apply these performance optimization principles when developing web applications, themes, and frontend interfaces.

Core Performance Principles

  • Prioritize server-side rendering as a first principle, as opposed to client-side JavaScript
  • Minimize client-side JavaScript to reduce bundle size and improve Time to Interactive
  • Optimize for Core Web Vitals: LCP, FID, and CLS
  • Measure performance continuously and establish baselines
  • Consider performance impact of every architectural decision

Server-Side Rendering

  • Render content server-side whenever possible
  • Use streaming rendering for faster Time to First Byte
  • Implement proper caching strategies for rendered content
  • Avoid blocking resources that delay rendering
  • Pre-render static content where applicable

CSS Best Practices

Selector Efficiency

  • Avoid ID selectors for styling; use classes instead
  • Maintain specificity at 0 1 0 where possible
  • Avoid deep nesting of selectors (max 3 levels)
  • Use BEM or similar naming conventions for clarity
  • Prefer class selectors over element selectors

CSS Organization

  • Use CSS variables for colors, spacing, and repeated values
  • Group related styles logically
  • Remove unused CSS to reduce payload
  • Consider critical CSS inlining for above-the-fold content
  • Use CSS containment for complex layouts

Layout Performance

  • Avoid layout thrashing (forced synchronous layouts)
  • Use transform and opacity for animations (GPU accelerated)
  • Minimize paint and composite operations
  • Use will-change sparingly and intentionally
  • Prefer flexbox and grid over floats and positioning

JavaScript Optimization

Code Organization

  • Use the module pattern for code organization
  • Prefix private methods with appropriate indicators
  • Prefer const over let; avoid var
  • Avoid external dependencies when native APIs suffice
  • Split code into logical, loadable chunks

Loading Strategies

  • Defer non-critical JavaScript
  • Use async loading for independent scripts
  • Implement code splitting for large applications
  • Lazy load components and routes
  • Preload critical resources

Runtime Performance

  • Debounce and throttle event handlers appropriately
  • Use requestAnimationFrame for visual updates
  • Avoid long-running synchronous operations
  • Implement efficient DOM manipulation patterns
  • Use Web Workers for CPU-intensive tasks

Asset Optimization

Images

  • Use modern formats (WebP, AVIF) with fallbacks
  • Implement responsive images with srcset
  • Lazy load below-the-fold images
  • Optimize and compress all images
  • Use appropriate image dimensions

Fonts

  • Subset fonts to include only needed characters
  • Use font-display: swap for better perceived performance
  • Preload critical fonts
  • Limit the number of font variations
  • Consider system fonts for non-branded text

Caching Strategies

  • Implement appropriate cache headers for static assets
  • Use versioned filenames for cache busting
  • Configure CDN caching effectively
  • Implement service workers for offline support
  • Cache API responses where appropriate

Architecture Patterns

Theme and Component Architecture

  • Organize code into logical sections and blocks
  • Use proper folder structure for maintainability
  • Implement clear separation of concerns
  • Create reusable, composable components
  • Document component APIs and usage

Configuration and Settings

  • Organize settings logically with clear groupings
  • Use clear, descriptive naming conventions
  • Implement conditional logic to reduce complexity
  • Provide sensible defaults
  • Validate configuration at build time

Internationalization Performance

  • Ensure all text is translatable
  • Load translations efficiently (split by locale)
  • Use proper locale detection
  • Cache translated content appropriately
  • Consider right-to-left (RTL) layout implications

Measurement and Monitoring

  • Use Real User Monitoring (RUM) for production insights
  • Set up synthetic monitoring for baseline tracking
  • Monitor Core Web Vitals continuously
  • Track performance budgets in CI/CD
  • Analyze and act on performance regressions

Database Performance

  • Optimize queries and use proper indexing
  • Implement connection pooling
  • Use caching for frequently accessed data
  • Paginate large result sets
  • Monitor slow queries and optimize regularly

# Supported AI Coding Agents

This skill is compatible with the SKILL.md standard and works with all major AI coding agents:

Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.