rsnext/examples/app-dir-i18n-routing
dongwon kim e35ace6575
examples: add favicon.ico for to avoid browser requests (#62511)
## What?

To avoid the default `favicon.ico` request by the browser, we are adding
a vercel `favicon.ico` to the project.
Currently, we handle exceptions for `favicon.ico` entering the Dynamic
Route `[lang]` in the following manner, but in this case, favicon.ico
renders the entire page.


[example:app-dir-i18n-routing](https://github.com/vercel/next.js/blob/canary/examples/app-dir-i18n-routing/get-dictionary.ts#L12)
```ts
export const getDictionary = async (locale: Locale) =>
  dictionaries[locale]?.() ?? dictionaries.en();
```


Instead of `favicon.ico`, the full HTML of the default language 'en' is
rendered.
![스크린샷 2024-02-26 오전 1 17
56](https://github.com/vercel/next.js/assets/59330828/ea46b75b-ae93-4db4-9b4b-db33fb5d5709)

In the correct case
![스크린샷 2024-02-26 오전 1 24
49](https://github.com/vercel/next.js/assets/59330828/7faabec1-1fc7-4330-a5c3-30449efcace6)

Fixes https://github.com/vercel/next.js/issues/46918

Co-authored-by: Sam Ko <sam@vercel.com>
2024-02-26 17:29:27 +00:00
..
.vscode Create i18n example using app-dir and middleware (#44257) 2023-01-05 16:15:29 +01:00
app/[lang] chore(examples): use default prettier for examples/templates (#60530) 2024-01-11 16:01:44 -07:00
dictionaries Create i18n example using app-dir and middleware (#44257) 2023-01-05 16:15:29 +01:00
public examples: add favicon.ico for to avoid browser requests (#62511) 2024-02-26 17:29:27 +00:00
.gitignore Add .yarn/install-state.gz to .gitignore (#56637) 2023-10-18 16:34:48 +00:00
get-dictionary.ts chore(examples): use default prettier for examples/templates (#60530) 2024-01-11 16:01:44 -07:00
i18n-config.ts chore(examples): use default prettier for examples/templates (#60530) 2024-01-11 16:01:44 -07:00
middleware.ts chore(examples): use default prettier for examples/templates (#60530) 2024-01-11 16:01:44 -07:00
next-env.d.ts Remove incorrect entries for pnpm debug log (#47241) 2023-03-26 22:26:05 -07:00
package.json [example] Add missing package in app dir i18n example (#44820) 2023-01-12 14:24:27 +00:00
README.md update example Deploy button URLs (#48842) 2023-04-26 13:31:44 -04:00
tsconfig.json Create i18n example using app-dir and middleware (#44257) 2023-01-05 16:15:29 +01:00

Internationalized Routing

Next.js doesn't support internationalized routing in app directory out of the box. But you can easily implement it yourself. This example shows how to implement internationalized routing on the Edge.

Deploy your own

Deploy the example using Vercel or preview live with StackBlitz

Deploy with Vercel

How to use

Execute create-next-app with npm, Yarn, or pnpm to bootstrap the example:

npx create-next-app --example app-dir-i18n-routing i18n-app
# or
yarn create next-app --example app-dir-i18n-routing i18n-app
# or
pnpm create next-app --example app-dir-i18n-routing i18n-app

Deploy it to the cloud with Vercel (Documentation).