B
SCORE 75 / 100
$skillox install view-transitionsSoon
Sign in to followFollowing emails you when a re-scan drops the grade. Opt-out is per-creator on /account/billing.
Why grade B?
score · 75 / 100The current grade reflects 4 medium findings (3+ MEDs → B).
0 CRIT0 HIGH4 MED0 LOW
To reach a higher grade
- AReach Atarget score 95
Resolve 2 of 4 MED (cap is 2).
Thresholds are documented at /docs/grading. Source-of-truth is the grade() function in @skillox/scanner.
Latest scan findings
Scan crawl-as075ed4r432b24pz1lhhfuk · Thu, 28 May 2026 17:45:37 GMT · 3ms
medNo capability manifest declaredThe skill ships without a `manifest.yaml` or `capabilities` block in its frontmatter. Without a manifest, the runtime cannot enforce what this skill is permitted to do.rule: no-manifest▾
No capability manifest declared
The skill ships without a `manifest.yaml` or `capabilities` block in its frontmatter. Without a manifest, the runtime cannot enforce what this skill is permitted to do.
rule:
no-manifestmedLink text shows "next.js" but points at beta.nextjs.orgThe visible link text contains the domain `next.js`, but the URL actually targets `beta.nextjs.org`. This is a phishing/smuggling pattern — the reader sees one host, the agent fetches another. Either update the text or the URL so they match.▾
Link text shows "next.js" but points at beta.nextjs.org
The visible link text contains the domain `next.js`, but the URL actually targets `beta.nextjs.org`. This is a phishing/smuggling pattern — the reader sees one host, the agent fetches another. Either update the text or the URL so they match.
170```
171
172**Note:** The [Next.js App Router](https://beta.nextjs.org/docs/app-directory-roadmap) is in beta at the time of writing and best-practices around it and the pages directory may be subject to change.← text→next.js · href→beta.nextjs.org
173
174To use this in a Next.js app, first we'll disable React strict mode in development. Strict mode runs its checks by rendering the component twice. This interferes with the `ViewTransition` rendering flow in development so we'll disable it globally and re-enable it for child components with the `StrictMode` component.
medLink text shows "next.js" but points at frolicking-dusk-29be0a.netlify.appThe visible link text contains the domain `next.js`, but the URL actually targets `frolicking-dusk-29be0a.netlify.app`. This is a phishing/smuggling pattern — the reader sees one host, the agent fetches another. Either update the text or the URL so they match.▾
Link text shows "next.js" but points at frolicking-dusk-29be0a.netlify.app
The visible link text contains the domain `next.js`, but the URL actually targets `frolicking-dusk-29be0a.netlify.app`. This is a phishing/smuggling pattern — the reader sees one host, the agent fetches another. Either update the text or the URL so they match.
202```
203
204View the [Next.js demonstration](https://frolicking-dusk-29be0a.netlify.app/), the [live Next.js demo](https://photography-view-transitions-nextjs.vercel.app/) and its [source](https://github.com/domchristie/photography-view-transitions-nextjs).← text→next.js · href→frolicking-dusk-29be0a.netlify.app
205
206**Note**: the React documentation advises against using `shouldComponentUpdate` and `forceUpdate`, stating they should only be used for performance optimizations, and that `shouldComponentUpdate` is not guaranteed to be called. As page animations are an enhancement, and this component will work even if `shouldComponentUpdate` is not called, this caveat is acceptable.
medLink text shows "next.js" but points at photography-view-transitions-nextjs.vercel.appThe visible link text contains the domain `next.js`, but the URL actually targets `photography-view-transitions-nextjs.vercel.app`. This is a phishing/smuggling pattern — the reader sees one host, the agent fetches another. Either update the text or the URL so they match.▾
Link text shows "next.js" but points at photography-view-transitions-nextjs.vercel.app
The visible link text contains the domain `next.js`, but the URL actually targets `photography-view-transitions-nextjs.vercel.app`. This is a phishing/smuggling pattern — the reader sees one host, the agent fetches another. Either update the text or the URL so they match.
202```
203
204View the [Next.js demonstration](https://frolicking-dusk-29be0a.netlify.app/), the [live Next.js demo](https://photography-view-transitions-nextjs.vercel.app/) and its [source](https://github.com/domchristie/photography-view-transitions-nextjs).← text→next.js · href→photography-view-transitions-nextjs.vercel.app
205
206**Note**: the React documentation advises against using `shouldComponentUpdate` and `forceUpdate`, stating they should only be used for performance optimizations, and that `shouldComponentUpdate` is not guaranteed to be called. As page animations are an enhancement, and this component will work even if `shouldComponentUpdate` is not called, this caveat is acceptable.
skillox.io/c/view-transitions