Commit Graph

3804 Commits

Author SHA1 Message Date
Abhishek Ghimire 15653f3a28 Use jsx extension instead of js in global-error documentation (#82710) 2025-08-19 00:44:01 +00:00
Luke Sandberg 1766a1aba6 [turbopack] Update next docs with information about turbopack known adoption issues (#82560)
- Document the experimental persistent caching flag
- Document the gap with the `innerGraph` optimization
- Document the css module ordering issue
- Document the persistent caching gap

Will wait to submit this until the when we publish the release.
2025-08-18 16:32:08 -07:00
Will Binns-Smith 480a0e1db3 create-next-app: use Turbopack for both dev and build (#82753)
Previously, we asked users if they want to use Turbopack for `next dev`.
Now, we ask if they want to use Turbopack, and if they do, we use it for
both dev and build. It’s also listed as `(recommended)` like App Router.

Test Plan: `pnpm build`, `./node_modules/.bin/create-next-app
~/path/to/app`. Choose the Turbopack option. Verify the app uses
Turbopack for both dev and build.
2025-08-18 20:27:30 +00:00
Alexander Kachkaev cbbc8f3e12 Remove stability disclamer on Node runtime in middleware (#82181)
Follows https://github.com/vercel/next.js/pull/81907, removes an
outdated disclaimer from the docs:

https://nextjs.org/docs/app/api-reference/file-conventions/middleware#runtime

<img width="1346" height="852" alt="Screenshot 2025-07-30 at 00 19 01"
src="https://github.com/user-attachments/assets/ebaf9d5e-4f70-4422-bda6-9801fcd52707"
/>

Keeping #81907 unmerged until 15.5 release would make sense, but since
it’s already in, this one can go in too. Merging it after cutting 15.5.0
would also be fine.



<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

- The "examples guidelines" are followed from our contributing doc
https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md
- Make sure the linting passes by running `pnpm build && pnpm lint`. See
https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

- Implements an existing feature request or RFC. Make sure the feature
request has been accepted for implementation before opening a PR. (A
discussion must be opened, see
https://github.com/vercel/next.js/discussions/new?category=ideas)
- Related issues/discussions are linked using `fixes #number`
- e2e tests added
(https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs)
- Documentation added
- Telemetry added. In case of a feature if it's used or not.
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change

### What?

### Why?

### How?

Closes NEXT-
Fixes #

-->
2025-08-15 13:29:59 -07:00
Adem 88b3223a97 docs: fix typo in vitest.mdx (#82690)
Co-authored-by: Joseph <joseph.chamochumbi@vercel.com>
2025-08-15 16:32:46 +02:00
Jiwon Choi 8606a9e4b0 docs: add experimental.typedEnv (#82647)
I added docs at https://github.com/vercel/next.js/pull/70958, but never
landed on `canary` ~~due to a git rebase skill issue~~.

---------

Co-authored-by: Joseph <joseph.chamochumbi@vercel.com>
Co-authored-by: vercel[bot] <35613825+vercel[bot]@users.noreply.github.com>
2025-08-15 13:31:30 +02:00
Jam Balaya 3c9c995985 docs: fix typos (#82503)
## Summary

Fix typos and spelling errors in various MDX documentation files to
improve clarity and consistency.

Documentation:
- Standardize 'cacheable' spelling across self-hosting guide
- Correct 'potentionally' to 'potentially' in image component references
- Fix 'unecessary' to 'unnecessary' in use-link-status guide

### Improving Documentation

- [x] Run `pnpm prettier-fix` to fix formatting issues before opening
the PR.
- [x] Read the Docs Contribution Guide to ensure your contribution
follows the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

Co-authored-by: Joseph <joseph.chamochumbi@vercel.com>
2025-08-14 00:28:28 +02:00
Guo Ci e771609a7a Fix generate-metadata.mdx typo (#82624)
<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

- The "examples guidelines" are followed from our contributing doc
https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md
- Make sure the linting passes by running `pnpm build && pnpm lint`. See
https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

- Implements an existing feature request or RFC. Make sure the feature
request has been accepted for implementation before opening a PR. (A
discussion must be opened, see
https://github.com/vercel/next.js/discussions/new?category=ideas)
- Related issues/discussions are linked using `fixes #number`
- e2e tests added
(https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs)
- Documentation added
- Telemetry added. In case of a feature if it's used or not.
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change

### What?

### Why?

### How?

Closes NEXT-
Fixes #

-->

Co-authored-by: Joseph <joseph.chamochumbi@vercel.com>
2025-08-13 23:58:12 +02:00
Joseph 9542b8b038 Docs/feedback round aug (#82549)
Closes:
https://linear.app/vercel/issue/DOC-4949/clarification-redirecting-in-server-actions-to-self,
https://linear.app/vercel/issue/DOC-4973/global-error-and-global-not-found-in-prod-checklist

Additionally addresses community confusion and feedback around Server
Functions initial client side sequential processing.
2025-08-13 12:17:14 +02:00
Zack Tanner 2bca1fde21 [Deprecation Warnings]: add amp deprecation warning (#82551)
We are dropping amp support in an upcoming major. This adds a warning
for using these configuration options and updates the docs with the
warning.

---------

Co-authored-by: Sebastian "Sebbie" Silbermann <sebastian.silbermann@vercel.com>
2025-08-12 06:53:39 -07:00
Joseph d75d90f3cf docs: experimental config browserDebugInfoInTerminal (#82532)
Adding docs for `browserDebugInfoInTerminal`
2025-08-11 23:08:18 +02:00
Jimmy Lai 46709a2a0e docs: update revalidatePath, revalidateTag docs to be more consistent + highlight res.revalidate case (#82479)
- uses invalidate instead of revalidate to make more explicit the
revalidatePath, revalidateTag behavior
- highlights that eager revalidation can still happen with the pages
router method

<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

- The "examples guidelines" are followed from our contributing doc
https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md
- Make sure the linting passes by running `pnpm build && pnpm lint`. See
https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

- Implements an existing feature request or RFC. Make sure the feature
request has been accepted for implementation before opening a PR. (A
discussion must be opened, see
https://github.com/vercel/next.js/discussions/new?category=ideas)
- Related issues/discussions are linked using `fixes #number`
- e2e tests added
(https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs)
- Documentation added
- Telemetry added. In case of a feature if it's used or not.
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change

### What?

### Why?

### How?

Closes NEXT-
Fixes #

-->
2025-08-08 11:39:22 -07:00
Kit Foster e30dd09f29 Add path to Image documentation (#82329)
<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

- The "examples guidelines" are followed from our contributing doc
https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md
- Make sure the linting passes by running `pnpm build && pnpm lint`. See
https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

- Implements an existing feature request or RFC. Make sure the feature
request has been accepted for implementation before opening a PR. (A
discussion must be opened, see
https://github.com/vercel/next.js/discussions/new?category=ideas)
- Related issues/discussions are linked using `fixes #number`
- e2e tests added
(https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs)
- Documentation added
- Telemetry added. In case of a feature if it's used or not.
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change


### How?

Closes NEXT-
Fixes #

-->

### What?

Add the `path` field to the App Router
https://nextjs.org/docs/app/api-reference/components/image and Pages
Router https://nextjs.org/docs/pages/api-reference/components/image
docs. This field is valid for both, and currently it's use is hidden in
the code.

### Why?

Allow people to find and use the field as it is useful for prefixing the
`/_next/image` path.

---------

Co-authored-by: Steven <steven@ceriously.com>
2025-08-08 07:41:22 -07:00
Joseph 3552445eba Docs/polyfills fix pages only (#82462)
Follow up for: https://github.com/vercel/next.js/issues/74730
2025-08-08 10:45:32 +02:00
Joseph 2ba4a8548c global-error, revalidatePath and PWA headings (#82408)
Complement to: https://github.com/vercel/next.js/issues/82379

Also adding corrections to other sections
2025-08-07 08:10:21 +00:00
Joseph 6cae6d86b8 docs: polyfills usage in app router (#80447)
Closes:
https://linear.app/vercel/issue/DOC-4752/docs-polyfills-in-app-router

Fixes: https://github.com/vercel/next.js/issues/74730
2025-08-06 21:09:51 +00:00
Joseph a38db346db Docs: Add more info about TW and TW 3 option (#82203)
Closes: https://linear.app/vercel/issue/DOC-4862/tailwind-css-modules

---------

Co-authored-by: Rich Haines <hello@richardhaines.dev>
2025-08-06 20:24:25 +02:00
Joseph 373f3e1de1 fix: implications of global-not-found skipping 'normal' rendering (#82399)
Fixes: https://github.com/vercel/next.js/issues/82379

Also fixing the Metadata snippets at the bottom of the page
2025-08-06 13:13:29 +02:00
Joseph ea08bf273c docs: CSP with SRI corrections (#82365)
Feedback on the csp guide updates
2025-08-06 10:57:48 +02:00
Michal bdd41bbcab Docs: Updating guides on PPR and ISR (#81307)
The PR fixes issues in two different guides. 

### PPR
In PPR, the code for jsx and tsx versions should use the language
switcher. Currently, these are displayed below each other in the guide
which seems unintentional.

### ISR
This change fixes multiple issues:

**fixes in the example:**
the example currently does not match the text below (_Here's how this
example works:_). It says:
> If /blog/26 is requested, Next.js will generate and cache this page
on-demand

that is of course not correct because there are only 25 blog posts
returned from the API. No blog post data is returned for `/blog/26`,
making this example wrong and confusing.

By slicing the posts and supplying only 24 of 25 blog posts for static
generation during the build process, the guide becomes much more
explicit - the 25th blog post can be used for inspecting the workings of
the on-the-fly generation and caching. Turning `dynamicParams` to
`false` or `true`, one can now truly test this behaviour with the 25th
blog.

Second, the same example in Pages Router docs includes:
> return { paths, fallback: false }

In this case, again, this part below:

> If /blog/26 is requested, Next.js will generate and cache this page
on-demand

is incorrect. When setting `fallback` to `false`, the page is never
generated on-demand and returns 404 instead as there is no 26th blog
post in the fetched data. So the fix changes the value of `fallback` to
`blocking`, to mirror the App Router's `dynamicParams` value in the
guide. This makes is more consistent and, more importantly, reproducible
example.

**clarifying the on-demand section:**
The sections dedicated to **on-demand revalidation** do not currently
mention that revalidation works differently from the time-based one. One
may assume the first request after on-demand revalidation returns stale
data (just like time-based).

But that's not true, the next request after on-demand revalidation (with
Server Actions for example) generates the content on-the-fly and returns
fresh data right away. It wasn't clear to me so I tested it myself and
was surprised (and happy) that it is this smart. I think it's very
important to clarify this distinction in the guide.

-----

I hope this makes sense. I'm quite responsive these days and will change
it based on your feedback (if any). Thanks!

<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

- The "examples guidelines" are followed from our contributing doc
https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md
- Make sure the linting passes by running `pnpm build && pnpm lint`. See
https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

- Implements an existing feature request or RFC. Make sure the feature
request has been accepted for implementation before opening a PR. (A
discussion must be opened, see
https://github.com/vercel/next.js/discussions/new?category=ideas)
- Related issues/discussions are linked using `fixes #number`
- e2e tests added
(https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs)
- Documentation added
- Telemetry added. In case of a feature if it's used or not.
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change

### What?

### Why?

### How?

Closes NEXT-
Fixes #

-->

---------

Co-authored-by: Joseph <joseph.chamochumbi@vercel.com>
2025-08-05 18:18:35 +02:00
huperniketes 9e9ee85217 Documentation: Removed reference to treeShaking in 08-turbopack.mdx (#82352) 2025-08-05 10:29:05 +02:00
Joseph 1f8ea2a1b0 docs: Clarify revalidatePath (#82142)
Fixes: https://github.com/vercel/next.js/issues/81776
2025-08-04 20:02:36 +02:00
devin-ai-integration[bot] 9d3069adc7 docs: Improve Content Security Policy documentation (#80580)
# Improve Content Security Policy Documentation

This PR comprehensively improves the Next.js Content Security Policy
(CSP) documentation to address community feedback from Reddit and GitHub
discussions about gaps in the current documentation.

## Changes Made

### 1. Enhanced Nonce Flow Explanation
- Added detailed section explaining how Next.js automatically detects
and applies nonces during server-side rendering
- Clarified the 3-step process: middleware generation → Next.js
extraction → automatic application
- Explained that developers don't need to manually add nonces to every
script tag

### 2. Static vs Dynamic Rendering Documentation
- Added comprehensive section explaining performance implications of
using nonces
- Documented that nonces force all pages into dynamic rendering
- Explained trade-offs: slower page loads, increased server load, no CDN
caching
- Added guidance on when to use nonces vs alternatives

### 3. Experimental SRI (Subresource Integrity) Documentation
- Documented the experimental `sri.algorithm` configuration option
- Explained hash-based CSP as an alternative to nonces that preserves
static generation
- Included configuration examples and benefits/limitations
- Noted that SRI is webpack-only, App Router only, and experimental

### 4. Development vs Production Considerations
- Added section addressing environment-specific CSP requirements
- Documented need for `'unsafe-eval'` in development for HMR
- Provided conditional CSP examples based on NODE_ENV

### 5. Comprehensive Troubleshooting Section
- Added solutions for error pages that don't work with strict CSP
- Documented third-party script integration with CSP
- Included common CSP violation fixes
- Added examples for both App Router and Pages Router

### 6. Practical Examples
- Static site with hash-based CSP using SRI
- Dynamic site with nonce-based CSP
- Mixed approach for different page types
- Environment-aware CSP configuration

### 7. Enhanced Pages Router Documentation
- Added `_document.tsx` nonce access example
- Improved `getServerSideProps` examples
- Added third-party script integration examples

## Community Feedback Addressed

This PR directly addresses the Reddit thread feedback about:
- ❌ "it is not clear that the nonce is then picked up by the rest of the
pages" → ✅ Added detailed nonce flow explanation
- ❌ "it is not clear that the pages therefore are not statically
generated anymore" → ✅ Added static vs dynamic rendering section
- ❌ "The solution of being able to provide the sha256 hashes... is not
supported, and it is not mentioned in the documentation" → ✅ Added
experimental SRI documentation
- ❌ Poor documentation of strict CSP implementation → ✅ Added
comprehensive examples and troubleshooting

## Technical Details

- **File Modified**: `docs/01-app/02-guides/content-security-policy.mdx`
- **Lines Added**: 642 insertions
- **Maintains**: Existing documentation structure and Next.js
conventions
- **Supports**: Both App Router and Pages Router with appropriate
switcher components

## Testing

- Verified all code examples use correct Next.js APIs and patterns
- Ensured documentation follows existing Next.js docs structure
- Confirmed all referenced configuration options exist in the codebase
- Validated that experimental features are properly marked as such

---

**Link to Devin run**:
https://app.devin.ai/sessions/e7e5fa95dc0146b3ab79aac72c53ed13
**Requested by**: lee@vercel.com

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: lee@vercel.com <lee@vercel.com>
Co-authored-by: Joseph Chamochumbi <joseph.chamochumbi@vercel.com>
2025-08-04 18:47:26 +02:00
PuppyOne 6e20a10d76 docs: add React Developer Tools section for debugging (#82320)
## What?

Added a new "React Developer Tools" section to the debugging
documentation.

## Why?

This PR resolves #82308 which highlighted that React DevTools - a
fundamental debugging tool for React applications - was missing from
Next.js debugging documentation.

Since the Next.js framework is built on React, React DevTools is crucial
for:
- Inspecting component hierarchies
- Debugging state and props
- Identifying performance issues
- Understanding application structure

## How?

Inserted a concise section between "Client-side code" and "Server-side
code" in
[docs/01-app/02-guides/debugging.mdx](https://github.com/vercel/next.js/blob/canary/docs/01-app/02-guides/debugging.mdx):

- Introduces developers to the essential React debugging tool and its
key features
- Direct users to the corresponding React documentation

### Checklist: Improving Documentation

- [x] Ran `pnpm prettier-fix` to ensure proper formatting
- [x] Followed the Docs Contribution Guide:
https://nextjs.org/docs/community/contribution-guide


Closes #82308

Co-authored-by: Joseph <joseph.chamochumbi@vercel.com>
2025-08-04 16:19:17 +02:00
Štěpán Granát 49ac27c137 docs: Add Tolgee to app router localization resources (#81366)
Adding Tolgee to available i18n providers.

## Why
Tolgee is listed only in the pages-router, but it actually supports
app-router as well.
2025-08-01 21:20:40 +00:00
KimJunYoung 5083e606e6 docs: to indicate that redirect can be used in both server and client… (#82092)
<img width="591" height="132" alt="image"
src="https://github.com/user-attachments/assets/9c9c64fe-4095-4127-a893-1c12426d9700"
/>

- When I first read the explanation, it felt as if `redirect` couldn’t
be used in client components.
- Also, when clicking the `Server Components` link, it leads to the
`Server and Client Components` page.
- To indicate that `redirect` can be used in both `server and client
components`, rename the hyperlink text in the `redirect.mdx` file.

---------

Co-authored-by: Joseph <joseph.chamochumbi@vercel.com>
2025-08-01 12:42:47 +02:00
Chad M Fennell d0b0cf0fbe Grammar fix on forms.mdx (#82209)
grammar nit: "an API" is singular

Co-authored-by: JJ Kasper <jj@jjsweb.site>
2025-07-30 13:21:46 -07:00
Joseph dd2e89a95e docs: App Router's React version (#82180)
Closes:
https://linear.app/vercel/issue/DOC-4930/notes-about-app-routers-react-version

---------

Co-authored-by: Rich Haines <hello@richardhaines.dev>
2025-07-30 13:26:52 +02:00
Joseph f1658d44ab docs: Add more links to app docs root (#82126)
This page https://nextjs.org/docs/app has too little actionable paths to
go on
2025-07-30 12:14:55 +02:00
Sayakie 355831afbd docs: fix typo in docs (#82186)
### What?
This pull request just fix typo in documentation.

---------

Co-authored-by: Joseph <joseph.chamochumbi@vercel.com>
2025-07-30 12:03:04 +02:00
M. Abdullah ad4fd37d37 docs: update cacheTag.mdx (#82051)
## Improving Documentation

Updated the doc to reflect the API signature of `cacheTag`, which takes
one or more string values.

---------

Co-authored-by: Joseph <joseph.chamochumbi@vercel.com>
2025-07-30 09:42:13 +02:00
Wes 9c5fa27c68 docs: change Dashboard component to async for session verification (#81880)
## Improving Documentation

Updated the `Dashboard` component to be an `async` function to properly
`await` the session verification process. This change ensures that the
user role is retrieved correctly from `session` before rendering the
component.

Co-authored-by: Joseph <joseph.chamochumbi@vercel.com>
2025-07-29 23:45:37 +02:00
Remco Haszing 42bcacd9a1 Remove useMDXComponents argument (#80871)
### What?

Fix the signatures of `useMDXComponents`.

### Why?

The `useMDXComponents` function is always called without any arguments.
It’s also always supposed to be a named export, not a default export.
It’s also called during render. Defining React components during render
is an anti-pattern. All components that were previously defined inside
of `useMDXComponents`, are now defined outside of the function.

### How?

Manual fixes.

---------

Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
Co-authored-by: Joseph <sephxd1234@gmail.com>
Co-authored-by: Joseph <joseph.chamochumbi@vercel.com>
2025-07-29 22:45:08 +02:00
Joseph 10e0798fc9 docs: cookies.set encode option is not supported (#82154)
Encode overriding is not supported by the upstream library.
2025-07-29 22:40:39 +02:00
Joseph 14c5d67328 docs: Update styling example links (#82111)
Fixes: https://github.com/vercel/next.js/issues/82098
2025-07-28 13:00:04 +02:00
Allen Zhou d5f6c11ab0 [docs] fix rewrites example wording (#81985)
This PR fixes a small grammatical error in the Next.js rewrites
documentation.

<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

- The "examples guidelines" are followed from our contributing doc
https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md
- Make sure the linting passes by running `pnpm build && pnpm lint`. See
https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

- Implements an existing feature request or RFC. Make sure the feature
request has been accepted for implementation before opening a PR. (A
discussion must be opened, see
https://github.com/vercel/next.js/discussions/new?category=ideas)
- Related issues/discussions are linked using `fixes #number`
- e2e tests added
(https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs)
- Documentation added
- Telemetry added. In case of a feature if it's used or not.
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change

### What?

### Why?

### How?

Closes NEXT-
Fixes #

-->

---------

Co-authored-by: JJ Kasper <jj@jjsweb.site>
2025-07-23 20:51:11 +00:00
Delba de Oliveira 4e96d7d1ad Docs: Document global-not-found (#81803)
Closes:
https://linear.app/vercel/issue/DOC-4873/document-global-not-found

---------

Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
Co-authored-by: Jiachi Liu <inbox@huozhi.im>
2025-07-22 10:19:49 +00:00
JJ Kasper dd9e43e56c Stabilize node middleware support (#81907)
As mentioned in our last blog post we are going to be stabilizing node
middleware now so this removes the experimental flag canary gating the
feature.
2025-07-21 16:22:15 -07:00
Rudolph Gottesheim 5e46e37203 Remove some random commas (#81875)
Co-authored-by: JJ Kasper <jj@jjsweb.site>
2025-07-21 12:53:01 -07:00
Wyatt Johnson 8abbb3dc2e refactor: rename experimental.dynamicIO to experimental.cacheComponents (#81562)
## What?

Rename `experimental.dynamicIO` to `experimental.cacheComponents` across
the Next.js codebase.

## Why?

We're going to be merging the functionality of the `ppr`, `dynamicIO`
and `useCache` experimental flags into the singular `cacheComponents`
flag to reduce complexity of the codebase and simplify adoption for
users wanting to experiment with experimental features.

## How?

- Renamed the configuration option from `experimental.dynamicIO` to
`experimental.cacheComponents`
- Added deprecation handling with automatic migration for the old option
name
- Updated all documentation, tests, and internal references
- Updated Rust code in SWC transforms and Turbopack
- Maintained backward compatibility with deprecation warnings

NAR-158
2025-07-17 19:30:28 -06:00
Tim Neutkens 115eff7201 Turbopack: Support string without options for @next/mdx (#81713)
## What?

Adds support for `remarkPlugins: ['remark-gfm']` and `rehypePlugins:
['rehype-slug']`.

Previously you had to nest an array like `remarkPlugins:
[['remark-gfm']]` but that's a bug, that case is only for passing
options. Directly passing the string without options should be allowed.
This PR implements that.
2025-07-16 17:05:23 +02:00
Prateek Choudhary 386afcd423 docs: Update redirects i18n documentation for App Router (#81347)
### What?
Updated the documentation to clarify that App Router requires manual
locale handling through dynamic route segments and middleware, with
examples showing how to implement i18n redirects correctly.

### Why?
The App Router doesn't use the i18n configuration in next.config.js like
the Pages Router does.

Closes NEXT-
Fixes #81227

---------

Co-authored-by: Joseph <joseph.chamochumbi@vercel.com>
Co-authored-by: Joseph <sephxd1234@gmail.com>
2025-07-16 09:22:07 +02:00
Joseph 1758c3c442 docs: onInvalidate router.prefetch (#81609)
Closes:
[DOC-4741](https://linear.app/vercel/issue/DOC-4741/document-oninvalidate-for-userouter-hook)
2025-07-14 18:56:33 +02:00
Delba de Oliveira fcfae6eba0 15.4 Docs: Minor feature updates (#81618)
Updates the docs to include the new options in 15.4. 

- `prefetch="auto"` option: https://github.com/vercel/next.js/pull/78689
- `next build` new `--debug-prerender option`:
https://github.com/vercel/next.js/pull/80667

---------

Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
2025-07-14 17:33:22 +01:00
Nazar fcadb6846e docs: update Page example to use Promise-based params in 05-server-and-client-components.mdx (#81557)
What?
This PR updates the Page component example in
05-server-and-client-components.mdx to use Promise-based params as
recommended in the Next.js 15 documentation.

Why?
Next.js 15 introduced support for async props, allowing the params prop
to be a Promise in Server Components. Updating the documentation ensures
that users follow the latest recommended practices and avoid confusion
when working with dynamic routes in Next.js 15.

How?
- Changed the Page component example to accept params as a Promise and
use await params to destructure the id.
- Updated the type annotation accordingly.
2025-07-11 12:40:04 -07:00
Joseph 7560398745 docs: root layout + opengraph-image + cna-eslit vs next lint bootstrap (#81542)
Fixes: https://github.com/vercel/next.js/issues/81529,
https://github.com/vercel/next.js/issues/81352 and
https://github.com/vercel/next.js/issues/78630
2025-07-11 13:27:55 +02:00
Joseph 094253c14c docs: add missing switcher (#81489)
Fixing a couple of code snippets annoyances
2025-07-10 11:18:22 +02:00
Joseph 04f7742329 docs: PPR requires canary (#81294)
Fixes: https://github.com/vercel/next.js/issues/81292
2025-07-10 08:26:37 +02:00
gsmt c10d258482 Add @sparticuz/chromium-min to default server externals (#81309)
This package needs to be externalized to have it's wasm dependencies
traced properly for node runtime so this adds it to the default list.
2025-07-09 14:27:20 -07:00
Rachna Chavan 639c731600 Update image.mdx (#81454)
fix: Input image name and output image name is different and causes
confusion.

---------

Co-authored-by: Joseph <joseph.chamochumbi@vercel.com>
2025-07-09 11:41:14 -07:00