Canadian-Geospatial-Platform / geo.ca

This is the production release content for GEO.CA. For a development release of GEO.CA please visit the link below | Ceci est le contenu de la version de production pour GEO.CA. Pour une version de développement de GEO.CA, veuillez visiter le lien ci-dessous : https://canadian-geospatial-platform.github.io/geo.ca/
https://geo.ca
2 stars 3 forks source link

Lighthouse Performance Test Results #92

Open jvanulde opened 1 year ago

jvanulde commented 1 year ago

Source: geo.ca-lighthouse-report.pdf

Screen Shot 2022-11-28 at 2 11 47 PM

Consider the following tasks to improve performance:

jaredkinger commented 1 year ago

Updated Reports as of Jan 24, 2023

Mobile

geoca-lighthouse-mobile-report-2023-01-24

Source: geoca-lighthouse-mobile-report-2023-01-24.pdf

Desktop

geoca-lighthouse-desktop-report-2023-01-24

Source: geoca-lighthouse-desktop-report-2023-01-24.pdf

Live Scoring & Expanded Reports

For the most up-to-date scoring and expanded reports please visit PageSpeed Insights

jaredkinger commented 1 year ago

February 2023 Release Update

Performance

Enable text compression Text compression has been enabled for the geo.ca cloudfront distributions as detailed in issue #117

There are a few scripts coming from geoview's distributions that aren't being served with text compression and I have followed up here: Compress scripts on server #659

Reduce unused JavaScript

Eliminate render-blocking resources

Reduce unused CSS

Avoid enormous network payloads

Serve static assets with an efficient cache policy Actively being worked as part of #117. Working on dev and should hopefully make it into the March 2023 release

Ensure text remains visible during webfont load

Reduce the impact of third-party code Loading Adobe Analytics asynchronously. This did not make it into the Feb 2023 release but is ready for March 2023 release

Does not use passive listeners to improve scrolling performance Added the following inline script after loading jQuery to fix this:

jQuery.event.special.touchstart = {
    setup: function( _, ns, handle ) {
        this.addEventListener("touchstart", handle, { passive: !ns.includes("noPreventDefault") });
    }
};
jQuery.event.special.touchmove = {
    setup: function( _, ns, handle ) {
        this.addEventListener("touchmove", handle, { passive: !ns.includes("noPreventDefault") });
    }
};
jQuery.event.special.wheel = {
    setup: function( _, ns, handle ){
        this.addEventListener("wheel", handle, { passive: true });
    }
};
jQuery.event.special.mousewheel = {
    setup: function( _, ns, handle ){
        this.addEventListener("mousewheel", handle, { passive: true });
    }
};

Accessibility

[user-scalable="no"] is used in the  element or the [maximum-scale] attribute is less than 5. Removed user-scalable=no from meta viewport tag in Phlox theme

Links do not have a discernible name Fixed by issue #79

Best Practices

Displays images with incorrect aspect ratio Fixed by issue #79

Missing source maps for large first-party Javascript Source maps weren't being included in the simply static build. Removed references to source maps in the javascript files

SEO

Document doesn't have a valid hreflang Document does not have a valid rel=canonical Enabled absolute URLs in Simply Static to resolve both of the issues above.

Miscellaneous Fixes/Improvements

Updated Reports as of February 17, 2023

Mobile

mobile

Source: geoca-lighthouse-mobile-report-2023-02-17.pdf

Desktop

desktop

Source: geoca-lighthouse-desktop-report-2023-02-17.pdf

Next Steps

jaredkinger commented 1 year ago

April 2023 Release Update

Performance

Image elements do not have explicit width and height Some images were using custom Elementor thumbnail sizes that don't correctly output these attributes. The custom thumbnail sizes were changed out for the medium_large thumbnail size

Eliminate render-blocking resources + Reduce unused CSS + Reduce unused JavaScript The new lightweight custom GEO theme (#120) was rolled out which got rid of the bloated Phlox theme. This further reduced both the unused CSS/JS and cut down the number of render-blocking resources as the theme only includes what is necessary and loads scripts and styles conditionally.

Additionally the new theme allowed for activating several of Elementor's performance optimizations that were previously conflicting with the Phlox theme. These features are:

Accessibility

[aria-hidden="true"] elements contain focusable descendents Several elements contained incorrect aria-hidden tags and those have been removed

Updated Reports as of April 18, 2023

Mobile

mobile

Desktop

desktop