Sustainability Scan Report

Actionable Lighthouse + CO2.js findings mapped to WSG guidance.

WSG Form Validation and Tooling

Assesses form error validation practices and tooling support while avoiding re-scans of repeated controls across pages.

Recurring Form Elements

These signatures were assessed once and reused across pages to avoid duplicate scanning.

WSG Metadata for Machine Readability

Checks page metadata against machine-readable best practices including canonical URL, social metadata, and structured data validity.

Cross-Page Metadata Gaps

WSG Multi-Device Layout Support

Assesses whether page layouts adapt cleanly on mobile and tablet viewports, with emphasis on overflow and touch target usability.

Cross-Page Layout Adaptation Signals

WSG Lightweight Security Review

Non-invasive checks for common, easy-to-find security issues such as missing headers and vulnerable JavaScript library flags.

Cross-Page Security Signals

WSG Dependency Maintenance Review

Shows where dependencies appear unmaintained using known vulnerable library signals and dependency integrity hints.

Cross-Page Dependency Signals

No recurring vulnerable dependency signatures were detected.

WSG Expected and Beneficial Files

Checks for common root-level files that improve crawlability, maintenance transparency, and operational clarity.

Cross-Page Expected File Gaps

WSG Efficient Solution Optimization Opportunities

Highlights easy bloat-removal wins like oversized images, missing compression, and render-blocking resources.

Cross-Page Optimization Signals

Recurring Optimization Opportunities

WSG Reduce Data Transfer With Compression

Highlights transfer reduction opportunities via text compression, media encoding, and compression-friendly asset preparation.

Cross-Page Compression Signals

Recurring Compression Opportunities

WSG Offline Access and Caching Support

Evaluates support for offline use and web application behavior using service worker, offline routing, manifest, and cache policy signals.

Cross-Page Offline and Caching Signals

Recurring Offline/Caching Opportunities

WSG Latest Stable Language Version

Flags externally visible runtime/language version drift and recurring opportunities to align with modern stable baselines.

Cross-Page Runtime/Language Version Signals

No recurring outdated runtime/language signatures were detected from exposed headers.

Green Hosting Checks

Hosting status for the submitted URL hosts and any external script or stylesheet origins, using the Green Web Foundation dataset.

Third-Party JavaScript Assessment

Evaluates third-party script providers with the same priority as first-party code by combining payload, request volume, and hosting status.

Top Third-Party Script Providers

Cross-Page Hosting Risk

Recurring external providers with non-green or unknown hosting status across the scanned URL set.

Non-green providers were detected, but none recur across multiple pages in this scan.

WSG Modularization Overview

Finds bandwidth-heavy components that should be split, deferred, or loaded only on demand.

Use this to identify candidates for route-level splitting, interaction-triggered imports, lazy media loading, and deferring heavy third-party or feature bundles.

WSG 3.2 Redundancy Overview

Checks unnecessary or redundant information using Lighthouse waste signals.

Urgency is based on estimated redundant transfer and failed redundancy-related audits, helping teams prioritize fixes that reduce unnecessary bytes first.

WSG Remove Unnecessary Code Overview

Uses Lighthouse signals to estimate unused CSS/JS, duplicated JS, and unnecessary HTML complexity.

WSG Defer Non-Critical Resources Overview

Identifies assets likely not required for first paint and recommends deferring them.

WSG 3.1 Performance and Energy Budget

Benchmark comparison using Sustainable Web Design Digital Carbon Ratings.

Reduction needed: Transfer none, CO2 0.1343 g (48.1%).

Stretch target: Rating A = 531.15 KB and 0.0790 g per page.

Cross-Page Patterns

Recurring component and bundle opportunities that can often be fixed once in templates, CMS blocks, or the design system.

Recurring Heavy Assets

Recurring Modularization Targets

Recurring Heavy Origins

Site-Wide Guidance

Shared recommendations grouped by site origin so platform-level fixes can be prioritized before page-by-page cleanup.

This scan appears to target a single site. Shared issues are usually best fixed once at template/platform level.

https://validate.perfdrive.com

Sampled pages: 100

  • [HIGH] Apply Content-Security-Policy site-wide
    CSP is absent across all sampled pages on https://validate.perfdrive.com.
  • [MEDIUM] Enable Strict-Transport-Security site-wide
    HSTS is missing across all sampled HTTPS pages on https://validate.perfdrive.com.
  • [HIGH] Introduce service worker support
    No sampled pages on https://validate.perfdrive.com indicate service worker support for offline resilience.
  • [HIGH] Support offline fallback behavior
    Offline page behavior was not detected across sampled pages on https://validate.perfdrive.com.
  • [MEDIUM] Fix recurring optimization bloat at shared layer
    Serve images in next-gen formats recurs across 100 pages on https://validate.perfdrive.com (est. 3.54 MB aggregate savings).
  • [LOW] Prioritize recurring compression fixes
    Use modern image compression formats recurs across 100 pages on https://validate.perfdrive.com (est. 3.54 MB aggregate savings).
  • [HIGH] Prioritize recurring offline/caching improvements
    Add service worker support is needed across 100 pages on https://validate.perfdrive.com.

Recurring compression opportunities:

  • Use modern image compression formats: 100 page(s), est. 3.54 MB total savings, urgency LOW

Recurring offline/caching opportunities:

  • Add service worker support: 100 page(s), urgency HIGH
  • Ensure critical routes work offline: 100 page(s), urgency HIGH
  • Improve web app manifest support: 100 page(s), urgency MEDIUM
  • Strengthen static asset cache TTL: 100 page(s), urgency MEDIUM
  • Support offline start URL behavior: 100 page(s), urgency MEDIUM

Recurring optimization opportunities:

  • Serve images in next-gen formats: 100 page(s), est. 3.54 MB total savings
  • Remove unused JavaScript: 100 page(s), est. 2.87 MB total savings
  • Eliminate render-blocking resources: 100 page(s), est. 103230 ms unblock

Page-Specific Guidance

Page-level exceptions and targeted follow-ups after site-wide recommendations are addressed.

https://validate.perfdrive.com

  • https://princeedwardisland.ca/en/topic/find-health-services
    Urgency: HIGH. Scores: compression 5/100, optimization 100/100, offline 100/100, dependency 4/100, language 0/100, security 57/100, expected files 0/100.
    Top actions: Use modern image compression formats; Eliminate render-blocking resources; Serve images in next-gen formats
  • https://princeedwardisland.ca/en/topic/supports-and-services-5
    Urgency: HIGH. Scores: compression 5/100, optimization 100/100, offline 100/100, dependency 4/100, language 0/100, security 57/100, expected files 0/100.
    Top actions: Use modern image compression formats; Eliminate render-blocking resources; Serve images in next-gen formats
  • https://princeedwardisland.ca/en/information/emergency-medical-services-board
    Urgency: HIGH. Scores: compression 5/100, optimization 100/100, offline 100/100, dependency 4/100, language 0/100, security 57/100, expected files 0/100.
    Top actions: Use modern image compression formats; Eliminate render-blocking resources; Serve images in next-gen formats
  • https://princeedwardisland.ca/en/publication/alberton-public-library-report-to-the-community
    Urgency: HIGH. Scores: compression 5/100, optimization 100/100, offline 100/100, dependency 4/100, language 0/100, security 57/100, expected files 0/100.
    Top actions: Use modern image compression formats; Eliminate render-blocking resources; Serve images in next-gen formats
  • https://princeedwardisland.ca/en/publication/bibliotheque-publique-dabram-village-report-to-the-community
    Urgency: HIGH. Scores: compression 5/100, optimization 100/100, offline 100/100, dependency 4/100, language 0/100, security 57/100, expected files 0/100.
    Top actions: Use modern image compression formats; Eliminate render-blocking resources; Serve images in next-gen formats
  • https://princeedwardisland.ca/en/publication/bibliotheque-publique-dr-j-edmond-arsenault-report-to-the-community
    Urgency: HIGH. Scores: compression 5/100, optimization 100/100, offline 100/100, dependency 4/100, language 0/100, security 57/100, expected files 0/100.
    Top actions: Use modern image compression formats; Eliminate render-blocking resources; Serve images in next-gen formats

Overview Table

URL Performance Transfer CO2 Findings Top Actions
https://princeedwardisland.ca/ 61/100 970.53 KB 0.3807 g 5 Largest Contentful Paint; Speed Index
https://princeedwardisland.ca/en/topic/find-health-services 71/100 709.47 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/supports-and-services-5 71/100 709.16 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/emergency-medical-services-board 71/100 709.16 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/alberton-public-library-report-to-the-community 71/100 709.20 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/bibliotheque-publique-dabram-village-report-to-the-community 70/100 710.48 KB 0.2787 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/bibliotheque-publique-dr-j-edmond-arsenault-report-to-the-community 71/100 709.54 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/bibliotheque-publique-j-henri-blanchard-report-to-the-community 71/100 709.58 KB 0.2784 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/borden-carleton-public-library-report-to-the-community 71/100 709.51 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/breadalbane-public-library-report-to-the-community 71/100 709.39 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/charlottetown-library-learning-centre-report-to-the-community 71/100 709.51 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/trans-canada-highway-extension 71/100 709.10 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/children-and-youth-health 71/100 709.38 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/social-story-souris-public-library 71/100 709.54 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/public-accounts-pei-2014-volume-iii 71/100 709.39 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/social-story-cornwall-public-library 71/100 709.60 KB 0.2784 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/point-interest/central-street-walk-in-clinic 71/100 709.41 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/finance/public-accounts 71/100 709.48 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/test-department 71/100 709.70 KB 0.2784 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/node/69472 71/100 709.34 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/kinkora-public-library-report-to-the-community 71/100 709.50 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/social-story-murray-harbour-public-library 71/100 709.46 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/innovation-pei/human-resources-planning-assistance 71/100 709.48 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/legislation/leg-provider-act-test/leg-provider-reg-test-2 71/100 709.83 KB 0.2784 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/health-and-wellness/what-is-wellness 71/100 709.18 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/wellness-grant-program-new-project-guidelines 71/100 709.34 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/am-test-information-2 71/100 709.47 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/info-tr-english-2 71/100 709.19 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/wellness-grant-background-information 71/100 709.51 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/clyde-river-public-meeting-january-17-2017 71/100 709.41 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/summerside-rotary-library-report-to-the-community 71/100 709.49 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/inen3 71/100 709.11 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/social-story-summerside-rotary-library 71/100 709.17 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/social-story-bibliotheque-publique-dabram-village 71/100 709.54 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/legislation/leg-provider-act-test 71/100 709.19 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/social-story-st-peters-public-library 71/100 709.58 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en 71/100 709.38 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/social-story-alberton-public-library 75/100 709.18 KB 0.2782 g 5 Largest Contentful Paint; Reduce unused JavaScript
https://princeedwardisland.ca/en/information/finance/carson 71/100 709.54 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/point-interest/john-j-sark-memorial-school 71/100 709.27 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/alert/government-office-storm-closures 71/100 709.34 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/about-energy-efficiency 71/100 709.17 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/general-drug-cost-assistance 71/100 709.20 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/public-accounts-pei-2015-volume-ii 71/100 709.25 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/info-translation-en 71/100 709.68 KB 0.2784 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/education-and-early-years/education-services-for-blind-and-visually-impaired-students 71/100 709.58 KB 0.2784 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/alert/alert-provider-test-3 71/100 709.20 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/3rd-level-topic-3 71/100 709.96 KB 0.2785 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/oleary-public-library-report-to-the-community 71/100 709.51 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/2nd-level-topic-test 75/100 709.50 KB 0.2783 g 5 Largest Contentful Paint; Reduce unused JavaScript
https://princeedwardisland.ca/en/information/land-matters-advisory-committee 71/100 709.21 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/housing-land-and-communities/installation-alteration-permit-for-boilers-or-pressure 71/100 709.32 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/event/canada-day-0 71/100 709.75 KB 0.2784 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/news/test-news-article-r2 71/100 709.45 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/legislation/change-of-name-act/areeba-test-legislation 71/100 709.54 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/agriculture-land-and-environment 71/100 709.56 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/gov-sub-topic-15 71/100 709.13 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/event/canada-day 71/100 709.49 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/building/test-am-building 71/100 709.15 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/point-interest/community-justice-resource-centre 71/100 709.54 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/pdf-publication-carson 71/100 709.50 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/info-en 71/100 709.20 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/social-story-crapaud-public-library 71/100 709.35 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/drug-cost-assistance-support 75/100 709.55 KB 0.2783 g 5 Largest Contentful Paint; Reduce unused JavaScript
https://princeedwardisland.ca/en/information/innovation-pei/productivity-improvement-assistance 71/100 709.59 KB 0.2784 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/agriculture-publications 71/100 709.14 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/finance/helio 71/100 709.39 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/news/test-newsdelete-me 71/100 709.23 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/the-premiers-council-for-recovery-and-growth-sector-champions 71/100 709.66 KB 0.2784 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/public-accounts-pei-2014-volume-ii 68/100 709.25 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/student-guide-to-the-inquiry-process-for-economics-621a 70/100 709.47 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/specialist-opportunities 71/100 709.72 KB 0.2784 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/employee/areeba-employee-test 71/100 709.77 KB 0.2784 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/news/news-provider-test-2 71/100 709.51 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/cancer-screening 71/100 709.19 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/node/69574 71/100 709.23 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/public-accounts-pei-2015-volume-iii 71/100 709.21 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/event/the-ties-that-bind-canada-a-canada-150-online-collection 71/100 709.27 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/cornwall-perimeter-highway-public-information-session-presentation-september-13-2016 71/100 709.56 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/info-translation-test-2-en 71/100 709.28 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/introductory-economics-621a-support-guide 71/100 709.36 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/alert/alert-provider-test-2 71/100 709.51 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/gov-sub-sub-topic-1 71/100 709.52 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/public-accounts-pei-2011-volume-i-supplementary-information 71/100 709.53 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/gov-sub-topic-13 71/100 709.21 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/social-story-murray-river-leona-giddings-memorial-library 71/100 709.35 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/event/test-am-event 71/100 709.17 KB 0.2782 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/public-accounts-pei-2015-volume-i 71/100 709.46 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/stratford-public-library-report-to-the-community 71/100 709.38 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/becoming-an-outdoors-woman 71/100 709.74 KB 0.2784 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/gov-sub-topic-11 71/100 709.53 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/online-services 71/100 709.52 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/position-description-medical-director-qeh 71/100 709.44 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/health-care-in-your-community 71/100 709.44 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/innovation-pei/information-technology-implementation-assistance 71/100 709.63 KB 0.2784 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/topic/gov-sub-topic-1 71/100 709.54 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/news/news-dec-11 71/100 709.59 KB 0.2784 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/publication/social-story-stratford-public-library 71/100 709.55 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/information/innovation-pei/human-resources-implementation-assistance 71/100 709.64 KB 0.2784 g 5 Largest Contentful Paint; Serve images in next-gen formats
https://princeedwardisland.ca/en/alert/test-alert 71/100 709.38 KB 0.2783 g 5 Largest Contentful Paint; Serve images in next-gen formats

Per-Page Green Hosting Details

Checks the submitted page host plus any external script and stylesheet origins discovered by Lighthouse.

https://princeedwardisland.ca/

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.82 KB
  • SCRIPT www.princeedwardisland.ca: NOT GREEN, 1 request(s), 124.16 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.66 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.96 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 3 request(s), 3.47 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.66 KB

https://princeedwardisland.ca/en/topic/find-health-services

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.81 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.59 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.49 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/topic/supports-and-services-5

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.80 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.59 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.49 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/information/emergency-medical-services-board

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.80 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.60 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.49 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/publication/alberton-public-library-report-to-the-community

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.49 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/publication/bibliotheque-publique-dabram-village-report-to-the-community

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.83 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.68 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.96 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.66 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 842.00 B

https://princeedwardisland.ca/en/publication/bibliotheque-publique-dr-j-edmond-arsenault-report-to-the-community

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.81 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.59 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.49 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/publication/bibliotheque-publique-j-henri-blanchard-report-to-the-community

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.49 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/publication/borden-carleton-public-library-report-to-the-community

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.80 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.49 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/publication/breadalbane-public-library-report-to-the-community

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.49 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/publication/charlottetown-library-learning-centre-report-to-the-community

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.59 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.49 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/information/trans-canada-highway-extension

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.50 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/topic/children-and-youth-health

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.50 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/publication/social-story-souris-public-library

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.81 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.50 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/publication/public-accounts-pei-2014-volume-iii

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.50 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/publication/social-story-cornwall-public-library

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.50 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/point-interest/central-street-walk-in-clinic

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.50 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/information/finance/public-accounts

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.50 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/topic/test-department

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.80 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.91 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.50 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/node/69472

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.50 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/publication/kinkora-public-library-report-to-the-community

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.90 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.50 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/publication/social-story-murray-harbour-public-library

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.50 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/information/innovation-pei/human-resources-planning-assistance

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.50 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/legislation/leg-provider-act-test/leg-provider-reg-test-2

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.90 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.50 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/information/health-and-wellness/what-is-wellness

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.50 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 398.00 B

https://princeedwardisland.ca/en/publication/wellness-grant-program-new-project-guidelines

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 400.00 B

https://princeedwardisland.ca/en/information/am-test-information-2

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 401.00 B

https://princeedwardisland.ca/en/information/info-tr-english-2

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 402.00 B

https://princeedwardisland.ca/en/publication/wellness-grant-background-information

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 405.00 B

https://princeedwardisland.ca/en/publication/clyde-river-public-meeting-january-17-2017

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 407.00 B

https://princeedwardisland.ca/en/publication/summerside-rotary-library-report-to-the-community

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.56 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/information/inen3

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/publication/social-story-summerside-rotary-library

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/publication/social-story-bibliotheque-publique-dabram-village

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/legislation/leg-provider-act-test

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/publication/social-story-st-peters-public-library

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/publication/social-story-alberton-public-library

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/information/finance/carson

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/point-interest/john-j-sark-memorial-school

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.80 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/alert/government-office-storm-closures

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/topic/about-energy-efficiency

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/topic/general-drug-cost-assistance

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/publication/public-accounts-pei-2015-volume-ii

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/information/info-translation-en

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.80 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/information/education-and-early-years/education-services-for-blind-and-visually-impaired-students

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.59 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/alert/alert-provider-test-3

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/topic/3rd-level-topic-3

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.80 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.90 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/publication/oleary-public-library-report-to-the-community

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/topic/2nd-level-topic-test

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/information/land-matters-advisory-committee

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/information/housing-land-and-communities/installation-alteration-permit-for-boilers-or-pressure

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/event/canada-day-0

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.90 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/news/test-news-article-r2

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/legislation/change-of-name-act/areeba-test-legislation

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/topic/agriculture-land-and-environment

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/topic/gov-sub-topic-15

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/event/canada-day

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.59 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/building/test-am-building

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/point-interest/community-justice-resource-centre

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/publication/pdf-publication-carson

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/information/info-en

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/publication/social-story-crapaud-public-library

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/topic/drug-cost-assistance-support

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.81 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/information/innovation-pei/productivity-improvement-assistance

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/topic/agriculture-publications

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/information/finance/helio

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/news/test-newsdelete-me

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/publication/the-premiers-council-for-recovery-and-growth-sector-champions

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/publication/public-accounts-pei-2014-volume-ii

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/publication/student-guide-to-the-inquiry-process-for-economics-621a

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.56 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/topic/specialist-opportunities

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.71 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/employee/areeba-employee-test

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.90 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/news/news-provider-test-2

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/topic/cancer-screening

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/node/69574

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/publication/public-accounts-pei-2015-volume-iii

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/event/the-ties-that-bind-canada-a-canada-150-online-collection

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/publication/cornwall-perimeter-highway-public-information-session-presentation-september-13-2016

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/information/info-translation-test-2-en

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.59 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/publication/introductory-economics-621a-support-guide

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/alert/alert-provider-test-2

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.56 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 409.00 B

https://princeedwardisland.ca/en/topic/gov-sub-sub-topic-1

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 408.00 B

https://princeedwardisland.ca/en/publication/public-accounts-pei-2011-volume-i-supplementary-information

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 410.00 B

https://princeedwardisland.ca/en/topic/gov-sub-topic-13

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 412.00 B

https://princeedwardisland.ca/en/publication/social-story-murray-river-leona-giddings-memorial-library

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 412.00 B

https://princeedwardisland.ca/en/event/test-am-event

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 413.00 B

https://princeedwardisland.ca/en/publication/public-accounts-pei-2015-volume-i

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 415.00 B

https://princeedwardisland.ca/en/publication/stratford-public-library-report-to-the-community

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 417.00 B

https://princeedwardisland.ca/en/information/becoming-an-outdoors-woman

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 419.00 B

https://princeedwardisland.ca/en/topic/gov-sub-topic-11

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.90 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 419.00 B

https://princeedwardisland.ca/en/topic/online-services

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 419.00 B

https://princeedwardisland.ca/en/publication/position-description-medical-director-qeh

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.78 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 419.00 B

https://princeedwardisland.ca/en/topic/health-care-in-your-community

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 419.00 B

https://princeedwardisland.ca/en/information/innovation-pei/information-technology-implementation-assistance

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.56 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 419.00 B

https://princeedwardisland.ca/en/topic/gov-sub-topic-1

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.90 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 419.00 B

https://princeedwardisland.ca/en/news/news-dec-11

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.79 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.61 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 419.00 B

https://princeedwardisland.ca/en/publication/social-story-stratford-public-library

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.77 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.66 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 420.00 B

https://princeedwardisland.ca/en/information/innovation-pei/human-resources-implementation-assistance

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.91 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 420.00 B

https://princeedwardisland.ca/en/alert/test-alert

Page host: validate.perfdrive.com: NOT GREEN

  • SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare), 1 request(s), 372.78 KB
  • SCRIPT hcaptcha.com: GREEN (Cloudflare), 1 request(s), 85.57 KB
  • SCRIPT cdn.perfdrive.com: GREEN (Google Cloud), 1 request(s), 7.82 KB
  • STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud), 1 request(s), 1.51 KB
  • STYLESHEET fonts.googleapis.com: GREEN (Google Cloud), 1 request(s), 419.00 B

Copy/Paste GitHub Issue Snippets

Use these blocks to open targeted implementation issues in your queue.

Largest Contentful Paint

Impact: high

Speed Index

Impact: high

Reduce unused JavaScript

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Reduce unused JavaScript

Impact: high

Serve images in next-gen formats

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Reduce unused JavaScript

Impact: high

Serve images in next-gen formats

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Reduce unused JavaScript

Impact: high

Serve images in next-gen formats

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Largest Contentful Paint

Impact: high

Serve images in next-gen formats

Impact: high

Eliminate render-blocking resources

Impact: high

Markdown Version

Show report markdown
# Sustainability Scan Report: SCAN: PEI Government

- Issue number: #11
- Generated at: 2026-03-17T14:09:22.490Z
- URLs requested: 100
- URLs scanned: 100
- Distinct sites scanned: 1
- Scan errors: 0
- Average performance score: 71/100
- Total transfer: 69.54 MB
- Estimated CO2: 27.9317 g
- Average transfer per page: 712.04 KB
- Average CO2 per page: 0.2793 g
- Average redundancy score: 2/100
- Pages with high redundancy urgency: 0
- Average modularization score: 39/100
- Pages with high modularization urgency: 0
- Average dead-code score: 2/100
- Pages with high dead-code urgency: 0
- Average non-critical resources score: 11/100
- Pages with high non-critical resource urgency: 94
- Average form validation score: 90/100
- Pages with high form validation urgency: 100
- Average metadata score: 40/100
- Pages with high metadata urgency: 0
- Average layout adaptation score: 2/100
- Pages with high layout urgency: 0
- Average lightweight security score: 57/100
- Pages with high security urgency: 0
- Average dependency maintenance score: 4/100
- Pages with high dependency maintenance urgency: 0
- Average expected-files score: 0/100
- Pages with high expected-files urgency: 0
- Average compression score: 5/100
- Pages with high compression urgency: 0
- Average optimization score: 100/100
- Pages with high optimization urgency: 100
- Average offline support score: 100/100
- Pages with high offline support urgency: 100
- Average language version score: 0/100
- Pages with high language version urgency: 0

## WSG Form Validation and Tooling

- WSG reference: Validate form errors and account for tooling requirements (https://www.w3.org/TR/web-sustainability-guidelines/#validate-form-errors-and-account-for-tooling-requirements)
- Unique form element signatures assessed: 1
- Total form element occurrences observed: 100
- Reused assessments (not re-scanned repeats): 99

### Recurring Form Elements (Assessed Once, Reused Across Pages)

- textarea (h-captcha-response): appears on 100 page(s), risk 90/100, urgency HIGH

## WSG Metadata for Machine Readability

- WSG reference: Structure metadata for machine readability (https://www.w3.org/TR/web-sustainability-guidelines/#structure-metadata-for-machine-readability)
- Assessed pages: 100
- Average metadata score: 40/100
- Pages with high urgency: 0
- Missing metadata across pages:
  - Missing html lang: 0
  - Missing meta description: 100
  - Missing canonical URL: 100
  - Missing Open Graph core tags: 100
  - Missing twitter:card: 100
  - Invalid or missing JSON-LD: 0

## WSG Multi-Device Layout Support

- WSG reference: Ensure layouts work for different devices and requirements (https://www.w3.org/TR/web-sustainability-guidelines/#ensure-layouts-work-for-different-devices-and-requirements)
- Assessed pages: 100
- Average layout adaptation score: 2/100
- High urgency pages: 0
- Pages with mobile overflow: 0
- Pages with tablet overflow: 0
- Total small tap targets on mobile: 100
- Total small tap targets on tablet: 100
- Total fixed-width offenders: 11

## WSG Lightweight Security Review

- WSG reference: Ensure that your code is secure (https://www.w3.org/TR/web-sustainability-guidelines/#ensure-that-your-code-is-secure)
- Assessed pages: 100
- Average lightweight security score: 57/100
- High urgency pages: 0
- Pages missing Content-Security-Policy: 100
- HTTPS pages missing Strict-Transport-Security: 100
- Pages with vulnerable JS library findings: 0
- External scripts missing SRI (total): 200

## WSG Dependency Maintenance Review

- WSG reference: Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)
- Assessed pages: 100
- Average dependency maintenance score: 4/100
- High urgency pages: 0
- Pages with vulnerable dependencies: 0
- Total vulnerable dependency findings: 0

## WSG Expected and Beneficial Files

- WSG reference: Include expected and beneficial files (https://www.w3.org/TR/web-sustainability-guidelines/#include-expected-and-beneficial-files)
- Assessed pages: 100
- Average expected-files score: 0/100
- High urgency pages: 0
- Missing files across pages:
  - robots.txt missing: 0
  - sitemap.xml missing: 0
  - .well-known/security.txt missing: 0
  - manifest.webmanifest missing: 0
  - favicon.ico missing: 0

## WSG Reduce Data Transfer With Compression

- WSG reference: Reduce data transfer with compression (https://www.w3.org/TR/web-sustainability-guidelines/#reduce-data-transfer-with-compression)
- Assessed pages: 100
- Average compression score: 5/100
- High urgency pages: 0
- Pages missing effective text compression: 0
- Aggregate potential compression savings: 3.54 MB
- Recurring compression opportunities:
  - Use modern image compression formats: appears on 100 page(s), est. 3.54 MB total savings, urgency LOW

## WSG Efficient Solution Optimization Opportunities

- WSG reference: Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- Assessed pages: 100
- Average optimization score: 100/100
- High urgency pages: 100
- Aggregate potential byte savings: 6.40 MB
- Aggregate render-blocking reduction potential: 103230 ms
- Recurring optimization opportunities:
  - Serve images in next-gen formats: appears on 100 page(s), est. 3.54 MB total savings
  - Remove unused JavaScript: appears on 100 page(s), est. 2.87 MB total savings
  - Eliminate render-blocking resources: appears on 100 page(s), est. 103230 ms unblock

## WSG Offline Access and Caching Support

- WSG reference: Optimize caching and support offline access (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-caching-and-support-offline-access)
- Assessed pages: 100
- Average offline support score: 100/100
- High urgency pages: 100
- Pages without service worker support: 100
- Pages without offline support: 100
- Pages with weak cache TTL signals: 100
- Recurring offline/caching opportunities:
  - Add service worker support: appears on 100 page(s), urgency HIGH
  - Ensure critical routes work offline: appears on 100 page(s), urgency HIGH
  - Improve web app manifest support: appears on 100 page(s), urgency MEDIUM
  - Strengthen static asset cache TTL: appears on 100 page(s), urgency MEDIUM
  - Support offline start URL behavior: appears on 100 page(s), urgency MEDIUM

## WSG Latest Stable Language Version

- WSG reference: Use the latest stable language version (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-latest-stable-language-version)
- Assessed pages: 100
- Average language-version score: 0/100
- High urgency pages: 0
- Pages exposing runtime/language version signals: 0
- Pages with outdated runtime/language signals: 0

## WSG Third-Party JavaScript Assessment

- WSG reference: Give third parties the same priority as first parties during assessment (https://www.w3.org/TR/web-sustainability-guidelines/#give-third-parties-the-same-priority-as-first-parties-during-assessment)
- Average third-party JS risk score: 49/100
- Pages with high urgency: 1
- Distinct third-party script providers: 4

### Top Third-Party Script Providers

- newassets.hcaptcha.com: GREEN (Cloudflare); on 100 page(s), 100 request(s), 36.40 MB
- hcaptcha.com: GREEN (Cloudflare); on 100 page(s), 100 request(s), 8.36 MB
- cdn.perfdrive.com: GREEN (Google Cloud); on 100 page(s), 100 request(s), 781.74 KB
- www.princeedwardisland.ca: NOT GREEN; on 1 page(s), 1 request(s), 124.16 KB

## Cross-Page Hosting Risk (Non-Green Providers)

- Focus: recurring external CSS/JS providers with non-green or unknown hosting status.
- Non-green providers were found, but none recur across multiple pages in this scan.

## Green Hosting Checks

- Source: https://www.thegreenwebfoundation.org/tools/green-web-dataset/
- Submitted URL hosts checked: 100
- Submitted URL hosts on green energy: 0
- Submitted URL hosts not confirmed green: 100
- Submitted URL hosts unknown: 0
- External CSS/JS origins checked: 6
- External CSS/JS origins on green energy: 5
- External CSS/JS origins not confirmed green: 1
- External CSS/JS origins unknown: 0

## WSG SC 3.1 Budget Guidance

- WSG reference: Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- Sustainable Web Design benchmark: https://sustainablewebdesign.org/digital-carbon-ratings/
- Current transfer rating: B
- Current CO2 rating: E
- Recommended budget target: rating B
- Budget max transfer/page: 975.85 KB
- Budget max CO2/page: 0.1450 g
- Transfer reduction needed: none (already within target budget)
- CO2 reduction needed: 0.1343 g (48.1%)
- Stretch budget (rating A): 531.15 KB and 0.0790 g per page

## WSG SC 3.2 Redundancy Analysis

- WSG reference: Remove unnecessary or redundant information (https://www.w3.org/TR/web-sustainability-guidelines/#remove-unnecessary-or-redundant-information)
- Redundancy score: 0 (low redundancy) to 100 (high redundancy)
- Urgency levels: low, medium, high

## WSG Remove Unnecessary Code Analysis

- WSG reference: Remove unnecessary code (https://www.w3.org/TR/web-sustainability-guidelines/#remove-unnecessary-code)
- Dead-code score: 0 (low unnecessary code) to 100 (high unnecessary code)
- Includes unused CSS/JS, duplicated JS, and HTML complexity heuristics

## WSG Defer Non-Critical Resources Analysis

- WSG reference: Defer the loading of non-critical resources (https://www.w3.org/TR/web-sustainability-guidelines/#defer-the-loading-of-non-critical-resources)
- Non-critical score: 0 (few defer opportunities) to 100 (many deferrable resources)
- Uses offscreen image savings, unused CSS/JS, render-blocking delay, and heavy likely-non-critical assets

## WSG Modularization Analysis

- WSG reference: Modularize bandwidth-heavy components (https://www.w3.org/TR/web-sustainability-guidelines/#modularize-bandwidth-heavy-components)
- Modularization score: 0 (few obvious on-demand opportunities) to 100 (many heavy initial-load components)
- This analysis looks for heavy scripts, images, styles, fonts, and media that should be split or loaded on demand.

## Cross-Page Patterns

- This same heavy script pattern appears on 100 pages. Fix it once in the shared template, CMS block, or design system component to reduce load across the whole site.
- These 2 script bundles are recurring modularization targets. Move the fix to the shared bundle or component boundary so every affected page gets lighter at once.
- These 3 modularization targets recur across multiple pages. Centralize the fix at the component or bundle level instead of treating each page separately.
- Heavy assets from newassets.hcaptcha.com recur across 100 pages. Review whether that dependency should be deferred, optimized, or loaded conditionally.

### Recurring Heavy Assets

- script assets from newassets.hcaptcha.com/c appears on 100 pages (36.40 MB total)
- document assets from newassets.hcaptcha.com/captcha appears on 100 pages (16.13 MB total)
- script assets from hcaptcha.com/1 appears on 100 pages (8.36 MB total)

### Recurring Modularization Targets

- Modularize heavy script asset from newassets.hcaptcha.com affects 100 pages (est. 36.40 MB aggregate savings)
- Modularize heavy document asset from newassets.hcaptcha.com affects 100 pages (est. 16.13 MB aggregate savings)
- Defer non-critical UI modules until after first render affects 100 pages
- Modularize heavy script asset from hcaptcha.com affects 99 pages (est. 8.28 MB aggregate savings)

### Recurring Heavy Origins

- newassets.hcaptcha.com is a recurring heavy source on 100 pages (52.53 MB total)
- hcaptcha.com is a recurring heavy source on 100 pages (8.36 MB total)

## Site-Wide Guidance

- This scan appears to target a single site. Shared recommendations below should typically be fixed once at platform/template level.

### https://validate.perfdrive.com
- Sampled pages: 100
- Shared recommendations:
  - [HIGH] Apply Content-Security-Policy site-wide
    - CSP is absent across all sampled pages on https://validate.perfdrive.com.
  - [MEDIUM] Enable Strict-Transport-Security site-wide
    - HSTS is missing across all sampled HTTPS pages on https://validate.perfdrive.com.
  - [HIGH] Introduce service worker support
    - No sampled pages on https://validate.perfdrive.com indicate service worker support for offline resilience.
  - [HIGH] Support offline fallback behavior
    - Offline page behavior was not detected across sampled pages on https://validate.perfdrive.com.
  - [MEDIUM] Fix recurring optimization bloat at shared layer
    - Serve images in next-gen formats recurs across 100 pages on https://validate.perfdrive.com (est. 3.54 MB aggregate savings).
  - [LOW] Prioritize recurring compression fixes
    - Use modern image compression formats recurs across 100 pages on https://validate.perfdrive.com (est. 3.54 MB aggregate savings).
  - [HIGH] Prioritize recurring offline/caching improvements
    - Add service worker support is needed across 100 pages on https://validate.perfdrive.com.
- Recurring offline/caching opportunities:
  - Add service worker support: 100 page(s), urgency HIGH
  - Ensure critical routes work offline: 100 page(s), urgency HIGH
  - Improve web app manifest support: 100 page(s), urgency MEDIUM
  - Strengthen static asset cache TTL: 100 page(s), urgency MEDIUM
  - Support offline start URL behavior: 100 page(s), urgency MEDIUM
- Recurring compression opportunities:
  - Use modern image compression formats: 100 page(s), est. 3.54 MB total savings, urgency LOW
- Recurring optimization opportunities:
  - Serve images in next-gen formats: 100 page(s), est. 3.54 MB total savings
  - Remove unused JavaScript: 100 page(s), est. 2.87 MB total savings
  - Eliminate render-blocking resources: 100 page(s), est. 103230 ms unblock

## Page-Specific Guidance

- Use this section for page-level exceptions after site-wide/platform fixes are planned.

### https://validate.perfdrive.com
- https://princeedwardisland.ca/en/topic/find-health-services
  - Combined urgency: HIGH
  - Compression score: 5/100, optimization score: 100/100, offline score: 100/100, dependency score: 4/100, language score: 0/100, security score: 57/100, expected-files score: 0/100
  - [LOW] Use modern image compression formats
  - [HIGH] Eliminate render-blocking resources
  - [LOW] Serve images in next-gen formats
- https://princeedwardisland.ca/en/topic/supports-and-services-5
  - Combined urgency: HIGH
  - Compression score: 5/100, optimization score: 100/100, offline score: 100/100, dependency score: 4/100, language score: 0/100, security score: 57/100, expected-files score: 0/100
  - [LOW] Use modern image compression formats
  - [HIGH] Eliminate render-blocking resources
  - [LOW] Serve images in next-gen formats
- https://princeedwardisland.ca/en/information/emergency-medical-services-board
  - Combined urgency: HIGH
  - Compression score: 5/100, optimization score: 100/100, offline score: 100/100, dependency score: 4/100, language score: 0/100, security score: 57/100, expected-files score: 0/100
  - [LOW] Use modern image compression formats
  - [HIGH] Eliminate render-blocking resources
  - [LOW] Serve images in next-gen formats
- https://princeedwardisland.ca/en/publication/alberton-public-library-report-to-the-community
  - Combined urgency: HIGH
  - Compression score: 5/100, optimization score: 100/100, offline score: 100/100, dependency score: 4/100, language score: 0/100, security score: 57/100, expected-files score: 0/100
  - [LOW] Use modern image compression formats
  - [HIGH] Eliminate render-blocking resources
  - [LOW] Serve images in next-gen formats
- https://princeedwardisland.ca/en/publication/bibliotheque-publique-dabram-village-report-to-the-community
  - Combined urgency: HIGH
  - Compression score: 5/100, optimization score: 100/100, offline score: 100/100, dependency score: 4/100, language score: 0/100, security score: 57/100, expected-files score: 0/100
  - [LOW] Use modern image compression formats
  - [MEDIUM] Eliminate render-blocking resources
  - [LOW] Serve images in next-gen formats
- https://princeedwardisland.ca/en/publication/bibliotheque-publique-dr-j-edmond-arsenault-report-to-the-community
  - Combined urgency: HIGH
  - Compression score: 5/100, optimization score: 100/100, offline score: 100/100, dependency score: 4/100, language score: 0/100, security score: 57/100, expected-files score: 0/100
  - [LOW] Use modern image compression formats
  - [HIGH] Eliminate render-blocking resources
  - [LOW] Serve images in next-gen formats

## Priority Improvements

### https://princeedwardisland.ca/
- Performance: 61/100
- Transfer: 970.53 KB
- CO2 estimate: 0.3807 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 35/100
- Modularization urgency: MEDIUM
- Dead-code score: 1/100
- Dead-code urgency: LOW
- Non-critical resources score: 13/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 4/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 63/100
- Third-party JS urgency: HIGH
- Estimated redundant transfer: 29.36 KB (3.0% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.36 KB savings)
- Heavy initial-load requests: 4 (748.02 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.82 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.38 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from www.princeedwardisland.ca (est. 124.16 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.82 KB
  - SCRIPT www.princeedwardisland.ca: NOT GREEN; 1 request(s), 124.16 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.66 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.96 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 3 request(s), 3.47 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.66 KB
- Third-party JS recommendations:
  - [HIGH] Maintain a third-party JavaScript inventory
    - Track 4 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
  - [HIGH] Prioritize greener alternatives for third-party providers
    - 1 third-party script origin(s) are not confirmed green in the Green Web Foundation dataset.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.36 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.36 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1231 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.82 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from www.princeedwardisland.ca (est. 124.16 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.66 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1231 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.36 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 262.40 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 6.9 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Speed Index
  - Current value: 6.4 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,230 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)

### https://princeedwardisland.ca/en/topic/find-health-services
- Performance: 71/100
- Transfer: 709.47 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.68 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.81 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.28 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.59 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.81 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.59 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.49 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1021 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.81 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.59 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1021 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.68 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/supports-and-services-5
- Performance: 71/100
- Transfer: 709.16 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.36 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.80 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.97 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.59 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.80 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.59 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.49 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1025 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.80 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.59 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1025 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.68 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/emergency-medical-services-board
- Performance: 71/100
- Transfer: 709.16 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 4/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.33 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.80 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.93 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.60 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.80 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.60 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.49 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1020 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.80 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.60 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
  - [MEDIUM] Refactor fixed-width components
    - 1 element(s) exceeded viewport width in tested layouts; use responsive component constraints.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1020 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/alberton-public-library-report-to-the-community
- Performance: 71/100
- Transfer: 709.20 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.35 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.96 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.49 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1027 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1027 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/bibliotheque-publique-dabram-village-report-to-the-community
- Performance: 70/100
- Transfer: 710.48 KB
- CO2 estimate: 0.2787 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: MEDIUM
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 4/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.37 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.37 KB savings)
- Heavy initial-load requests: 3 (623.56 KB total)
- On-demand modularization candidates:
  - [MEDIUM] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.83 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.05 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.68 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.83 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.68 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.96 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.66 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 842.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.37 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.37 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [MEDIUM] Eliminate render-blocking resources (est. 999 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.83 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.68 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
  - [MEDIUM] Refactor fixed-width components
    - 1 element(s) exceeded viewport width in tested layouts; use responsive component constraints.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [MEDIUM] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 999 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.37 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 163.09 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.9 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,000 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.9 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/bibliotheque-publique-dr-j-edmond-arsenault-report-to-the-community
- Performance: 71/100
- Transfer: 709.54 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 4/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.65 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.81 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.24 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.59 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.81 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.59 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.49 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1025 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.81 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.59 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
  - [MEDIUM] Refactor fixed-width components
    - 1 element(s) exceeded viewport width in tested layouts; use responsive component constraints.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1025 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.68 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/bibliotheque-publique-j-henri-blanchard-report-to-the-community
- Performance: 71/100
- Transfer: 709.58 KB
- CO2 estimate: 0.2784 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 4/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.36 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.36 KB savings)
- Heavy initial-load requests: 3 (623.69 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.28 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.49 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.36 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.36 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1020 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
  - [MEDIUM] Refactor fixed-width components
    - 1 element(s) exceeded viewport width in tested layouts; use responsive component constraints.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1020 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.36 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.70 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/borden-carleton-public-library-report-to-the-community
- Performance: 71/100
- Transfer: 709.51 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.64 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.80 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.28 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.80 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.49 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1026 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.80 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1026 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.66 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/breadalbane-public-library-report-to-the-community
- Performance: 71/100
- Transfer: 709.39 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 4/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.53 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.17 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.49 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1026 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
  - [MEDIUM] Refactor fixed-width components
    - 1 element(s) exceeded viewport width in tested layouts; use responsive component constraints.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1026 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.66 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/charlottetown-library-learning-centre-report-to-the-community
- Performance: 71/100
- Transfer: 709.51 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 4/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.63 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.26 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.59 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.59 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.49 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1018 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.59 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
  - [MEDIUM] Refactor fixed-width components
    - 1 element(s) exceeded viewport width in tested layouts; use responsive component constraints.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1018 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.68 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/trans-canada-highway-extension
- Performance: 71/100
- Transfer: 709.10 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.28 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.94 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.50 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1022 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1022 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.66 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/children-and-youth-health
- Performance: 71/100
- Transfer: 709.38 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.57 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.17 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.50 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1019 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1019 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.70 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/social-story-souris-public-library
- Performance: 71/100
- Transfer: 709.54 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.70 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.81 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.28 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.81 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.50 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1022 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.81 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1022 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.71 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/public-accounts-pei-2014-volume-iii
- Performance: 71/100
- Transfer: 709.39 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.54 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.20 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.50 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1020 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1020 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.67 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/social-story-cornwall-public-library
- Performance: 71/100
- Transfer: 709.60 KB
- CO2 estimate: 0.2784 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.75 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.42 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.50 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1024 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1024 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.67 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/point-interest/central-street-walk-in-clinic
- Performance: 71/100
- Transfer: 709.41 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.57 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.22 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.50 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1025 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1025 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.67 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/finance/public-accounts
- Performance: 71/100
- Transfer: 709.48 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 4/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.65 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.26 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.50 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1023 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
  - [MEDIUM] Refactor fixed-width components
    - 1 element(s) exceeded viewport width in tested layouts; use responsive component constraints.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1023 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.71 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/test-department
- Performance: 71/100
- Transfer: 709.70 KB
- CO2 estimate: 0.2784 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: MEDIUM
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.46 KB (4.2% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.46 KB savings)
- Heavy initial-load requests: 3 (623.90 KB total)
- On-demand modularization candidates:
  - [MEDIUM] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.80 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.20 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.91 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.80 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.91 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.50 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.46 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.46 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [MEDIUM] Eliminate render-blocking resources (est. 980 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.80 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.91 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [MEDIUM] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 980 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.46 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 163.00 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 980 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/node/69472
- Performance: 71/100
- Transfer: 709.34 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.55 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.17 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.50 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1014 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1014 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.71 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,010 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/kinkora-public-library-report-to-the-community
- Performance: 71/100
- Transfer: 709.50 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.46 KB (4.2% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.46 KB savings)
- Heavy initial-load requests: 3 (623.62 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.93 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.90 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.90 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.50 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.46 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.46 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1025 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.90 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1025 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.46 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.99 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/social-story-murray-harbour-public-library
- Performance: 71/100
- Transfer: 709.46 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.58 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.24 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.50 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1017 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1017 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.67 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/innovation-pei/human-resources-planning-assistance
- Performance: 71/100
- Transfer: 709.48 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.58 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.22 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.50 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1027 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1027 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.67 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.8 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.8 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/legislation/leg-provider-act-test/leg-provider-reg-test-2
- Performance: 71/100
- Transfer: 709.83 KB
- CO2 estimate: 0.2784 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.46 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.46 KB savings)
- Heavy initial-load requests: 3 (623.96 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.28 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.90 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.90 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.50 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.46 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.46 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1022 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.90 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1022 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.46 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.99 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/health-and-wellness/what-is-wellness
- Performance: 71/100
- Transfer: 709.18 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.32 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.94 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.50 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 398.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1025 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1025 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.71 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/wellness-grant-program-new-project-guidelines
- Performance: 71/100
- Transfer: 709.34 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.45 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.11 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 400.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1027 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1027 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.67 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/am-test-information-2
- Performance: 71/100
- Transfer: 709.47 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.62 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.24 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 401.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1021 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1021 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.72 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/info-tr-english-2
- Performance: 71/100
- Transfer: 709.19 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.35 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.96 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 402.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1025 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1025 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.72 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/wellness-grant-background-information
- Performance: 71/100
- Transfer: 709.51 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.62 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.23 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 405.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1028 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1028 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.72 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/clyde-river-public-meeting-january-17-2017
- Performance: 71/100
- Transfer: 709.41 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: MEDIUM
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.50 KB total)
- On-demand modularization candidates:
  - [MEDIUM] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.15 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 407.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [MEDIUM] Eliminate render-blocking resources (est. 982 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [MEDIUM] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 982 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.68 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 980 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/summerside-rotary-library-report-to-the-community
- Performance: 71/100
- Transfer: 709.49 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 4/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.58 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.23 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.56 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.56 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1022 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.56 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
  - [MEDIUM] Refactor fixed-width components
    - 1 element(s) exceeded viewport width in tested layouts; use responsive component constraints.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1022 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.68 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/inen3
- Performance: 71/100
- Transfer: 709.11 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.29 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.94 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1031 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1031 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.68 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/social-story-summerside-rotary-library
- Performance: 71/100
- Transfer: 709.17 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.28 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.94 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1017 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1017 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.68 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/social-story-bibliotheque-publique-dabram-village
- Performance: 71/100
- Transfer: 709.54 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.63 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.28 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1027 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1027 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/legislation/leg-provider-act-test
- Performance: 71/100
- Transfer: 709.19 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.33 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.94 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1029 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1029 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.72 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/social-story-st-peters-public-library
- Performance: 71/100
- Transfer: 709.58 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.67 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.28 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1026 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1026 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.72 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en
- Performance: 71/100
- Transfer: 709.38 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.58 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.24 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1027 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1027 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.68 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/social-story-alberton-public-library
- Performance: 75/100
- Transfer: 709.18 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 6/100
- Non-critical resources urgency: MEDIUM
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.29 KB total)
- On-demand modularization candidates:
  - [MEDIUM] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.94 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [MEDIUM] Eliminate render-blocking resources (est. 450 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [MEDIUM] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 450 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.68 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.3 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 450 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.2 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)

### https://princeedwardisland.ca/en/information/finance/carson
- Performance: 71/100
- Transfer: 709.54 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 4/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.69 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.30 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1029 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
  - [MEDIUM] Refactor fixed-width components
    - 1 element(s) exceeded viewport width in tested layouts; use responsive component constraints.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1029 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.72 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/point-interest/john-j-sark-memorial-school
- Performance: 71/100
- Transfer: 709.27 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.38 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.80 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.97 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.80 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1023 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.80 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1023 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.72 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/alert/government-office-storm-closures
- Performance: 71/100
- Transfer: 709.34 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.46 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.11 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1023 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1023 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/about-energy-efficiency
- Performance: 71/100
- Transfer: 709.17 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.32 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.93 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1018 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1018 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.72 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/general-drug-cost-assistance
- Performance: 71/100
- Transfer: 709.20 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.33 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.94 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1027 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1027 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.72 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/public-accounts-pei-2015-volume-ii
- Performance: 71/100
- Transfer: 709.25 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 16/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.36 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.97 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 2275 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 2275 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.72 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 2,280 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/info-translation-en
- Performance: 71/100
- Transfer: 709.68 KB
- CO2 estimate: 0.2784 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.82 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.80 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.42 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.80 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1020 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.80 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1020 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.72 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/education-and-early-years/education-services-for-blind-and-visually-impaired-students
- Performance: 71/100
- Transfer: 709.58 KB
- CO2 estimate: 0.2784 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.59 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.23 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.59 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.59 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1024 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.59 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1024 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.70 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/alert/alert-provider-test-3
- Performance: 71/100
- Transfer: 709.20 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.33 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.96 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1015 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1015 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.72 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/3rd-level-topic-3
- Performance: 71/100
- Transfer: 709.96 KB
- CO2 estimate: 0.2785 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.46 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.46 KB savings)
- Heavy initial-load requests: 3 (624.10 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.80 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.40 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.90 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.80 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.90 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.46 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.46 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1023 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.80 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.90 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1023 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.46 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 163.01 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/oleary-public-library-report-to-the-community
- Performance: 71/100
- Transfer: 709.51 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.59 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.24 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1026 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1026 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/2nd-level-topic-test
- Performance: 75/100
- Transfer: 709.50 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 6/100
- Non-critical resources urgency: MEDIUM
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.63 KB total)
- On-demand modularization candidates:
  - [MEDIUM] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.26 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [MEDIUM] Eliminate render-blocking resources (est. 450 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [MEDIUM] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 450 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.72 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.3 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 450 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.2 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)

### https://princeedwardisland.ca/en/information/land-matters-advisory-committee
- Performance: 71/100
- Transfer: 709.21 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.31 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.96 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1022 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1022 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/housing-land-and-communities/installation-alteration-permit-for-boilers-or-pressure
- Performance: 71/100
- Transfer: 709.32 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.33 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.94 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1019 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1019 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.72 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/event/canada-day-0
- Performance: 71/100
- Transfer: 709.75 KB
- CO2 estimate: 0.2784 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.46 KB (4.2% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.46 KB savings)
- Heavy initial-load requests: 3 (623.92 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.23 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.90 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.90 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.46 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.46 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1022 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.90 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1022 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.46 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 163.00 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/news/test-news-article-r2
- Performance: 71/100
- Transfer: 709.45 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.60 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.26 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1021 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1021 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.68 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/legislation/change-of-name-act/areeba-test-legislation
- Performance: 71/100
- Transfer: 709.54 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.63 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.26 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1025 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1025 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.72 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/agriculture-land-and-environment
- Performance: 71/100
- Transfer: 709.56 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.67 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.28 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1025 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1025 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.72 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/gov-sub-topic-15
- Performance: 71/100
- Transfer: 709.13 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.28 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.94 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1022 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1022 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/event/canada-day
- Performance: 71/100
- Transfer: 709.49 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.64 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.28 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.59 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.59 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1031 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.59 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1031 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.70 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/building/test-am-building
- Performance: 71/100
- Transfer: 709.15 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.28 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.94 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1027 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1027 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.68 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/point-interest/community-justice-resource-centre
- Performance: 71/100
- Transfer: 709.54 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.63 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.28 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1014 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1014 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.68 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.8 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,010 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.8 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/pdf-publication-carson
- Performance: 71/100
- Transfer: 709.50 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.62 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.27 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1020 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1020 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/info-en
- Performance: 71/100
- Transfer: 709.20 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.34 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.96 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1021 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1021 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.73 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/social-story-crapaud-public-library
- Performance: 71/100
- Transfer: 709.35 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.43 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.09 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1024 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1024 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/drug-cost-assistance-support
- Performance: 75/100
- Transfer: 709.55 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 6/100
- Non-critical resources urgency: MEDIUM
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.66 KB total)
- On-demand modularization candidates:
  - [MEDIUM] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.31 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.81 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [MEDIUM] Eliminate render-blocking resources (est. 450 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [MEDIUM] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 450 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.3 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 450 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.2 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)

### https://princeedwardisland.ca/en/information/innovation-pei/productivity-improvement-assistance
- Performance: 71/100
- Transfer: 709.59 KB
- CO2 estimate: 0.2784 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.64 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.28 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1022 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1022 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.8 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.8 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/agriculture-publications
- Performance: 71/100
- Transfer: 709.14 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.25 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.91 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1022 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1022 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/finance/helio
- Performance: 71/100
- Transfer: 709.39 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 4/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.51 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.17 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1023 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
  - [MEDIUM] Refactor fixed-width components
    - 1 element(s) exceeded viewport width in tested layouts; use responsive component constraints.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1023 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/news/test-newsdelete-me
- Performance: 71/100
- Transfer: 709.23 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.35 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.96 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1022 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1022 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.73 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/the-premiers-council-for-recovery-and-growth-sector-champions
- Performance: 71/100
- Transfer: 709.66 KB
- CO2 estimate: 0.2784 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.68 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.28 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1024 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1024 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.73 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/public-accounts-pei-2014-volume-ii
- Performance: 68/100
- Transfer: 709.25 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.32 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.96 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1024 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1024 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 5.2 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 5.2 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/student-guide-to-the-inquiry-process-for-economics-621a
- Performance: 70/100
- Transfer: 709.47 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.50 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.16 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.56 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.56 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1025 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.56 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1025 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.8 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.8 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/specialist-opportunities
- Performance: 71/100
- Transfer: 709.72 KB
- CO2 estimate: 0.2784 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.39 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.39 KB savings)
- Heavy initial-load requests: 3 (623.83 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.33 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.71 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.71 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.39 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.39 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1022 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.71 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1022 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.39 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.83 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/employee/areeba-employee-test
- Performance: 71/100
- Transfer: 709.77 KB
- CO2 estimate: 0.2784 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.46 KB (4.2% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.46 KB savings)
- Heavy initial-load requests: 3 (623.88 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.20 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.90 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.90 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.46 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.46 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1027 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.90 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1027 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.46 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 163.01 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/news/news-provider-test-2
- Performance: 71/100
- Transfer: 709.51 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.63 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.28 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1025 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1025 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/cancer-screening
- Performance: 71/100
- Transfer: 709.19 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.31 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.95 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1026 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1026 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/node/69574
- Performance: 71/100
- Transfer: 709.23 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.37 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.97 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1023 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1023 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.73 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/public-accounts-pei-2015-volume-iii
- Performance: 71/100
- Transfer: 709.21 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.29 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.90 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1025 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1025 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.73 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/event/the-ties-that-bind-canada-a-canada-150-online-collection
- Performance: 71/100
- Transfer: 709.27 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.32 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.94 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1022 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1022 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.73 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/cornwall-perimeter-highway-public-information-session-presentation-september-13-2016
- Performance: 71/100
- Transfer: 709.56 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.55 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.20 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1021 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1021 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.70 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/info-translation-test-2-en
- Performance: 71/100
- Transfer: 709.28 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 16/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.38 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.01 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.59 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.59 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 2274 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.59 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 2274 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.71 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 2,270 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/introductory-economics-621a-support-guide
- Performance: 71/100
- Transfer: 709.36 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 4/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.42 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.03 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1020 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
  - [MEDIUM] Refactor fixed-width components
    - 1 element(s) exceeded viewport width in tested layouts; use responsive component constraints.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1020 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.73 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/alert/alert-provider-test-2
- Performance: 71/100
- Transfer: 709.51 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.63 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.28 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.56 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.56 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 409.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1022 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.56 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1022 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/gov-sub-sub-topic-1
- Performance: 71/100
- Transfer: 709.52 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.63 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.28 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 408.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1028 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1028 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/public-accounts-pei-2011-volume-i-supplementary-information
- Performance: 71/100
- Transfer: 709.53 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.55 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.20 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 410.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1025 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1025 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.8 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.8 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/gov-sub-topic-13
- Performance: 71/100
- Transfer: 709.21 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.33 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.99 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 412.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1027 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1027 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/social-story-murray-river-leona-giddings-memorial-library
- Performance: 71/100
- Transfer: 709.35 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.36 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.01 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 412.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1024 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1024 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/event/test-am-event
- Performance: 71/100
- Transfer: 709.17 KB
- CO2 estimate: 0.2782 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.29 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.94 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 413.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1023 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1023 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.70 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/public-accounts-pei-2015-volume-i
- Performance: 71/100
- Transfer: 709.46 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.54 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.16 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 415.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1029 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1029 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.73 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/stratford-public-library-report-to-the-community
- Performance: 71/100
- Transfer: 709.38 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.42 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.02 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 417.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1020 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1020 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.73 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/becoming-an-outdoors-woman
- Performance: 71/100
- Transfer: 709.74 KB
- CO2 estimate: 0.2784 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.81 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.45 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 419.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1026 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1026 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/gov-sub-topic-11
- Performance: 71/100
- Transfer: 709.53 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.46 KB (4.2% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.46 KB savings)
- Heavy initial-load requests: 3 (623.64 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.96 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.90 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.90 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 419.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.46 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.46 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1023 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.90 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1023 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.46 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 163.01 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/online-services
- Performance: 71/100
- Transfer: 709.52 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.63 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.28 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 419.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1025 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1025 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/position-description-medical-director-qeh
- Performance: 71/100
- Transfer: 709.44 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.41 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.41 KB savings)
- Heavy initial-load requests: 3 (623.49 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.92 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.78 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 419.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.41 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.41 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1025 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1025 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.41 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.90 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/health-care-in-your-community
- Performance: 71/100
- Transfer: 709.44 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.53 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.17 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 419.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1019 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1019 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/innovation-pei/information-technology-implementation-assistance
- Performance: 71/100
- Transfer: 709.63 KB
- CO2 estimate: 0.2784 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.64 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.29 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.56 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.56 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 419.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1026 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.56 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1026 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.8 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.8 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/topic/gov-sub-topic-1
- Performance: 71/100
- Transfer: 709.54 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.46 KB (4.2% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.46 KB savings)
- Heavy initial-load requests: 3 (623.65 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.97 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.90 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.90 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 419.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.46 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.46 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1023 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.90 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1023 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.46 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 163.01 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/news/news-dec-11
- Performance: 71/100
- Transfer: 709.59 KB
- CO2 estimate: 0.2784 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.35 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.35 KB savings)
- Heavy initial-load requests: 3 (623.71 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.79 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.32 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.61 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.79 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.61 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 419.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.35 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.35 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1032 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.79 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.61 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1032 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.35 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.73 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/publication/social-story-stratford-public-library
- Performance: 71/100
- Transfer: 709.55 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.37 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.37 KB savings)
- Heavy initial-load requests: 3 (623.60 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.77 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.17 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.66 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.77 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.66 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 420.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.37 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.37 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1027 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.77 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.66 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1027 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.37 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.78 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/information/innovation-pei/human-resources-implementation-assistance
- Performance: 71/100
- Transfer: 709.64 KB
- CO2 estimate: 0.2784 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 11/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.46 KB (4.2% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.46 KB savings)
- Heavy initial-load requests: 3 (623.66 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 164.97 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.91 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.91 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 420.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.46 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.46 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1022 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.91 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1022 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.46 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 163.02 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,020 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

### https://princeedwardisland.ca/en/alert/test-alert
- Performance: 71/100
- Transfer: 709.38 KB
- CO2 estimate: 0.2783 g
- Page host green energy status: NOT GREEN
- Redundancy score: 2/100
- Redundancy urgency: LOW
- Modularization score: 39/100
- Modularization urgency: MEDIUM
- Dead-code score: 2/100
- Dead-code urgency: LOW
- Non-critical resources score: 12/100
- Non-critical resources urgency: HIGH
- Form validation score: 90/100
- Form validation urgency: HIGH
- Metadata score: 40/100
- Metadata urgency: MEDIUM
- Layout adaptation score: 2/100
- Layout adaptation urgency: LOW
- Lightweight security score: 57/100
- Lightweight security urgency: MEDIUM
- Dependency maintenance score: 4/100
- Dependency maintenance urgency: MEDIUM
- Expected-files score: 0/100
- Expected-files urgency: LOW
- Compression score: 5/100
- Compression urgency: LOW
- Optimization score: 100/100
- Optimization urgency: HIGH
- Offline support score: 100/100
- Offline support urgency: HIGH
- Third-party JS risk score: 49/100
- Third-party JS urgency: MEDIUM
- Estimated redundant transfer: 29.34 KB (4.1% of transfer)
- Redundancy recommendations:
  - [MEDIUM] Reduce unused javascript (est. 29.34 KB savings)
- Heavy initial-load requests: 3 (623.50 KB total)
- On-demand modularization candidates:
  - [HIGH] Defer non-critical UI modules until after first render
    - Keep only above-the-fold resources in the initial path; hydrate or import secondary modules later.
  - [HIGH] Modularize heavy script asset from newassets.hcaptcha.com (est. 372.78 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
  - [MEDIUM] Modularize heavy document asset from newassets.hcaptcha.com (est. 165.15 KB)
    - Move this asset behind an explicit interaction, route boundary, or lazy-loading trigger.
  - [MEDIUM] Modularize heavy script asset from hcaptcha.com (est. 85.57 KB)
    - Load this script only on pages or interactions that require it; prefer dynamic import and feature-level bundles.
- External CSS/JS hosting checks:
  - SCRIPT newassets.hcaptcha.com: GREEN (Cloudflare); 1 request(s), 372.78 KB
  - SCRIPT hcaptcha.com: GREEN (Cloudflare); 1 request(s), 85.57 KB
  - SCRIPT cdn.perfdrive.com: GREEN (Google Cloud); 1 request(s), 7.82 KB
  - STYLESHEET captcha.perfdrive.com: GREEN (Google Cloud); 1 request(s), 1.51 KB
  - STYLESHEET fonts.googleapis.com: GREEN (Google Cloud); 1 request(s), 419.00 B
- Third-party JS recommendations:
  - [MEDIUM] Maintain a third-party JavaScript inventory
    - Track 3 third-party script origin(s) and assign an owner plus business justification for each.
  - [HIGH] Reduce third-party script payload and requests
    - Defer non-critical tags, remove unused vendors, and gate scripts behind consent or user interaction.
- Dead-code recommendations:
  - [MEDIUM] Remove unused JavaScript and feature bundles (est. 29.34 KB savings)
    - Drop unused packages and feature code, or move them behind route-level or interaction-triggered imports.
- Non-critical loading candidates:
  - [MEDIUM] Defer non-critical JavaScript (est. 29.34 KB deferrable)
    - Split bundles and load feature code on interaction or route transition.
  - [HIGH] Eliminate render-blocking resources (est. 1026 ms unblock)
    - Defer scripts/styles not required for first paint and preload only truly critical assets.
  - [HIGH] Evaluate deferred loading for heavy script from newassets.hcaptcha.com (est. 372.78 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
  - [MEDIUM] Evaluate deferred loading for heavy script from hcaptcha.com (est. 85.57 KB deferrable)
    - Confirm this asset is required for first paint; defer or lazy-load if not critical.
- Form validation recommendations:
  - [HIGH] Missing associated label
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No explicit validation rule
    - 1 unique form control signature(s) on this page include this issue.
  - [MEDIUM] No error messaging hook
    - 1 unique form control signature(s) on this page include this issue.
- Metadata recommendations:
  - [MEDIUM] Add canonical URL metadata
    - Use rel=canonical to reduce duplicate URL ambiguity for crawlers and tooling.
  - [MEDIUM] Add meta description
    - Provide a concise description to improve machine interpretation and preview quality.
  - [MEDIUM] Complete Open Graph metadata
    - Include og:title, og:description, og:type, and og:url for robust machine-readable sharing metadata.
  - [LOW] Add twitter:card metadata
    - Include twitter card metadata to improve cross-platform machine-readable previews.
- Layout adaptation recommendations:
  - [MEDIUM] Increase touch target sizes
    - Ensure interactive controls are at least 44x44 CSS px. Detected 1 small targets on mobile and 1 on tablet.
- Lightweight security recommendations:
  - [HIGH] Add a Content-Security-Policy header
    - Add an appropriate CSP to reduce script injection and resource loading risk.
  - [MEDIUM] Enable Strict-Transport-Security
    - Set a Strict-Transport-Security header to enforce HTTPS on repeat visits.
  - [MEDIUM] Set X-Content-Type-Options: nosniff
    - Prevent MIME type sniffing by adding the nosniff response header.
  - [LOW] Define a Referrer-Policy
    - Set a referrer policy to reduce unnecessary URL data leakage.
  - [LOW] Define a Permissions-Policy
    - Restrict browser capabilities to only what the application needs.
  - [MEDIUM] Add SRI to external scripts
    - 2 external script tag(s) are missing integrity attributes.
- Dependency maintenance recommendations:
  - [MEDIUM] Add integrity attributes for external dependencies
    - 2 external script dependency URL(s) are missing SRI integrity attributes.
- Language/runtime version recommendations:
  - [LOW] No obvious outdated runtime version disclosed
    - No clearly outdated runtime version signals were exposed in sampled HTTP headers. Verify language/runtime versions in source and CI since backend versions are not always externally visible.
- Expected-files recommendations:
  - [LOW] Expected and beneficial files look healthy
    - Core discoverability and maintenance support files were found at the site origin.
- Compression recommendations:
  - [LOW] Use modern image compression formats
    - Prefer AVIF/WebP over legacy formats where possible to reduce transfer size. Estimated savings: 36.21 KB.
- Optimization recommendations:
  - [HIGH] Eliminate render-blocking resources
    - Inline critical assets and defer non-critical scripts/styles for faster rendering. Estimated render unblocking: 1026 ms.
  - [LOW] Serve images in next-gen formats
    - Convert high-byte images to more efficient formats such as AVIF or WebP. Estimated byte savings: 36.21 KB.
  - [LOW] Remove unused JavaScript
    - Reduce dead JS and split bundles to avoid shipping non-critical code. Estimated byte savings: 29.34 KB.
- Offline/caching recommendations:
  - [HIGH] Add service worker support
    - Register a service worker to support resilient caching and offline behavior for key routes.
  - [HIGH] Ensure critical routes work offline
    - Provide an offline fallback strategy for key pages and shell assets.
  - [MEDIUM] Improve web app manifest support
    - Complete manifest fields so clients can install and run an app-like experience.
  - [MEDIUM] Support offline start URL behavior
    - Ensure start URL and shell routing can load in disconnected conditions.
  - [MEDIUM] Strengthen static asset cache TTL
    - Improve long-lived cache headers for immutable static assets (estimated savings opportunity: 162.69 KB).
- [HIGH] Largest Contentful Paint
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [HIGH] Serve images in next-gen formats
  - Current value: Est savings of 36 KiB
  - WSG: 11 Optimize media to reduce resource use (https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use)
- [HIGH] Eliminate render-blocking resources
  - Current value: Est savings of 1,030 ms
  - WSG: 18 Use the most efficient solution for your service (https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service)
- [MEDIUM] Speed Index
  - Current value: 4.7 s
  - WSG: 1 Set goals based on performance and energy impact (https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact)
- [MEDIUM] Reduce unused JavaScript
  - Current value: Est savings of 29 KiB
  - WSG: 16 Use dependencies appropriately and ensure maintenance (https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance)

## Copy/Paste Issue Snippets

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 6.9 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Speed Index

- Lighthouse audit: speed-index
- Current value: 6.4 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Speed Index shows how quickly the contents of a page are visibly populated. [Learn more about the Speed Index metric](https://developer.chrome.com/docs/lighthouse/performance/speed-index/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Reduce unused JavaScript

- Lighthouse audit: unused-javascript
- Current value: Est savings of 29 KiB
- WSG guideline: 16 Use dependencies appropriately and ensure maintenance
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance

### Why this matters
Reduce unused JavaScript and defer loading scripts until they are required to decrease bytes consumed by network activity. [Learn how to reduce unused JavaScript](https://developer.chrome.com/docs/lighthouse/performance/unused-javascript/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.9 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,000 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 980 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,010 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.8 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 980 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.3 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Reduce unused JavaScript

- Lighthouse audit: unused-javascript
- Current value: Est savings of 29 KiB
- WSG guideline: 16 Use dependencies appropriately and ensure maintenance
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance

### Why this matters
Reduce unused JavaScript and defer loading scripts until they are required to decrease bytes consumed by network activity. [Learn how to reduce unused JavaScript](https://developer.chrome.com/docs/lighthouse/performance/unused-javascript/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 2,280 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.3 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Reduce unused JavaScript

- Lighthouse audit: unused-javascript
- Current value: Est savings of 29 KiB
- WSG guideline: 16 Use dependencies appropriately and ensure maintenance
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance

### Why this matters
Reduce unused JavaScript and defer loading scripts until they are required to decrease bytes consumed by network activity. [Learn how to reduce unused JavaScript](https://developer.chrome.com/docs/lighthouse/performance/unused-javascript/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.8 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,010 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.3 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Reduce unused JavaScript

- Lighthouse audit: unused-javascript
- Current value: Est savings of 29 KiB
- WSG guideline: 16 Use dependencies appropriately and ensure maintenance
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-dependencies-appropriately-and-ensure-maintenance

### Why this matters
Reduce unused JavaScript and defer loading scripts until they are required to decrease bytes consumed by network activity. [Learn how to reduce unused JavaScript](https://developer.chrome.com/docs/lighthouse/performance/unused-javascript/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.8 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 5.2 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.8 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 2,270 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.8 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.8 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,020 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Largest Contentful Paint

- Lighthouse audit: largest-contentful-paint
- Current value: 4.7 s
- WSG guideline: 1 Set goals based on performance and energy impact
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#set-goals-based-on-performance-and-energy-impact

### Why this matters
Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Serve images in next-gen formats

- Lighthouse audit: modern-image-formats
- Current value: Est savings of 36 KiB
- WSG guideline: 11 Optimize media to reduce resource use
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#optimize-media-to-reduce-resource-use

### Why this matters
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```

```md
## Improve Eliminate render-blocking resources

- Lighthouse audit: render-blocking-resources
- Current value: Est savings of 1,030 ms
- WSG guideline: 18 Use the most efficient solution for your service
- WSG link: https://www.w3.org/TR/web-sustainability-guidelines/#use-the-most-efficient-solution-for-your-service

### Why this matters
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/).

### Definition of done
- [ ] Metric improves in Lighthouse on key templates
- [ ] Changes documented in release notes
- [ ] Re-scan confirms improvement
```