Skip to content

cmda-minor-web-1718/performance-matters-checklist

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 

Repository files navigation

Performance Checklist

Table of Contents

Miscellaneous

  • Tip: Different profile / user in Chrome without extensions
  • Use the proper lang
  • Use a CDN
  • Try to avoid redirects, these can impose high latency overhead

Audits

  • The optimisation of the visual progress is terrible The website does not show any content till every content is loaded This problem leads up to a huge visual progress area

HTTP optimisation

HTTP/1

HTTP/2

  • Enable HTTP2 HTTP/2 is an new protocol that is introduced to increase the performance, specifically, end-user perceived latency, network and server resource usage. One major advantage is to allow the use of a single connection from browsers to a Web site.

Caching

  • Make sure that all non-HTML files have a caching parameter specified more info
  • Specify an expiration at least one week in the future for resources

Minification

Images

CSS

  • Minify CSS

HTML

  • Minify HTML

JavaScript

  • Minify the JavaScript: either manually through jscompress, minifier.org, or with something UglifyJS, potentially through Gulp

Fonts

  • Add a fallback font
  • Use font subsetting

Perceived Performance

  • Use a placeholder for background images (blurred/loading like) to indicate that here is and should be an image at that position

Performance

Images

  • Use newer image types (.webp; .jxr jpg -> jxr)
  • Use inline images for the hero image instead of a background image
  • Add srcsets and sizes
  • Use <picture>s
  • Use (inline) svg when possible
  • Serve images in a proper size This will improve load time and save cellular data If you provide images larger than the user needs, you are just wasting bytes
  • Use client hints
  • SVG's are smaller but they do not render always faster than other formats. Especially when they are very complex. Render speed is also included with the load time of content.

CSS

HTML

  • Remove inline styles
  • Use a minimal amount of classes

JavaScript

  • Concatenate JavaScript files
  • Load JavaScript and CSS later so they don’t block rendering
  • Move script links in <head> to bottom of document or add defer and async if they are not necessary to render above-the-fold content
  • Remove jQuery
  • Add small, single purpose scripts inline

Fonts

  • Use something like font-display: swap

Animations

  • Remove overflow: hidden; from animating elements and their parent container as overflow: hidden makes all children trigger Layout
  • Look out for Paint and Layout triggering effects
  • Use transform, clip and opacity for high performing animations CSS Triggers
  • In JavaScript use requestAnimationFrame instead of setInterval for higher performance (MDN rAF)
  • Use will-change wisely (MDN will-change)

Backend optimisation

  • If you’re using templates (such as in wordpress), make sure they don’t include things you aren’t using

About

Performance checklist at @cmda-minor-web · 2017-2018

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published