Commit Graph

3801 Commits

Author SHA1 Message Date
Lee Robinson f6c60946a3 Clarify rewrites and other docs cleanup. (#24890)
Based on user feedback, this clarifies the difference between rewrites and redirects, as well as follows the new pattern for showing version history with a collapsible table.
2021-05-07 13:09:15 +00:00
C. Lewis 9c77cda6c5 feat(create-next-app): add --ts, --typescript support (#24655)
Co-authored-by: Tim Neutkens <timneutkens@me.com>
2021-05-07 10:08:16 +02:00
Tim Neutkens 81cc1c5852 Remove old docs sections (#24853)
Co-authored-by: Lee Robinson <me@leerob.io>
2021-05-06 14:17:00 +02:00
Tom Scott 73e1fb4da4 Add version note for has property (#24836)
The guides for `next.config.js` never specify that the `has: { }` syntax is only available for v10.1, and not for v10.0. Add a note that indicates these features are only available in the latest version.

## Documentation / Examples

- [x] Make sure the linting passes
2021-05-06 09:28:29 +00:00
JJ Kasper 802af5ff5b Land - Font optimizations - Adobe Fonts / Typekit support (#24834)
This updates this initial PR here https://github.com/vercel/next.js/pull/18146 to resolve merge conflicts and updates tests since we aren't able to update that PR itself.

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [x] Integration tests added
- [x] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.

Closes: https://github.com/vercel/next.js/pull/18146
2021-05-06 04:02:07 +00:00
Erfan Mirzapour cc41a191fe docs(config intro): Fix github link hash (#24838)
Doc page: https://nextjs.org/docs/api-reference/next.config.js/introduction

[`config-sahred.ts`](https://github.com/vercel/next.js/blob/canary/packages/next/next-server/server/config-shared.ts) file has been updated and the link here now is pointing to the random line!
2021-05-05 22:20:23 +00:00
Erfan Mirzapour 2251658c35 docs(next/router): Update router.push api (#24833)
Documentation page: https://nextjs.org/docs/api-reference/next/router#routerpush

Add `locale`  as supported options in `route.push()` (#17898)
2021-05-05 19:49:40 +00:00
Erfan Mirzapour 192d42bcac docs(response-helpers): Update res.json definition (#24782) 2021-05-05 15:54:36 +02:00
Lee Robinson 3e6ce9071b Update font optimization docs to mention opting out. (#24756) 2021-05-03 18:35:10 +00:00
Bart Nagel a77f3845f6 Clarify whether router.pathname includes basePath (#24675)
The docs were vague on this -- `router.asPath` mentions that it doesn't include `basePath` but `router.pathname` didn't say either way.

## Documentation / Examples

- [ ] Make sure the linting passes: I haven't checked; I presume you have a CI bot for this.
2021-05-01 15:56:30 +00:00
Lee Robinson 9721374440 Add documentation on Font Optimization. (#24572) 2021-04-28 22:11:05 +00:00
JJ Kasper f3d518385c Remove experimental note for has routes (#24529)
This removes the warnings/notes for the `has` custom-routes feature being experimental

## Documentation / Examples

- [x] Make sure the linting passes
2021-04-28 09:08:38 +00:00
Rishabh Poddar 41efb824f2 Docs update: Adds supertokens to 'Bring Your Own Database' section as well + improvements to code structure in example (#23779)
- Since SuperTokens is a self hosted solution, it can be added to 'Bring Your Own Database' as well (in https://nextjs.org/docs/authentication#supertokens)
- Improvements to code structure in the with-supertokens example
2021-04-20 17:23:32 +00:00
Victor Garcia efb2b8b06c docs(deployment): prune non-production deps (#23056)
added the following line, to remove the size of the `runner` (production) image. This will remove the `devDependencies` from the container after `next build` completes.

```
yarn install --production --ignore-scripts --prefer-offline
```

For the typescript starter, this is the change in size

| before <br/>proposed change<br/>size in bytes | after <br/> proposed change <br/> size in bytes|
|----|---|
|  347MB    | 176MB |
2021-04-20 15:51:36 +00:00
Vass Bence 6bb70b9771 Mention notFound cache purging use-case (#21234)
As far as I know `notFound` supports use cases like a post getting permanently removed from CMS (thus should not exist on the webpage anymore) without a redeploy. 

If the above statement is correct I believe this should be mentioned in the docs as it seems like a common use case and quite a few questions about this are floating around in the GitHub Discussions too.
2021-04-20 14:17:20 +00:00
JJ Kasper d51fe0540e Add note for exportPathMap query and prerender pages (#24266)
* Add note for exportPathMap query and prerender pages

* Update docs skip
2021-04-20 09:11:14 -05:00
Tom Greuter 213db224f3 Update Preview Mode docs with note on local dev (#22906) 2021-04-19 22:19:32 -05:00
Martin Janeček 1f54ba6559 docs: reduce image size in sample Dockerfile (#24108) 2021-04-19 22:00:56 -05:00
Gaël Haméon cb6b4798f6 Clarify dynamic imports documentation (#24168) 2021-04-19 21:53:00 -05:00
Jan Amann 6eabef68cd Add next-intl example (#21447)
I've recently built an i18n library that is tailored to usage in Next.js: [next-intl](https://github.com/amannn/next-intl). It complements the internationalized routing capabilities of Next.js by managing translations and providing them to components, as well as handling date and time formatting. It's a bit young, but I'm using it in two production apps now and I'm quite confident in the library.

Would you want to include an example and link to it?
2021-04-19 19:58:36 +00:00
Jasper Moelker 76184ab0ca docs: fix a11y router examples (#23031)
Non-interactive elements such as a `<span>` should not have event bindings as they are not accessible by everyone.
This fix solves this issue by replacing it with a `<button>` which is suitable for interaction.
Since a button defaults to `type="submit"` the button also explicitly has a `type="button"` to prevent accidental form submits (all examples aim to navigate, not to submit a form).

[More background on this a11y best practice](https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/HEAD/docs/rules/no-static-element-interactions.md)
2021-04-19 19:42:52 +00:00
JJ Kasper d2b0d43eb9 Update incremental adoption in rewrites doc (#24186)
This updates the incremental adoption section in the rewrites docs to mention the new fallback rewrites instead of the no-op rewrite and also points to the incrementally adopting Next.js doc. 

## Documentation / Examples

- [x] Make sure the linting passes

Closes: https://github.com/vercel/next.js/pull/23700
Closes: https://github.com/vercel/next.js/issues/23699
2021-04-18 08:26:08 +00:00
Julien Benchetrit 646a881183 Docs update: Redirect paths with parentheses (#24062)
It took me quite a while to understand that in order to redirect from `/english(default)/:path` to `/en-us/:path`, I have to escape the parentheses in the source with double backslashes so I thought I'd suggest it as a small doc update.


## Documentation / Examples

- [x] Make sure the linting passes
2021-04-17 19:40:35 +00:00
Steven Tey 6e22a440e2 Updated prefetch documentation (#24171)
Added the fact that when `prefetch` is set to `false`, Next will prefetch the link when an `onMouseEnter` is triggered. Response to issue #11793



## Bug

- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.

## Documentation / Examples

- [X] Make sure the linting passes

Closes: https://github.com/vercel/next.js/issues/23525
2021-04-17 16:08:06 +00:00
Marc van Gend b7a12655e2 Document the need to call App.getInitialProps() from a custom app's getInitialProps (#24002)
Document the need to call App.getInitialProps() from a custom app's getInitialProps. See https://github.com/vercel/next.js/issues/23055.
2021-04-16 14:54:02 +02:00
Lee Robinson 279e105279 Update .now.sh to .vercel.app. (#22359) 2021-04-14 09:46:06 -05:00
Alex Vilchis 8df5fc5a8e docs: Fix TypeScript casing (#24040) 2021-04-14 08:16:20 +00:00
JJ Kasper 4d291bd810 Use regex lexer for gathering named groups from has (#23626)
This is a follow-up to https://github.com/vercel/next.js/pull/23588 to update to use a regex lexer to gather the named regex groups instead of attempting to gather them through executing the regex since it can fail to gather the regex groups when they are using specific matching. This also ensures we don't pass the value as a segment when value is defined and it doesn't use a capture group. Additional tests are added to cover these cases and documentation updated to reflect this. 

Closes: https://github.com/vercel/next.js/issues/23415

## Bug

- [x] Related issues linked using `fixes #number`
- [x] Integration tests added

## Documentation / Examples

- [x] Make sure the linting passes
2021-04-13 12:34:51 +00:00
Angel Gomez 9a548b649f Add missing import in CSS docs (#24007)
This is a one-line commit, which adds the missing import for VisuallyHidden component, from Reach UI, to the CSS documentation in the Dialog component example.
2021-04-13 08:49:55 +00:00
JJ Kasper de567d91d7 Update incremental migration doc and add version for new rewrites (#23859)
This updates the incremental migration doc to mention the new fallback rewrites over the previous no-op rewrite behavior. This also mentions the version the new rewrites modes were added to the rewrites doc.  

## Documentation / Examples

- [x] Make sure the linting passes
2021-04-09 18:59:59 +00:00
JJ Kasper 1cf7360788 Add experimental note to docs for has (#23835)
This adds a note the `has` documentation mentioning the feature is still experimental as we currently show a warning when the feature is used stating the same. 

## Documentation / Examples

- [x] Make sure the linting passes
2021-04-08 18:39:25 +00:00
Pierre Berger bce78ba89c Fix upgrading broken link (#23785)
Fix a broken link in the [upgrading documentation](https://github.com/vercel/next.js/blob/canary/docs/upgrading.md).
2021-04-08 10:15:37 +00:00
Turadg Aleahmad 7f6a74a8e2 docs: Update built-in-css-support.md with Linaria example (#23333)
add link to Linaria example
2021-04-07 23:20:03 +00:00
Tim Neutkens d2dc91c80c Add note about prefetching (#23732)
Fixes #23687



## Bug

- [x] Related issues linked using `fixes #number`
- [ ] Integration tests added

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.

## Documentation / Examples

- [x] Make sure the linting passes
2021-04-07 16:07:32 +00:00
Sam Robbins 4de984ca23 Update router.md to improve a11y (#23611)
Code examples used `span`, change to use `button` for better accessibility 

## Documentation / Examples

- [x] Make sure the linting passes
2021-04-01 18:26:19 +00:00
Joe Haddad eecc3342cb Temporarily remove experimental ESLint integration (#23521)
This pull request **temporarily** removes ESLint, as it was not landed in accordance with our standard experimental policies. We are fully committed to landing this change again.

This is being reverted because:

- Next.js has very strict goals for its install size. This feature resulted in adding over 17MB, or a 43.6% increase.
- The feature was not first landed under the `experimental` key in `next.config.js`, rather, it was added under the stable namespace (top-level)
- Using the feature doesn't do a "guided setup" like TypeScript, it should ask you to "bring your own" dependencies for ESLint
- It uses a undesirable ESLint plugin name: `plugin:@next/next/recommended`. This should read out as strictly `next`, or as short as we can get it.
- Does not provide actionable warnings (missing link to resolve issue)
- Does not follow appropriate console output styling. We need to revisit how these are presented.

To re-land this, we need to ensure the following minimums are met:
- Very minor change in install size
- Fully experimental (i.e. flagged) with warnings
- Finalized package name and configuration shape, preferably so we can do ` { extends: 'next' } `.
2021-03-30 08:26:35 +00:00
Lee Robinson d4d611119e Fix YAML parsing issue in ESLint docs. (#23511) 2021-03-29 17:59:51 +02:00
Tim Neutkens b34a0c98fa Update err.sh links to use nextjs.org/docs/messages instead (#23353) 2021-03-29 10:25:00 +02:00
Lee Robinson d49f978a17 Update with-docker example and deployment docs. (#23486)
## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [x] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.

## Documentation / Examples

- [x] Make sure the linting passes
2021-03-28 20:32:09 +00:00
Jiachi Liu 737c25edd8 doc: fix ActiveLink detection condition (#23472)
## Documentation / Examples

- [x] Make sure the linting passes


`router.pathname` can be dynamic routes like `/posts/[slug]`, use `router.asPath` instead to detect anchor is active
2021-03-28 14:17:50 +00:00
Lee Robinson 5ac8951ed9 Update babel docs to mention you can use babel.config.js. (#23434)
## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [x] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.

## Documentation / Examples

- [x] Make sure the linting passes
2021-03-26 16:01:22 +00:00
JJ Kasper d130f63c41 Add handling fo beforeFiles, afterFiles, and fallback rewrites (#23407)
This adds support for returning an object from `rewrites` in `next.config.js` with `beforeFiles`, `afterFiles`, and `fallback` to allow specifying rewrites at different stages of routing. The existing support for returning an array for rewrites is still supported and behaves the same way. The documentation has been updated to include information on these new stages that can be rewritten and removes the outdated note of rewrites not being able to override pages. 



## Bug

- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [x] Integration tests added
- [x] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.

## Documentation / Examples

- [ ] Make sure the linting passes
2021-03-26 15:19:48 +00:00
JJ Kasper 75c721c583 Add has route field (#22341)
This adds support for a `has` field to `rewrites`, `redirects`, and `headers` to allow matching against `header`, `cookie`, and `query` values. Documentation and additional tests for the feature is also added in this PR. 

Closes: https://github.com/vercel/next.js/issues/22345
2021-03-24 16:50:16 +00:00
matamatanot 5c7475a6e8 Fix typo in eslint doc (#23338)
## Bug

- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.

## Documentation / Examples

- [ ] Make sure the linting passes
2021-03-24 02:03:51 +00:00
Houssein Djirdeh e5ef60fecb Add ESLint to Next.js (#22437)
For #22228

This PR:

- Adds ESLint to toolchain
  - Included by default for builds (`next build`)
  - Can be enabled for development (`next dev`)
  - Custom formatter built for output
- Adds appropriate tests
- Adds two documentation pages
2021-03-23 21:32:42 +00:00
Mito 46fc696840 Include useEffect in SPA demo import, Fix punctuation (#23256)
Under the Single-Page App (SPA) heading, there is a code snipped which has a missing import:
import { useState } from 'react'
to
import { useState, useEffect } from 'react'

Also added apostrophe to description:
your old application entry point
to
your old application's entry point



## Bug

- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.

## Documentation / Examples

- [X] Make sure the linting passes
2021-03-22 01:35:04 +00:00
Tim a1b97ac3f8 Added Prepr CMS Examples to docs (#23221)
Following commit https://github.com/vercel/next.js/commit/1f5c2c851333b5601cc1e9463253fdad0f0d8883

Adding documentation links to example.

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [X ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.

## Documentation / Examples

- [x ] Make sure the linting passes
2021-03-19 16:10:35 +00:00
Lee Robinson 115674f6a4 Clarify a custom server doesn't mean you can't use an existing backend. (#23200)
I've been this confusion quite a few times.

> So with my requirements, how big of a sin is it to use Next only for the frontend and get all its data, JWT tokens, etc. from my NodeJS backend by calling its respective APIs to said backend?

> Even the docs mention that running a custom server is not a great idea...
2021-03-18 17:31:44 +00:00
Vincent Voyer 1b020e6cd1 docs(authentication): rephrase next-iron-session/next-auth (#23199)
I thought that the current wording was not accurate both for next-iron-session and next-auth.

- next-auth is a full-featured authentication system like passport
- next-iron-session is a session utility

The previous copy was less clear about that and, for example, said you should go for next-iron-session for user/password and next-auth for everything else. Which is not the case. I use next-iron-session with only a Slack login, and you can implement email/password with next-auth.

Hope you like it!

PS: I have no preference between the two, I think they serve a different purpose. I used the two (and authored one).

I used next-auth on https://sourcekarma.vercel.app/
2021-03-18 17:04:58 +00:00
Tim Neutkens 70d306e0ac Add note about multiple requests when using incremental static generation (#23190) 2021-03-18 16:22:29 +01:00