Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: reactjs/ko.react.dev
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: reactjs/ko.react.dev
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: sync-d52b3ec7
Choose a head ref
  • 3 commits
  • 47 files changed
  • 2 contributors

Commits on Jul 18, 2025

  1. [be] Add deadlinks script (#7879)

    While rewriting the compiler docs I happened to notice some deadlinks. This PR adds a new `yarn deadlinks` script to identify all deadlinks.
    
    I decided to make this a script for now for simplicity but in the future could be ported to an ESlint rule.
    
    The script handles:
    
    - [x] checks images correctly (images are stored in /public but links can omit the /public)
    - [x] looks up React error codes for dynamic error pages
    - [x] lints links to contributors and uses URL from acknowledgements page if the member is no longer active on the core team
    - [x] special injected anchor tags like #recap and #challenges
    
    Example:
    
    ```
    yarn run v1.22.22
    $ node scripts/deadLinkChecker.js
    Checking 177 markdown files...
    Fetched 552 React error codes
    
    src/content/learn/add-react-to-an-existing-project.md:23:58
      Link text: React-based frameworks
      URL: /learn/start-a-new-react-project
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/learn/add-react-to-an-existing-project.md:27:45
      Link text: benefit from the best practices
      URL: /learn/start-a-new-react-project#can-i-use-react-without-a-framework
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/learn/add-react-to-an-existing-project.md:152:269
      Link text: a React framework
      URL: /learn/start-a-new-react-project
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/learn/synchronizing-with-effects.md:735:18
      Link text: framework
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/learn/typescript.md:16:3
      Link text: Common types from `@types/react`
      URL: /learn/typescript/#useful-types
      ✗ Target file not found for: /learn/typescript/
    
    src/content/learn/typescript.md:17:3
      Link text: Further learning locations
      URL: /learn/typescript/#further-learning
      ✗ Target file not found for: /learn/typescript/
    
    src/content/learn/typescript.md:23:5
      Link text: production-grade React frameworks
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/learn/you-might-not-need-an-effect.md:29:399
      Link text: frameworks
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/learn/you-might-not-need-an-effect.md:754:106
      Link text: frameworks
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/learn/your-first-component.md:218:1
      Link text: React-based frameworks
      URL: /learn/start-a-new-react-project
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react/ViewTransition.md:146:248
      Link text: reveal content
      URL: /link-to-suspense-below
      ✗ Target file not found for: /link-to-suspense-below
    
    src/content/reference/react/captureOwnerStack.md:60:94
      Link text: `errorInfo.componentStack` in `onUncaughtError`
      URL: /reference/react-dom/client/hydrateRoot#show-a-dialog-for-uncaught-errors
      ✗ Anchor #show-a-dialog-for-uncaught-errors not found in reference/react-dom/client/hydrateRoot.md
    
    src/content/reference/react/forwardRef.md:9:65
      Link text: here
      URL: /blog/2024/04/25/react-19#ref-as-a-prop
      ✗ Target file not found for: /blog/2024/04/25/react-19
    
    src/content/reference/react/use.md:315:24
      Link text: Server Component
      URL: /reference/react/components#server-components
      ✗ Anchor #server-components not found in reference/react/components.md
    
    src/content/reference/react/useEffect.md:899:67
      Link text: if you use a framework,
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react/useEffect.md:1051:18
      Link text: framework
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react/useEffect.md:1736:92
      Link text: framework
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react/useInsertionEffect.md:136:65
      Link text: non-blocking update,
      URL: /reference/react/useTransition#marking-a-state-update-as-a-non-blocking-transition
      ✗ Anchor #marking-a-state-update-as-a-non-blocking-transition not found in reference/react/useTransition.md
    
    src/content/reference/react-dom/createPortal.md:53:76
      Link text: key.
      URL: /learn/rendering-lists/#keeping-list-items-in-order-with-key
      ✗ Target file not found for: /learn/rendering-lists/
    
    src/content/reference/react-dom/index.md:24:1
      Link text: React-based frameworks
      URL: /learn/start-a-new-react-project
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react-dom/index.md:51:3
      Link text: `unmountComponentAtNode`
      URL: /reference/react-dom/unmountComponentAtNode
      ✗ Target file not found for: /reference/react-dom/unmountComponentAtNode
    
    src/content/reference/react-dom/preinit.md:7:1
      Link text: React-based frameworks
      URL: /learn/start-a-new-react-project
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react-dom/preinitModule.md:7:1
      Link text: React-based frameworks
      URL: /learn/start-a-new-react-project
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react-dom/preload.md:7:1
      Link text: React-based frameworks
      URL: /learn/start-a-new-react-project
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react-dom/preloadModule.md:7:1
      Link text: React-based frameworks
      URL: /learn/start-a-new-react-project
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/rsc/directives.md:13:36
      Link text: bundlers compatible with React Server Components
      URL: /learn/start-a-new-react-project#full-stack-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/rsc/server-components.md:7:34
      Link text: React Server Components
      URL: /learn/start-a-new-react-project#full-stack-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/rsc/server-functions.md:198:28
      Link text: `useActionState`
      URL: /reference/react-dom/hooks/useFormState
      ✗ Target file not found for: /reference/react-dom/hooks/useFormState
    
    src/content/reference/rsc/server-functions.md:222:28
      Link text: `useActionState`
      URL: /reference/react-dom/hooks/useFormState
      ✗ Target file not found for: /reference/react-dom/hooks/useFormState
    
    src/content/reference/rsc/use-client.md:44:77
      Link text: compatible bundlers
      URL: /learn/start-a-new-react-project#full-stack-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/rsc/use-server.md:98:54
      Link text: serializable props
      URL: /reference/rsc/use-client#passing-props-from-server-to-client-components
      ✗ Anchor #passing-props-from-server-to-client-components not found in reference/rsc/use-client.md
    
    src/content/reference/react-dom/client/createRoot.md:212:278
      Link text: using a framework
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react-dom/client/index.md:7:185
      Link text: framework
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react-dom/components/common.md:919:89
      Link text: check out more examples.
      URL: /reference/react/useRef#examples-dom
      ✗ Anchor #examples-dom not found in reference/react/useRef.md
    
    src/content/reference/react-dom/components/form.md:39:23
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/form.md:233:63
      Link text: reference documentation
      URL: /reference/react/hooks/useOptimistic
      ✗ Target file not found for: /reference/react/hooks/useOptimistic
    
    src/content/reference/react-dom/components/input.md:33:24
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/link.md:33:23
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/meta.md:33:23
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/option.md:39:25
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/progress.md:33:27
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/script.md:34:25
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/select.md:39:25
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/style.md:33:24
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/textarea.md:33:27
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/title.md:33:24
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/server/index.md:7:182
      Link text: framework
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react-dom/static/index.md:7:146
      Link text: framework
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/blog/2023/03/16/introducing-react-dev.md:45:5
      Link text: API Reference
      URL: /reference
      ✗ Target file not found for: /reference
    
    src/content/blog/2023/03/16/introducing-react-dev.md:610:117
      Link text: Alternatives
      URL: /reference/react-dom/findDOMNode#alternatives
      ✗ Target file not found for: /reference/react-dom/findDOMNode
    
    src/content/blog/2023/03/22/react-labs-what-we-have-been-working-on-march-2023.md:34:40
      Link text: Next.js App Router
      URL: /learn/start-a-new-react-project#nextjs-app-router
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/blog/2023/03/22/react-labs-what-we-have-been-working-on-march-2023.md:95:605
      Link text: Next.js App Router
      URL: /learn/start-a-new-react-project#nextjs-app-router
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/blog/2024/02/15/react-labs-what-we-have-been-working-on-february-2024.md:110:3
      Link text: Sathya Gunasekaran
      URL: /community/team#sathya-gunasekaran
      ✗ Contributor link should be updated to: https://github.com/gsathya
    
    src/content/blog/2024/04/25/react-19-upgrade-guide.md:132:20
      Link text: improved how errors are handled
      URL: /blog/2024/04/25/react-19#error-handling
      ✗ Target file not found for: /blog/2024/04/25/react-19
    
    src/content/blog/2024/04/25/react-19-upgrade-guide.md:502:19
      Link text: `ref` as a prop
      URL: /blog/2024/04/25/react-19#ref-as-a-prop
      ✗ Target file not found for: /blog/2024/04/25/react-19
    
    src/content/blog/2024/12/05/react-19.md:358:391
      Link text: Full-stack React Architecture
      URL: /learn/start-a-new-react-project#which-features-make-up-the-react-teams-full-stack-architecture-vision
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/blog/2024/12/05/react-19.md:392:28
      Link text: React Server Actions
      URL: /reference/rsc/server-actions
      ✗ Target file not found for: /reference/rsc/server-actions
    
    src/content/blog/2025/04/23/react-labs-view-transitions-activity-and-more.md:2498:37
      Link text: view transition classes
      URL: /reference/react/ViewTransition#view-transition-classes
      ✗ Anchor #view-transition-classes not found in reference/react/ViewTransition.md
    
    
    Found 58 dead links out of 1555 total links
    
    info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
    
    ```
    poteto authored Jul 18, 2025
    Configuration menu
    Copy the full SHA
    e245b77 View commit details
    Browse the repository at this point in the history
  2. Fix deadlinks (#7880)

    * [be] Add deadlinks script
    
    While rewriting the compiler docs I happened to notice some deadlinks. This PR adds a new `yarn deadlinks` script to identify all deadlinks.
    
    I decided to make this a script for now for simplicity but in the future could be ported to an ESlint rule.
    
    The script handles:
    
    - [x] checks images correctly (images are stored in /public but links can omit the /public)
    - [x] looks up React error codes for dynamic error pages
    - [x] lints links to contributors and uses URL from acknowledgements page if the member is no longer active on the core team
    - [x] special injected anchor tags like #recap and #challenges
    
    Example:
    
    ```
    yarn run v1.22.22
    $ node scripts/deadLinkChecker.js
    Checking 177 markdown files...
    Fetched 552 React error codes
    
    src/content/learn/add-react-to-an-existing-project.md:23:58
      Link text: React-based frameworks
      URL: /learn/start-a-new-react-project
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/learn/add-react-to-an-existing-project.md:27:45
      Link text: benefit from the best practices
      URL: /learn/start-a-new-react-project#can-i-use-react-without-a-framework
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/learn/add-react-to-an-existing-project.md:152:269
      Link text: a React framework
      URL: /learn/start-a-new-react-project
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/learn/synchronizing-with-effects.md:735:18
      Link text: framework
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/learn/typescript.md:16:3
      Link text: Common types from `@types/react`
      URL: /learn/typescript/#useful-types
      ✗ Target file not found for: /learn/typescript/
    
    src/content/learn/typescript.md:17:3
      Link text: Further learning locations
      URL: /learn/typescript/#further-learning
      ✗ Target file not found for: /learn/typescript/
    
    src/content/learn/typescript.md:23:5
      Link text: production-grade React frameworks
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/learn/you-might-not-need-an-effect.md:29:399
      Link text: frameworks
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/learn/you-might-not-need-an-effect.md:754:106
      Link text: frameworks
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/learn/your-first-component.md:218:1
      Link text: React-based frameworks
      URL: /learn/start-a-new-react-project
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react/ViewTransition.md:146:248
      Link text: reveal content
      URL: /link-to-suspense-below
      ✗ Target file not found for: /link-to-suspense-below
    
    src/content/reference/react/captureOwnerStack.md:60:94
      Link text: `errorInfo.componentStack` in `onUncaughtError`
      URL: /reference/react-dom/client/hydrateRoot#show-a-dialog-for-uncaught-errors
      ✗ Anchor #show-a-dialog-for-uncaught-errors not found in reference/react-dom/client/hydrateRoot.md
    
    src/content/reference/react/forwardRef.md:9:65
      Link text: here
      URL: /blog/2024/04/25/react-19#ref-as-a-prop
      ✗ Target file not found for: /blog/2024/04/25/react-19
    
    src/content/reference/react/use.md:315:24
      Link text: Server Component
      URL: /reference/react/components#server-components
      ✗ Anchor #server-components not found in reference/react/components.md
    
    src/content/reference/react/useEffect.md:899:67
      Link text: if you use a framework,
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react/useEffect.md:1051:18
      Link text: framework
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react/useEffect.md:1736:92
      Link text: framework
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react/useInsertionEffect.md:136:65
      Link text: non-blocking update,
      URL: /reference/react/useTransition#marking-a-state-update-as-a-non-blocking-transition
      ✗ Anchor #marking-a-state-update-as-a-non-blocking-transition not found in reference/react/useTransition.md
    
    src/content/reference/react-dom/createPortal.md:53:76
      Link text: key.
      URL: /learn/rendering-lists/#keeping-list-items-in-order-with-key
      ✗ Target file not found for: /learn/rendering-lists/
    
    src/content/reference/react-dom/index.md:24:1
      Link text: React-based frameworks
      URL: /learn/start-a-new-react-project
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react-dom/index.md:51:3
      Link text: `unmountComponentAtNode`
      URL: /reference/react-dom/unmountComponentAtNode
      ✗ Target file not found for: /reference/react-dom/unmountComponentAtNode
    
    src/content/reference/react-dom/preinit.md:7:1
      Link text: React-based frameworks
      URL: /learn/start-a-new-react-project
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react-dom/preinitModule.md:7:1
      Link text: React-based frameworks
      URL: /learn/start-a-new-react-project
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react-dom/preload.md:7:1
      Link text: React-based frameworks
      URL: /learn/start-a-new-react-project
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react-dom/preloadModule.md:7:1
      Link text: React-based frameworks
      URL: /learn/start-a-new-react-project
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/rsc/directives.md:13:36
      Link text: bundlers compatible with React Server Components
      URL: /learn/start-a-new-react-project#full-stack-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/rsc/server-components.md:7:34
      Link text: React Server Components
      URL: /learn/start-a-new-react-project#full-stack-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/rsc/server-functions.md:198:28
      Link text: `useActionState`
      URL: /reference/react-dom/hooks/useFormState
      ✗ Target file not found for: /reference/react-dom/hooks/useFormState
    
    src/content/reference/rsc/server-functions.md:222:28
      Link text: `useActionState`
      URL: /reference/react-dom/hooks/useFormState
      ✗ Target file not found for: /reference/react-dom/hooks/useFormState
    
    src/content/reference/rsc/use-client.md:44:77
      Link text: compatible bundlers
      URL: /learn/start-a-new-react-project#full-stack-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/rsc/use-server.md:98:54
      Link text: serializable props
      URL: /reference/rsc/use-client#passing-props-from-server-to-client-components
      ✗ Anchor #passing-props-from-server-to-client-components not found in reference/rsc/use-client.md
    
    src/content/reference/react-dom/client/createRoot.md:212:278
      Link text: using a framework
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react-dom/client/index.md:7:185
      Link text: framework
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react-dom/components/common.md:919:89
      Link text: check out more examples.
      URL: /reference/react/useRef#examples-dom
      ✗ Anchor #examples-dom not found in reference/react/useRef.md
    
    src/content/reference/react-dom/components/form.md:39:23
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/form.md:233:63
      Link text: reference documentation
      URL: /reference/react/hooks/useOptimistic
      ✗ Target file not found for: /reference/react/hooks/useOptimistic
    
    src/content/reference/react-dom/components/input.md:33:24
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/link.md:33:23
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/meta.md:33:23
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/option.md:39:25
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/progress.md:33:27
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/script.md:34:25
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/select.md:39:25
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/style.md:33:24
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/textarea.md:33:27
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/components/title.md:33:24
      Link text: common element props.
      URL: /reference/react-dom/components/common#props
      ✗ Anchor #props not found in reference/react-dom/components/common.md
    
    src/content/reference/react-dom/server/index.md:7:182
      Link text: framework
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/reference/react-dom/static/index.md:7:146
      Link text: framework
      URL: /learn/start-a-new-react-project#production-grade-react-frameworks
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/blog/2023/03/16/introducing-react-dev.md:45:5
      Link text: API Reference
      URL: /reference
      ✗ Target file not found for: /reference
    
    src/content/blog/2023/03/16/introducing-react-dev.md:610:117
      Link text: Alternatives
      URL: /reference/react-dom/findDOMNode#alternatives
      ✗ Target file not found for: /reference/react-dom/findDOMNode
    
    src/content/blog/2023/03/22/react-labs-what-we-have-been-working-on-march-2023.md:34:40
      Link text: Next.js App Router
      URL: /learn/start-a-new-react-project#nextjs-app-router
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/blog/2023/03/22/react-labs-what-we-have-been-working-on-march-2023.md:95:605
      Link text: Next.js App Router
      URL: /learn/start-a-new-react-project#nextjs-app-router
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/blog/2024/02/15/react-labs-what-we-have-been-working-on-february-2024.md:110:3
      Link text: Sathya Gunasekaran
      URL: /community/team#sathya-gunasekaran
      ✗ Contributor link should be updated to: https://github.com/gsathya
    
    src/content/blog/2024/04/25/react-19-upgrade-guide.md:132:20
      Link text: improved how errors are handled
      URL: /blog/2024/04/25/react-19#error-handling
      ✗ Target file not found for: /blog/2024/04/25/react-19
    
    src/content/blog/2024/04/25/react-19-upgrade-guide.md:502:19
      Link text: `ref` as a prop
      URL: /blog/2024/04/25/react-19#ref-as-a-prop
      ✗ Target file not found for: /blog/2024/04/25/react-19
    
    src/content/blog/2024/12/05/react-19.md:358:391
      Link text: Full-stack React Architecture
      URL: /learn/start-a-new-react-project#which-features-make-up-the-react-teams-full-stack-architecture-vision
      ✗ Target file not found for: /learn/start-a-new-react-project
    
    src/content/blog/2024/12/05/react-19.md:392:28
      Link text: React Server Actions
      URL: /reference/rsc/server-actions
      ✗ Target file not found for: /reference/rsc/server-actions
    
    src/content/blog/2025/04/23/react-labs-view-transitions-activity-and-more.md:2498:37
      Link text: view transition classes
      URL: /reference/react/ViewTransition#view-transition-classes
      ✗ Anchor #view-transition-classes not found in reference/react/ViewTransition.md
    
    
    Found 58 dead links out of 1555 total links
    
    info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
    
    ```
    
    * Fix deadlinks
    
    Following `yarn deadlinks` as a guide, I fixed the following deadlinks:
    
    | File | Link Text | Current URL | Issue Type | Actual Fix Applied | Status |
    |------|-----------|-------------|------------|-------------------|--------|
    | `add-react-to-an-existing-project.md:23` | React-based frameworks | `/learn/start-a-new-react-project` | Missing file | `/learn/creating-a-react-app` | ✅ Fixed |
    | `add-react-to-an-existing-project.md:27` | benefit from the best practices | `/learn/start-a-new-react-project#can-i-use-react-without-a-framework` | Missing file + anchor | `/learn/creating-a-react-app#full-stack-frameworks` | ✅ Fixed |
    | `add-react-to-an-existing-project.md:152` | a React framework | `/learn/start-a-new-react-project` | Missing file | `/learn/creating-a-react-app` | ✅ Fixed |
    | `synchronizing-with-effects.md:735` | framework | `/learn/start-a-new-react-project#production-grade-react-frameworks` | Missing file + anchor | `/learn/creating-a-react-app#full-stack-frameworks` | ✅ Fixed |
    | `typescript.md:16` | Common types from `@types/react` | `/learn/typescript/#useful-types` | Trailing slash | `/learn/typescript#useful-types` | ✅ Fixed |
    | `typescript.md:17` | Further learning locations | `/learn/typescript/#further-learning` | Trailing slash | `/learn/typescript#further-learning` | ✅ Fixed |
    | `typescript.md:23` | production-grade React frameworks | `/learn/start-a-new-react-project#production-grade-react-frameworks` | Missing file + anchor | `/learn/creating-a-react-app#full-stack-frameworks` | ✅ Fixed |
    | `you-might-not-need-an-effect.md:29` | frameworks | `/learn/start-a-new-react-project#production-grade-react-frameworks` | Missing file + anchor | `/learn/creating-a-react-app#full-stack-frameworks` | ✅ Fixed |
    | `you-might-not-need-an-effect.md:754` | frameworks | `/learn/start-a-new-react-project#production-grade-react-frameworks` | Missing file + anchor | `/learn/creating-a-react-app#full-stack-frameworks` | ✅ Fixed |
    | `your-first-component.md:218` | React-based frameworks | `/learn/start-a-new-react-project` | Missing file | `/learn/creating-a-react-app` | ✅ Fixed |
    | `ViewTransition.md:146` | reveal content | `/link-to-suspense-below` | Placeholder URL | `/reference/react/Suspense#revealing-content-together-at-once` | ✅ Fixed |
    | `captureOwnerStack.md:60` | `errorInfo.componentStack` in `onUncaughtError` | `/reference/react-dom/client/hydrateRoot#show-a-dialog-for-uncaught-errors` | Missing anchor | `/reference/react-dom/client/hydrateRoot#error-logging-in-production` | ✅ Fixed |
    | `forwardRef.md:9` | here | `/blog/2024/04/25/react-19#ref-as-a-prop` | Missing file + anchor | `/blog/2024/12/05/react-19#ref-as-a-prop` | ✅ Fixed |
    | `use.md:315` | Server Component | `/reference/react/components#server-components` | Missing anchor | `/reference/rsc/server-components` | ✅ Fixed |
    | `useEffect.md:899` | if you use a framework, | `/learn/start-a-new-react-project#production-grade-react-frameworks` | Missing file + anchor | `/learn/creating-a-react-app#full-stack-frameworks` | ✅ Fixed |
    | `useEffect.md:1051` | framework | `/learn/start-a-new-react-project#production-grade-react-frameworks` | Missing file + anchor | `/learn/creating-a-react-app#full-stack-frameworks` | ✅ Fixed |
    | `useEffect.md:1736` | framework | `/learn/start-a-new-react-project#production-grade-react-frameworks` | Missing file + anchor | `/learn/creating-a-react-app#full-stack-frameworks` | ✅ Fixed |
    | `useInsertionEffect.md:136` | non-blocking update, | `/reference/react/useTransition#marking-a-state-update-as-a-non-blocking-transition` | Wrong anchor | `/reference/react/useTransition#perform-non-blocking-updates-with-actions` | ✅ Fixed |
    | `createPortal.md:53` | key. | `/learn/rendering-lists/#keeping-list-items-in-order-with-key` | Trailing slash | `/learn/rendering-lists#keeping-list-items-in-order-with-key` | ✅ Fixed |
    | `react-dom/index.md:24` | React-based frameworks | `/learn/start-a-new-react-project` | Missing file | `/learn/creating-a-react-app` | ✅ Fixed |
    | `react-dom/index.md:51` | `unmountComponentAtNode` | `/reference/react-dom/unmountComponentAtNode` | Missing file | `https://18.react.dev/reference/react-dom/unmountComponentAtNode` | ✅ Fixed |
    | `preinit.md:7` | React-based frameworks | `/learn/start-a-new-react-project` | Missing file | `/learn/creating-a-react-app` | ✅ Fixed |
    | `preinitModule.md:7` | React-based frameworks | `/learn/start-a-new-react-project` | Missing file | `/learn/creating-a-react-app` | ✅ Fixed |
    | `preload.md:7` | React-based frameworks | `/learn/start-a-new-react-project` | Missing file | `/learn/creating-a-react-app` | ✅ Fixed |
    | `preloadModule.md:7` | React-based frameworks | `/learn/start-a-new-react-project` | Missing file | `/learn/creating-a-react-app` | ✅ Fixed |
    | 11 component files | common element props. | `/reference/react-dom/components/common#props` | Wrong anchor | `/reference/react-dom/components/common#common-props` | ✅ Fixed |
    | `server/index.md:7` | framework | `/learn/start-a-new-react-project#production-grade-react-frameworks` | Missing file + anchor | `/learn/creating-a-react-app#full-stack-frameworks` | ✅ Fixed |
    | `static/index.md:7` | framework | `/learn/start-a-new-react-project#production-grade-react-frameworks` | Missing file + anchor | `/learn/creating-a-react-app#full-stack-frameworks` | ✅ Fixed |
    | `introducing-react-dev.md:45` | API Reference | `/reference` | Missing index | `/reference/react` | ✅ Fixed |
    | `introducing-react-dev.md:610` | Alternatives | `/reference/react-dom/findDOMNode#alternatives` | Missing file | `https://18.react.dev/reference/react-dom/findDOMNode#alternatives` | ✅ Fixed |
    | `react-labs-march-2023.md:34` | Next.js App Router | `/learn/start-a-new-react-project#nextjs-app-router` | Missing file + anchor | `/learn/creating-a-react-app#nextjs-app-router` | ✅ Fixed |
    | `react-labs-march-2023.md:95` | Next.js App Router | `/learn/start-a-new-react-project#nextjs-app-router` | Missing file + anchor | `/learn/creating-a-react-app#nextjs-app-router` | ✅ Fixed |
    | `react-labs-february-2024.md:110` | Sathya Gunasekaran | `/community/team#sathya-gunasekaran` | Contributor link | `https://github.com/gsathya` | ✅ Fixed |
    | `react-19-upgrade-guide.md:132` | improved how errors are handled | `/blog/2024/04/25/react-19#error-handling` | Missing file + anchor | `/blog/2024/12/05/react-19#error-handling` | ✅ Fixed |
    | `react-19-upgrade-guide.md:502` | `ref` as a prop | `/blog/2024/04/25/react-19#ref-as-a-prop` | Missing file + anchor | `/blog/2024/12/05/react-19#ref-as-a-prop` | ✅ Fixed |
    | `react-19.md:358` | Full-stack React Architecture | `/learn/start-a-new-react-project#which-features-make-up-the-react-teams-full-stack-architecture-vision` | Missing file + anchor | `/learn/creating-a-react-app#which-features-make-up-the-react-teams-full-stack-architecture-vision` | ✅ Fixed |
    | `react-19.md:392` | React Server Actions | `/reference/rsc/server-actions` | Missing file | `/reference/rsc/server-functions` | ✅ Fixed |
    | `view-transitions-activity.md:2498` | view transition classes | `/reference/react/ViewTransition#view-transition-classes` | Missing anchor | `/reference/react/ViewTransition#view-transition-class` | ✅ Fixed |
    | `rsc/directives.md:13` | bundlers compatible with React Server Components | `/learn/start-a-new-react-project#full-stack-frameworks` | Missing file | `/learn/creating-a-react-app#full-stack-frameworks` | ✅ Fixed |
    | `rsc/server-components.md:7` | React Server Components | `/learn/start-a-new-react-project#full-stack-frameworks` | Missing file | `/learn/creating-a-react-app#full-stack-frameworks` | ✅ Fixed |
    | `rsc/use-client.md:44` | compatible bundlers | `/learn/start-a-new-react-project#full-stack-frameworks` | Missing file | `/learn/creating-a-react-app#full-stack-frameworks` | ✅ Fixed |
    | `react-dom/client/createRoot.md:212` | using a framework | `/learn/start-a-new-react-project#production-grade-react-frameworks` | Missing file | `/learn/creating-a-react-app#full-stack-frameworks` | ✅ Fixed |
    | `react-dom/client/index.md:7` | framework | `/learn/start-a-new-react-project#production-grade-react-frameworks` | Missing file | `/learn/creating-a-react-app#full-stack-frameworks` | ✅ Fixed |
    | `rsc/server-functions.md:198` | `useActionState` | `/reference/react-dom/hooks/useFormState` | Missing file | `/reference/react/useActionState` | ✅ Fixed |
    | `rsc/server-functions.md:222` | `useActionState` | `/reference/react-dom/hooks/useFormState` | Missing file | `/reference/react/useActionState` | ✅ Fixed |
    | `rsc/use-server.md:98` | serializable props | `/reference/rsc/use-client#passing-props-from-server-to-client-components` | Missing anchor | `/reference/rsc/use-client#serializable-types` | ✅ Fixed |
    | `react-dom/components/common.md:919` | check out more examples. | `/reference/react/useRef#examples-dom` | Missing anchor | `/reference/react/useRef#usage` | ✅ Fixed |
    | `react-dom/components/form.md:233` | reference documentation | `/reference/react/hooks/useOptimistic` | Missing file | `/reference/react/useOptimistic` | ✅ Fixed |
    
    
    ```
    $ yarn deadlinks
    
    yarn run v1.22.22
    $ node scripts/deadLinkChecker.js
    Checking 177 markdown files...
    Fetched 552 React error codes
    
    
    ✓ All 1552 links are valid!
    
    ✨  Done in 1.07s.
    ```
    poteto authored Jul 18, 2025
    Configuration menu
    Copy the full SHA
    d52b3ec View commit details
    Browse the repository at this point in the history

Commits on Jul 21, 2025

  1. Configuration menu
    Copy the full SHA
    ac3aaf8 View commit details
    Browse the repository at this point in the history
Loading