Manifest position 122 · CrUX rank bucket 1000
https://itch.io
Partial after retries
57 of 58 atomic checks were judged. Authentication inspection was blocked by Cloudflare verification; authenticated account, final payment, upload, and game execution were not included in representative-path coverage.
All 58 atomic check outcomes
| Principle / check | Status | Confidence | Evidence or reason |
|---|---|---|---|
respect-user-preferencesrespects-color-scheme | issues | high | Paired screenshots under default and prefers-color-scheme: dark are visually identical, and the probe found no color-scheme declaration or prefers-color-scheme rule. F01 medium: The main marketplace UI stays light when the user requests dark mode. |
respect-user-preferencesrespects-reduced-motion | issues | high | The reduced-motion probe found no prefers-reduced-motion rule while the image audit found animated GIF assets; the reduced-motion video records the same promotional animation surface. F02 medium: Animated GIF promotions continue without a reduced-motion alternative. |
respect-user-preferencesrespects-contrast | issues | high | The prefers-contrast screenshot does not retint the page; the probe found no prefers-contrast/forced-colors CSS and Lighthouse reported 104 contrast failures on the homepage. F03 high: Many text and control combinations fail contrast, with no high-contrast adaptation. |
implement-natural-interactionsview-transitions | issues | high | DOM/CSS probes across homepage, listing, search, and detail found no view-transition-name, ::view-transition, or @view-transition usage despite frequent browse-to-detail navigation. F04 low: Route changes use abrupt full-document swaps. |
implement-natural-interactionsscroll-driven-animations | pass | medium | CSS/DOM probes found no scroll-linked visual effects and no scroll timeline or animation-timeline; scrolling remained platform-native with low blocking work. |
implement-natural-interactionsphysical-gestures | pass | medium | Mobile screenshots and probes show standard document scrolling and links, with no custom pointer-driven gesture surface fighting browser behavior. |
provide-guided-navigationscroll-state-aware-chrome | issues | medium | The mobile listing is 5,212 CSS pixels tall and the detail page is 11,167 pixels tall, while probes found no scroll-state query or progress/position feedback. F05 low: Long listing pages provide static chrome with no scroll-position feedback. |
provide-guided-navigationanchored-positioning | issues | medium | The rendered interfaces contain header menus and filtering controls, but probes found no anchor-name, position-anchor, or position-try rules. F06 low: Menus and filter overlays do not use CSS anchor positioning. |
provide-guided-navigationdirects-attention | pass | medium | Selected search tabs use a strong underline, filters are visibly labelled, focus outlines are present, and browse/detail transitions preserve clear headings. |
maximize-content-reduce-noiseno-intrusive-interruptions | issues | high | The mobile homepage screenshot shows a fixed YouTube subscribe bar covering content at the bottom with no visible dismiss control. F07 medium: A persistent YouTube promotion consumes the bottom of the mobile viewport. |
maximize-content-reduce-noisesemantic-dismissible-primitives | pass | medium | The search template uses a native dialog and three details disclosures; no blocking modal is present on load. |
maximize-content-reduce-noisereduced-chrome | pass | medium | Aside from the separately reported mobile promo, listing and detail screenshots devote the majority of the viewport to games, art, and task controls rather than decorative app framing. |
adapt-to-the-form-factorresponsive-no-horizontal-scroll | pass | medium | All four 360x800 layout captures report horizontalOverflowPx 0 and a viewport meta; screenshots show reflowed cards and controls. |
adapt-to-the-form-factorcomponent-level-responsiveness | issues | medium | All four representative probes found no @container/container-type usage, even though cards, filters, and marketplace modules are reused in varied widths. F08 low: Responsive behavior is viewport-only rather than component-aware. |
adapt-to-the-form-factorinput-modality-aware | issues | high | The focus/target probe found 34 of the first 40 homepage targets under 44px in at least one dimension; many links are 17–32px tall, and Lighthouse reported target-size failures. F09 high: Many controls are too small for reliable touch input. |
support-core-task-successclear-purpose-and-primary-action | pass | medium | Home, listing, search, and detail screenshots clearly identify games and expose Browse, Filter, Download Now, or search-result actions. |
support-core-task-successprimary-flow-completion | pass | medium | The audited browse → detail → purchase path reaches a clear free-download/payment-choice page with a prominent “No thanks” route and visible included files. |
support-core-task-successclear-system-state-and-recovery | pass | medium | The invalid route returns HTTP 404 and renders a clear “We couldn’t find your page” message with a recovery link; purchase requirements are visibly labelled. |
be-fast-and-stablegood-core-web-vitals | issues | high | Lighthouse measured 29.9s LCP and 0.284 CLS on the selected game detail page; listing LCP was also 4.2s. F10 high: The representative game detail template has very poor lab LCP and unstable loading. |
be-fast-and-stablevisual-stability | issues | high | The detail image audit found all 7 images missing width/height; Lighthouse measured CLS 0.284 and identified a layout-shift culprit. F11 medium: Game detail media lacks dimensions and shifts during load. |
be-fast-and-stableefficient-main-thread | pass | medium | Trace reports one 91ms long task and 41ms TBT on home; Lighthouse TBT is 50–80ms across representative templates. |
be-fast-and-stableefficient-resource-delivery | issues | high | The HAR identifies main.css and synchronous lib.min.js/index.min.js as parser-inserted high-priority candidates; Lighthouse flags LCP discovery and dependency-tree issues. F12 medium: Parser-blocking assets and weak LCP discovery delay primary content. |
be-fast-and-stabletrim-unused-and-duplicate-code | issues | high | The homepage transfers 793KB; 289KB is script, including 158KB for Google Tag Manager, before a user interacts. F13 medium: Analytics and shared JavaScript consume a disproportionate share of the initial load. |
be-inclusivenames-roles-labels | issues | high | Lighthouse found unnamed buttons, 14 homepage images without alt, 16 unnamed links, and an unnamed SVG; listing/detail templates add dozens more. The probes also found no main landmark. F14 high: Core marketplace cards and controls lack accessible alternatives. |
be-inclusivesufficient-contrast | issues | high | Lighthouse reported 104 contrast failures on home, 51 on listing, and 3 on the creator detail template. F15 high: Text contrast fails widely across the marketplace. |
be-inclusivestructure-and-focus | issues | high | The DOM probes found zero main, nav, header, or footer semantic landmarks on home, listing, search, and detail. Lighthouse fails landmark-one-main on each audited template. F16 medium: Representative pages lack landmark structure. |
be-inclusivelegible-text | pass | medium | Desktop/mobile screenshots show readable line lengths, wrapping, hierarchy, and no horizontal clipping on representative templates. |
be-inclusivezoom-reflow-targets-and-media | issues | high | Lighthouse reports 11 target-size failures on home, 9 on listing, and 112 on detail; probes show many 16–35px-high controls. F17 high: Touch-target sizing prevents a comparable mobile experience. |
follow-best-practicesno-console-errors | pass | medium | Lighthouse best-practices is 1.0 on home/listing and does not report console errors or uncaught exceptions on any audited template. |
follow-best-practicessound-document-and-assets | issues | high | The detail image audit found 7/7 images without dimensions and Lighthouse found 5 images displayed at incorrect aspect ratio. F18 medium: Creator imagery is delivered without dimensions and at incorrect aspect ratios. |
follow-best-practicesbrowser-platform-hygiene | issues | medium | Lighthouse best-practices scored the detail template 0.92 and reported one inspector issue, while home and listing scored 1.0. F19 low: The game detail template logs a browser inspector issue. |
be-discoverabletitle-and-description | pass | medium | Home, listing, and detail have descriptive unique titles and meta descriptions; internal search is deliberately disallowed by robots. |
be-discoverablecrawlable-and-mobile-friendly | pass | medium | All representative pages have viewport meta and real href links; robots allows public templates and explicitly scopes search/checkout exclusions. |
be-discoverablecanonical-and-indexing-signals | issues | high | Homepage and /games probes found no canonical URL, while the purchase page does provide one; robots and sitemap otherwise align and return successful statuses. F20 low: Key indexable marketplace templates omit self-referencing canonicals. |
be-discoverablestructured-and-shareable-metadata | pass | medium | Home has JSON-LD plus Open Graph/Twitter metadata; game detail has two JSON-LD blocks and social metadata matching visible content. |
be-private-and-securesecure-transport-and-headers | issues | high | The headers primitive confirms HTTPS and nosniff/X-Frame-Options, but no Content-Security-Policy or Strict-Transport-Security; analytics cookies are also set without Secure. F21 high: Baseline transport defenses are incomplete. |
be-private-and-securedata-minimisation-and-third-parties | issues | high | Tracker evidence found Google Tag Manager and Google Analytics; two analytics cookies are non-Secure, SameSite=None, and live 400 days. GTM alone transfers 158KB. F22 medium: Analytics loads immediately and creates long-lived identifiers. |
be-private-and-securein-context-permissions-and-modern-auth | blocked | high | The login route consistently returned a Cloudflare “Performing security verification” interstitial instead of the authentication UI. |
be-private-and-securedefensive-browser-policies | issues | high | Headers show no HSTS, CSP, or Permissions-Policy; Referrer-Policy is no-referrer-when-downgrade rather than a stricter modern policy. Clickjacking protection and nosniff are present. F23 medium: Defensive browser policy headers are incomplete or dated. |
be-resilientprogressive-enhancement | pass | medium | Discoverability captures show 100% rendered-content coverage in raw server HTML on home, listing, and detail, with non-JS crawler screenshots retaining content. |
be-resilientresilient-runtime-behaviour | pass | medium | Representative mobile layouts have zero horizontal overflow; native dialog/details are used on search and task content remains available in raw HTML. |
be-resilientoffline-and-installable | not-applicable | medium | The site publishes a standalone manifest but no service worker; this audit treats the public MPA marketplace as an online catalog rather than an intended installable web app. |
be-resilientnetwork-and-http-failure-states | pass | medium | A deliberately invalid route returns a true HTTP 404 and a useful illustrated recovery page with a link back to itch.io. |
be-internationalisedlang-dir-and-logical-properties | issues | high | All pages declare lang=en but no explicit dir; probes found no logical-property rules in accessible styles, while the platform exposes translations and serves global content. F24 medium: The global marketplace does not declare direction or expose logical-layout CSS in audited templates. |
be-internationalisedlocale-aware-data | pass | medium | Rendered templates expose a translation endpoint, locale_en state, localized relative durations, and clear currency symbols rather than ambiguous bare numbers. |
be-internationalisedtime-zone-correctness | pass | medium | Audited public content uses relative durations such as “1 hour ago” rather than ambiguous local absolute timestamps; no scheduling flow was present. |
be-trustworthyno-dark-patterns | pass | medium | The free-game purchase page clearly offers “No thanks, just take me to the downloads,” states the optional suggested payment, and presents terms plainly. |
be-trustworthyhumane-error-handling | pass | medium | Purchase uses native required/email semantics with a visible label and explanatory confirmation text; the 404 state gives a direct recovery action. |
be-trustworthytrustworthy-input-assistance | pass | medium | The purchase email field uses type=email and is visibly labelled; search fields use appropriate text semantics and do not prevent paste. |
be-trustworthysafe-commercial-and-account-flows | pass | medium | The purchase page shows optional contribution, included file sizes, payment methods, terms, and a no-payment route before commitment. |
be-sustainableoptimised-assets | issues | high | Home has 52 below-fold images without lazy loading, 61 without srcset, and animated GIF/JPEG/PNG assets; detail serves a 2500px PNG at 600px and all seven images are legacy formats. F25 medium: Marketplace and creator images are frequently oversized or delivered in legacy formats. |
be-sustainableno-wasteful-work | pass | medium | The home trace has only one long task and 41ms TBT; no autoplay video/media element or repeated background fetch loop was observed. |
be-sustainablethird-party-and-media-budget | issues | high | The homepage transfers 793KB; GTM is the largest single response at 158KB and two GIFs total about 180KB, with analytics active immediately. F26 medium: Third-party analytics and promotional media use substantial resources before interaction. |
be-agent-readystructured-agent-capabilities | not-applicable | high | No WebMCP capability was exposed. |
be-agent-readyon-device-inference | not-applicable | high | No on-device inference surface was present. |
be-memory-efficientno-leak-under-repeated-interaction | pass | medium | After ten full-page scroll cycles, heap self-size rose only 149,319 bytes (1.2%) and node count 1,329 (0.6%), consistent with bounded warm-up rather than unbounded retention. |
be-memory-efficientbounded-footprint | pass | medium | The homepage baseline heap is 12.35MB self-size with 219,473 nodes, proportionate to a dense marketplace page. |
be-memory-efficientno-detached-dom-or-unbounded-listeners | pass | medium | Before/after heap summaries show no Detached* constructor among retained-size leaders and only small bounded growth after repeated scrolling. |
Provenance
Canonical report: results/atomic/reports/0122-itch_io.json
Report SHA-256: 55ef3292f0a4894e8fcf65dd050cdac0d33134eee81f36743a11322e1cab56db
Local retained report: runs/2026-07-17T17-27-24-856Z/atomic-reports/itch_io/2026-07-27T15-10-05-169Z/report.json
Local evidence root: runs/2026-07-17T17-27-24-856Z/atomic-reports/itch_io/2026-07-27T15-10-05-169Z
Catalog SHA-256: sha256:78ccfdb2d483f4c57d9dafed80fd86c6265585a56457c8dcfddc254b80fb44d7
Raw screenshots, HARs, traces, heaps, and other browser artifacts are retained at the local evidence root and intentionally are not committed. Artifact paths in the canonical report are relative to that root.