Open Site Review Report
- Targets: defaults, not ie <= 11
- Unsupported threshold: 10%
- Polyfill removable threshold: 5%
- Files scanned: 43
- Findings: 5
- Scan mode: URL crawl (same-origin assets only)
- Source fetch errors: 16
Source Fetch Errors
- https://ontario.ca/]: Failed to fetch https://ontario.ca/]: HTTP 404
- https://ontario.ca/page/find-and-pay-child-care]: Failed to fetch https://ontario.ca/page/find-and-pay-child-care]: HTTP 404
- https://www.earlyyears.edu.gov.on.ca/CHILDCareWeb/public/onlineSearch.xhtml](https://www.google.com/search?q=https://www.earlyyears.edu.gov.on.ca/CHILDCareWeb/public/onlineSearch.xhtml: Failed to fetch https://www.earlyyears.edu.gov.on.ca/CHILDCareWeb/public/onlineSearch.xhtml](https://www.google.com/search?q=https://www.earlyyears.edu.gov.on.ca/CHILDCareWeb/public/onlineSearch.xhtml: HTTP 404
- https://www.ontario.ca/search/static/js/main.e2cc7d21.js: Failed to fetch https://www.ontario.ca/search/static/js/main.e2cc7d21.js: HTTP 404
- https://www.ontario.ca/search/static/css/main.80ae6e36.css: Failed to fetch https://www.ontario.ca/search/static/css/main.80ae6e36.css: HTTP 404
- https://ontario.ca/page/accessibility]: Failed to fetch https://ontario.ca/page/accessibility]: HTTP 404
- https://www.ontario.ca/page/how-report-accessibility-barrier](https://www.google.com/search?q=https://www.ontario.ca/page/how-report-accessibility-barrier: Failed to fetch https://www.ontario.ca/page/how-report-accessibility-barrier](https://www.google.com/search?q=https://www.ontario.ca/page/how-report-accessibility-barrier: HTTP 404
- https://ontario.ca/page/about-ontario]: Failed to fetch https://ontario.ca/page/about-ontario]: HTTP 404
- https://www.ontario.ca/page/privacy](https://www.google.com/search?q=https://www.ontario.ca/page/privacy: Failed to fetch https://www.ontario.ca/page/privacy](https://www.google.com/search?q=https://www.ontario.ca/page/privacy: HTTP 404
- https://ontario.ca/page/find-your-local-service-manager]: Failed to fetch https://ontario.ca/page/find-your-local-service-manager]: HTTP 404
- https://www.ontario.ca/page/accessible-formats-and-communication-supports](https://www.google.com/search?q=https://www.ontario.ca/page/accessible-formats-and-communication-supports: Failed to fetch https://www.ontario.ca/page/accessible-formats-and-communication-supports](https://www.google.com/search?q=https://www.ontario.ca/page/accessible-formats-and-communication-supports: HTTP 404
- https://ontario.ca/page/contact-us](https://www.google.com/search?q=https://ontario.ca/page/contact-us: Failed to fetch https://ontario.ca/page/contact-us](https://www.google.com/search?q=https://ontario.ca/page/contact-us: HTTP 404
- https://www.ontario.ca/page/government-ontario-news](https://www.google.com/search?q=https://www.ontario.ca/page/government-ontario-news: Failed to fetch https://www.ontario.ca/page/government-ontario-news](https://www.google.com/search?q=https://www.ontario.ca/page/government-ontario-news: HTTP 404
- https://www.ontario.ca/page/consulting-ontarians](https://www.google.com/search?q=https://www.ontario.ca/page/consulting-ontarians: Failed to fetch https://www.ontario.ca/page/consulting-ontarians](https://www.google.com/search?q=https://www.ontario.ca/page/consulting-ontarians: HTTP 404
- https://www.ontario.ca/page/ontario-public-service](https://www.google.com/search?q=https://www.ontario.ca/page/ontario-public-service: Failed to fetch https://www.ontario.ca/page/ontario-public-service](https://www.google.com/search?q=https://www.ontario.ca/page/ontario-public-service: HTTP 404
- https://www.ontario.ca/page/published-plans-and-annual-reports](https://www.google.com/search?q=https://www.ontario.ca/page/published-plans-and-annual-reports: Failed to fetch https://www.ontario.ca/page/published-plans-and-annual-reports](https://www.google.com/search?q=https://www.ontario.ca/page/published-plans-and-annual-reports: HTTP 404
[HIGH] Uses JavaScript optional chaining
- Type: too-new
- Location: https://ontario.ca/libraries/ontario-interactive-table/dist/ontario-interactive-table.js:1
- Message: Feature may be too new for target browsers (14.7% unsupported).
- Why it matters: Optional chaining improves readability and safety, but very old browsers require transpilation.
- Recommendation: If older browsers are in scope, transpile this syntax and serve appropriate bundles.
- Can I Use feature: mdn-javascript_operators_optional_chaining
- Unsupported target share: 14.7%
- Compatibility source: mdn-bcd
- Compatibility note: Can I Use feature 'mdn-javascript_operators_optional_chaining' unavailable; used MDN fallback.
- Unsupported targets: and_qq 14.9, and_uc 15.5, kaios 3.0-3.1, kaios 2.5, op_mini all
- MDN: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Operators/Optional_chaining
[HIGH] Uses nullish coalescing operator
- Type: too-new
- Location: https://ontario.ca/libraries/ontario-interactive-table/dist/ontario-interactive-table.js:1
- Message: Feature may be too new for target browsers (14.7% unsupported).
- Why it matters: Nullish coalescing can simplify defaults while avoiding falsy-value bugs, but legacy browsers need transpilation.
- Recommendation: Transpile this syntax for older browser support or gate usage to modern bundles only.
- Can I Use feature: mdn-javascript_operators_nullish_coalescing
- Unsupported target share: 14.7%
- Compatibility source: mdn-bcd
- Compatibility note: Can I Use feature 'mdn-javascript_operators_nullish_coalescing' unavailable; used MDN fallback.
- Unsupported targets: and_qq 14.9, and_uc 15.5, kaios 3.0-3.1, kaios 2.5, op_mini all
- MDN: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Operators/Nullish_coalescing
[HIGH] Uses document.write
- Type: deprecated-pattern
- Location: https://ontario.ca/libraries/ontario-interactive-table/dist/ontario-interactive-table.js:1
- Message: Legacy pattern relies on a deprecated web platform feature.
- Why it matters: document.write can block parsing, hurt performance, and create maintainability and security risk.
- Recommendation: Replace with DOM APIs or server-side rendering patterns that avoid parser-blocking behavior.
- Can I Use feature: documentwrite
- Unsupported target share: 14.7%
- Compatibility source: mdn-bcd
- Compatibility note: Can I Use feature 'documentwrite' unavailable; used MDN fallback.
- Unsupported targets: and_qq 14.9, and_uc 15.5, kaios 3.0-3.1, kaios 2.5, op_mini all
- MDN: https://developer.mozilla.org/docs/Web/API/Document/write
[LOW] Detects legacy jQuery usage
- Type: legacy-modernization-opportunity
- Location: https://ontario.ca/libraries/ontario-interactive-table/dist/ontario-interactive-table.js:1
- Message: Pattern has modern native alternatives that may reduce code weight.
- Why it matters: Many DOM tasks historically handled by jQuery are now covered by standard APIs.
- Recommendation: Evaluate whether targeted vanilla replacements can reduce dependency and improve startup performance.
- Can I Use feature: queryselector
- Unsupported target share: 0.0%
- Compatibility source: caniuse
- MDN: https://developer.mozilla.org/docs/Web/API/Document/querySelector
[LOW] Detects legacy jQuery usage
- Type: legacy-modernization-opportunity
- Location: https://www.infogo.gov.on.ca/static/js/main.a5f9c30b.js:2
- Message: Pattern has modern native alternatives that may reduce code weight.
- Why it matters: Many DOM tasks historically handled by jQuery are now covered by standard APIs.
- Recommendation: Evaluate whether targeted vanilla replacements can reduce dependency and improve startup performance.
- Can I Use feature: queryselector
- Unsupported target share: 0.0%
- Compatibility source: caniuse
- MDN: https://developer.mozilla.org/docs/Web/API/Document/querySelector
CSS Quality Analysis
Powered by Project Wallace — css-analyzer and css-code-quality.
https://www.infogo.gov.on.ca/ontario-design-system/styles/ds-theme.min.css
Code Quality Scores
- Performance: 90/100 ✅
- Maintainability: 80/100 ⚠️
- Complexity: 84/100 ⚠️
Quality Violations
SelectorDuplications: score impact 4DeclarationDuplications: score impact 6MaxSelectorsPerRule: score impact 7MaxDeclarationsPerRule: score impact 7MoreThanMostCommonSelectorsPerRule: score impact 1MoreThanMostCommonDeclarationsPerRule: score impact 5MoreThanMostCommonSelectorComplexity: score impact 5MoreThanMostCommonSelectorSpecificity: score impact 5MaxSelectorComplexity: score impact 5ImportantRatio: score impact 1
Complexity Metrics
- Source lines of code: 4808
- Stylesheet complexity: 12405
- Total rules: 1502
- Total selectors: 1730
- Total declarations: 2946
!importantdeclarations: 358- Max selector specificity: 0,5,4
Design Tokens
- Colors: 82 unique
- #009adb, transparent, #fff, #f2f2f2, #ccc, #999, #666, #4d4d4d, #1a1a1a, #cba52e, #fcaf17, #c1b28f, #39b54a, #8dc63f, #49a7a2, #00b2e3, #3193cc, #b975b7, #f15a22, #f0454b, #f03093, #f0e7cc, #f8e5c3, #ebe7db, #d1efd4, #ddedc7, #cfeded, #c5eefa, #dbe9f5, #f1e3f2, #fee1d9, #ffe0e2, #fedff0, #86743d, #8a600d, #7b725c, #2b8737, #5f8129, #367a76, #1080a6, #0369ac, #92278f, #c64a1c, #d81a21, #c00264, #06c, #551a8b, #00478f, #002142, rgba(0,0,0,.3), #e6e6e6, #e0f0ff, #c2e0ff, #e8e8e8, #d1d1d1, rgba(255,255,255,.7), #0000001a, #0000000d, rgba(255,255,255,0), rgba(0,0,0,.2), rgba(252,0,0,0), #0000004d, #e191003c, #007b9e1d, #0077a056, #ffd440, #e2f0f4, #fef6dc, #118847, #e5f0e9, #cd0000, #fceff0, #6b0000, #280000, #000, #262626, #333, #404040, rgba(0,0,0,.6), currentcolor, rgba(26,26,26,.6), #b2b2b2
- Font families: 7 unique
- Raleway,"Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif, "Courier Prime", "Open Sans", Raleway, "Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif, "Courier Prime",Courier,"Courier New",monospace, "Open Sans",sans-serif
- Font sizes: 16 unique
- 0, 2rem, 2.5rem, 1.6875rem, 2.0625rem, 1.4375rem, 1.75rem, 1.25rem, 1.5rem, 1.125rem, 1.1875rem, 1rem, 1.375rem, .625rem, .875rem, 1.0625rem
- Z-index values: 9 unique
- 0, 1, 2, 3, 4, 5, 6, 9999, 10000
https://www.infogo.gov.on.ca/site.css
Code Quality Scores
- Performance: 86/100 ⚠️
- Maintainability: 96/100 ✅
- Complexity: 93/100 ✅
Quality Violations
DeclarationDuplications: score impact 4TooMuchComments: score impact 10MaxDeclarationsPerRule: score impact 4MoreThanMostCommonSelectorComplexity: score impact 1MoreThanMostCommonSelectorSpecificity: score impact 1MaxSelectorComplexity: score impact 3AverageSelectorComplexity: score impact 2
Complexity Metrics
- Source lines of code: 723
- Stylesheet complexity: 2135
- Total rules: 150
- Total selectors: 171
- Total declarations: 530
!importantdeclarations: 26- Max selector specificity: 1,1,0
Design Tokens
- Custom properties (CSS variables): 18 unique
- --ont-primary, --ont-primary-active, --ont-primary-shadow, --ont-primary-link, --ont-primary-link-visited, --ont-secondary-hover, --ont-secondary-active, --ont-dark-teal, --ont-greyscale-10, --ont-greyscale-30, --ont-greyscale-60, --ont-greyscale-70, --ont-greyscale-80, --ont-greyscale-82, --ont-greyscale-91, --ont-greyscale-95, --ont-greyscale-98, --ont-hr
- Colors: 29 unique
- #00478f, #002142, #009adb, #0066cc, #551a8b, #e0f0ff, #c2e0ff, #367a76, hsl(0, 0%, 10%), hsl(0, 0%, 30%), hsl(0, 0%, 60%), hsl(0, 0%, 70%), hsl(0, 0%, 80%), hsl(0, 0%, 82%), hsl(0, 0%, 91%), hsl(0, 0%, 95%), hsl(0, 0%, 98%), hsl(0, 0%, 93%), white, transparent, rgba(0, 0, 0, .3), rgba(0, 0, 0, 0.834), #f2f2f2, rgba(239, 239, 239, 1), rgba(59, 59, 59, 1), rgb(84, 84, 84), rgb(170, 170, 170), rgba(118, 118, 118, 0.3), currentcolor
- Font families: 4 unique
- "Open Sans", sans-serif, "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif, "Raleway", "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif, 'Material Icons'
- Font sizes: 6 unique
- 1.125rem, 1rem, 1.25rem, .875rem, 16px, 24px
- Z-index values: 3 unique
- 1, 2, 10