Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: Grammar overhaul #20636

Closed
wants to merge 333 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
333 commits
Select commit Hold shift + click to select a range
0da9e9a
Grammar community/roadmap
GalacticHypernova May 4, 2023
a78f17c
Better wording, typo fix community/roadmap
GalacticHypernova May 4, 2023
27f1f7e
Grammar migration/overview
GalacticHypernova May 4, 2023
e8e1718
Grammar migration/config
GalacticHypernova May 4, 2023
2e776d9
Grammar for migration/auto-imports
GalacticHypernova May 4, 2023
1eea806
Grammar for migration/meta
GalacticHypernova May 4, 2023
73fb22f
Grammar for migration/PAM
GalacticHypernova May 4, 2023
f25bff9
Grammar migration/PAL
GalacticHypernova May 4, 2023
27b7bb5
Keeping time migration/PAL
GalacticHypernova May 4, 2023
ca58405
Grammar migration/CO
GalacticHypernova May 4, 2023
d249593
Grammar migration/RC
GalacticHypernova May 4, 2023
58837d9
Grammar for migration/bundling, rename for convenience
GalacticHypernova May 4, 2023
6ce6a4e
Renamed, added grammar to migration/server
GalacticHypernova May 4, 2023
a7ea126
Better wording migration/server
GalacticHypernova May 4, 2023
7c2e38b
Renamed, grammar for migration/MA
GalacticHypernova May 4, 2023
4dcc63f
Grammar for examples/app/config
GalacticHypernova May 4, 2023
476a16d
Grammar examples/app/error
GalacticHypernova May 4, 2023
b9d2793
Grammar examples/app/teleport
GalacticHypernova May 4, 2023
3b9814a
Grammar examples/auto/compos
GalacticHypernova May 4, 2023
3a7133d
Grammar examples/compos/use-async
GalacticHypernova May 4, 2023
f425d6e
Grammar examples/compos/use-cookie
GalacticHypernova May 4, 2023
923d632
Grammar examples/compos/fetch
GalacticHypernova May 4, 2023
fcd21a6
Grammar examples/compos/head
GalacticHypernova May 4, 2023
a2a9633
Typo fix examples/compos/state
GalacticHypernova May 4, 2023
5b6fba1
Extra comma examples/routing/middleware
GalacticHypernova May 4, 2023
70ef37a
Missing s examples/routing/nuxt-link
GalacticHypernova May 4, 2023
26e844f
Extra comma examples/advanced/config
GalacticHypernova May 4, 2023
d639de7
Grammar examples/advanced/jsx
GalacticHypernova May 4, 2023
3b177d3
Extra to examples/other/locale
GalacticHypernova May 4, 2023
8045ab5
Matching numbers examples/other/custom
GalacticHypernova May 4, 2023
00bfcfc
Grammar docs/started/layers
GalacticHypernova May 4, 2023
3438a05
Grammar for docs/started/intro
GalacticHypernova May 4, 2023
741d672
Grammar docs/started/install
GalacticHypernova May 4, 2023
c0ceea4
Grammar docs/start/config
GalacticHypernova May 4, 2023
0422742
Better wording "/config
GalacticHypernova May 4, 2023
e1752ae
Merge branch 'main' into patch-3
GalacticHypernova May 4, 2023
a11607d
Added hyphen guide/concepts/auto-imports
GalacticHypernova May 4, 2023
aae57e1
Grammar docs/start/views
GalacticHypernova May 4, 2023
eda3d83
Grammar start/assets
GalacticHypernova May 4, 2023
0b963ab
Hyphen, lowercase explicit imports guide/concepts/auto
GalacticHypernova May 4, 2023
a0631df
Extra hhyphen gf/RC
GalacticHypernova May 4, 2023
5976853
Extra hyphen gf/RC
GalacticHypernova May 4, 2023
a223dc1
Extra hyphen part 3
GalacticHypernova May 4, 2023
721d516
Lowercase example gf/RC
GalacticHypernova May 4, 2023
f6e14cd
Extra hyphen bridge/overview
GalacticHypernova May 4, 2023
dda8f2e
Better wording concepts/vue
GalacticHypernova May 4, 2023
0b698e5
Extra hyphen concepts/vue
GalacticHypernova May 4, 2023
cc347a3
Properly written sentence concepts/vue
GalacticHypernova May 4, 2023
1c99799
Case concepts/rendering
GalacticHypernova May 4, 2023
deeb72f
Better phrasing concepts/rendering
GalacticHypernova May 4, 2023
6cf4e18
Updated time directory/middleware
GalacticHypernova May 4, 2023
577feb5
Case concepts/rendering
GalacticHypernova May 4, 2023
a380004
Apply suggestions from code review for multiple files
GalacticHypernova May 4, 2023
16eb1d9
Better wording directory/components
GalacticHypernova May 4, 2023
174b613
Better wording directory/server
GalacticHypernova May 4, 2023
5eb3e5f
American English gf/modules
GalacticHypernova May 4, 2023
62063bf
Full stop gf/CR
GalacticHypernova May 4, 2023
9b1b8b7
Merge branch 'main' into patch-3
GalacticHypernova May 5, 2023
f50efff
Merge branch 'main' into patch-3
GalacticHypernova May 5, 2023
7f53419
Better phrasing guide/fg/NA
GalacticHypernova May 5, 2023
abbcc0b
Better wording guide/gf/CR
GalacticHypernova May 5, 2023
14d4d75
Grammar for start/routing
GalacticHypernova May 5, 2023
e52947f
Better form start/routing
GalacticHypernova May 5, 2023
0f33187
Grammar start/seo
GalacticHypernova May 5, 2023
b4c5749
Better grammar start/seo
GalacticHypernova May 5, 2023
ab5b78d
Even better grammar seo
GalacticHypernova May 5, 2023
6824bc0
Grammar start/transitions
GalacticHypernova May 5, 2023
859a240
Better phrasing transitions
GalacticHypernova May 5, 2023
5ad9603
Grammar start/data
GalacticHypernova May 5, 2023
d542cdd
Better wording data
GalacticHypernova May 5, 2023
61ede6c
Better wording data
GalacticHypernova May 5, 2023
23e5668
Better wording part 2
GalacticHypernova May 5, 2023
4d0ffff
Fix typo data
GalacticHypernova May 5, 2023
a246c33
Grammar state-manag
GalacticHypernova May 5, 2023
61c767c
Grammar start/error
GalacticHypernova May 5, 2023
f42b40d
Grammar start/layers
GalacticHypernova May 5, 2023
930f241
Extra that error
GalacticHypernova May 5, 2023
403be71
begone -> be gone error
GalacticHypernova May 5, 2023
0216fa3
Grammar start/deploy
GalacticHypernova May 5, 2023
ebf0493
Typo fixes, capitalization start/deploy
GalacticHypernova May 5, 2023
1874634
Grammar start/testing
GalacticHypernova May 5, 2023
a38d818
Extra space testing
GalacticHypernova May 5, 2023
4b0e339
Grammar start/upgrade
GalacticHypernova May 5, 2023
6cdb498
Better word upgrade
GalacticHypernova May 5, 2023
d40bdb6
api/compos/asyncData
GalacticHypernova May 5, 2023
cf62643
Removed extra to async
GalacticHypernova May 5, 2023
58bd89d
Grammar api/compos/usecookie
GalacticHypernova May 5, 2023
6404cc1
Grammar api/compos/error
GalacticHypernova May 5, 2023
355b168
Grammar api/config/nuxt
GalacticHypernova May 5, 2023
3abb805
api/compos/fetch
GalacticHypernova May 5, 2023
8236d77
Missing the fetch
GalacticHypernova May 5, 2023
275c3f4
Extra ` start/data
GalacticHypernova May 5, 2023
c67e33d
Missing the data
GalacticHypernova May 5, 2023
c38201b
api/compos/headSafe
GalacticHypernova May 5, 2023
3800def
api/compos/head
GalacticHypernova May 5, 2023
2de6094
Better wording head
GalacticHypernova May 5, 2023
acb59fb
compos/hydration
GalacticHypernova May 5, 2023
c1f1dee
compos/lazyAsync
GalacticHypernova May 5, 2023
20b4062
compos/lazyFetch
GalacticHypernova May 5, 2023
9e981f0
compos/requestEvent
GalacticHypernova May 5, 2023
4c730dd
compos/route
GalacticHypernova May 5, 2023
cb03830
compos/state
GalacticHypernova May 5, 2023
b2fa725
compos/router
GalacticHypernova May 5, 2023
67041cf
The new docs with updated format start/seo
GalacticHypernova May 5, 2023
e5eed4a
Merge branch 'main' into patch-3
GalacticHypernova May 5, 2023
93130c6
Grammar start/seo
GalacticHypernova May 5, 2023
aac9023
compos/seo
GalacticHypernova May 5, 2023
16f2b7c
compos/serverSeo
GalacticHypernova May 5, 2023
09474ac
compos/nuxtData
GalacticHypernova May 5, 2023
faecc21
compos/nuxtApp
GalacticHypernova May 5, 2023
61cebf1
Missing the compos/requestHeaders
GalacticHypernova May 5, 2023
38a9255
Grammar compos/runtime
GalacticHypernova May 5, 2023
e4dabe0
compon/client
GalacticHypernova May 5, 2023
142153d
compon/nuxtClient
GalacticHypernova May 5, 2023
5a4434a
compon/page
GalacticHypernova May 5, 2023
e040e57
compon/layout
GalacticHypernova May 5, 2023
f540e53
compon/link
GalacticHypernova May 5, 2023
87d17f5
compon/loadingIndic
GalacticHypernova May 5, 2023
07f79a2
compon/teleports
GalacticHypernova May 5, 2023
f059e28
com/add
GalacticHypernova May 5, 2023
c60cdd2
com/BM
GalacticHypernova May 5, 2023
9e89dd7
com/build
GalacticHypernova May 5, 2023
575d043
com/clean
GalacticHypernova May 5, 2023
ec5a19f
com/dev
GalacticHypernova May 5, 2023
ae926f7
com/devt
GalacticHypernova May 5, 2023
50e00c1
com/gen
GalacticHypernova May 5, 2023
b11c29c
com/init
GalacticHypernova May 5, 2023
d00c830
com/prepare
GalacticHypernova May 5, 2023
45c438e
's com/devt
GalacticHypernova May 5, 2023
8d9c653
's com/build
GalacticHypernova May 5, 2023
4c90c44
's com/clean
GalacticHypernova May 5, 2023
0d16a02
's com/BM
GalacticHypernova May 5, 2023
24b3233
com/preview
GalacticHypernova May 5, 2023
3de6b1b
advanced/hooks
GalacticHypernova May 5, 2023
7393eab
advanced/kit
GalacticHypernova May 5, 2023
dc7d341
utils/fetch
GalacticHypernova May 5, 2023
7bb66d4
utils/abort
GalacticHypernova May 5, 2023
e0c50ec
utils/routeMiddleWare
GalacticHypernova May 5, 2023
61f2126
abortNav auth -> user
GalacticHypernova May 5, 2023
1645333
utils/clearEr
GalacticHypernova May 5, 2023
7958850
utils/clearNuxt
GalacticHypernova May 5, 2023
73b4fc9
utils/createError
GalacticHypernova May 5, 2023
c3371e0
utils/DNC
GalacticHypernova May 5, 2023
d9cc1e0
utils/DNRM
GalacticHypernova May 5, 2023
e8974f0
utils/DPM
GalacticHypernova May 5, 2023
3b6e63f
utils/ONR
GalacticHypernova May 5, 2023
c6aae77
utils/UAC
GalacticHypernova May 5, 2023
8e05d87
utils/SE
GalacticHypernova May 5, 2023
ab599cc
utils/SPL
GalacticHypernova May 5, 2023
7c649c6
utils/NT
GalacticHypernova May 5, 2023
c84e585
utils/prefetchC
GalacticHypernova May 5, 2023
17d52f6
utils/preloadC
GalacticHypernova May 5, 2023
a7638fc
utils/PRC
GalacticHypernova May 5, 2023
fc6e59b
utils/RNA
GalacticHypernova May 5, 2023
2682878
utils/RND
GalacticHypernova May 5, 2023
690af48
[autofix.ci] apply automated fixes
autofix-ci[bot] May 5, 2023
42db42b
Merge branch 'main' into patch-3
GalacticHypernova May 6, 2023
ba451be
start/deploy case police for heroku
GalacticHypernova May 6, 2023
dfda8dc
Edgio + alphabet start/deploy
GalacticHypernova May 6, 2023
9246354
Revert previous mistake while keeping the PR deploy
GalacticHypernova May 6, 2023
a16eeac
Apply suggestions from code review
GalacticHypernova May 6, 2023
7a6f391
Apply suggestions from code review
GalacticHypernova May 6, 2023
0f00172
Apply suggestions from code review
GalacticHypernova May 6, 2023
c885a36
's start/deploy
GalacticHypernova May 6, 2023
97fc8ae
Capitalization nginx start/deploy
GalacticHypernova May 6, 2023
73917a2
Trailing slash VS start/install
GalacticHypernova May 6, 2023
511c4de
start/assets trailing slashes
GalacticHypernova May 6, 2023
3cf40c6
Suggestion from code review start/assets
GalacticHypernova May 6, 2023
4871d4e
start/assets extra publix
GalacticHypernova May 6, 2023
24b2bb2
Code review start/views UI
GalacticHypernova May 6, 2023
adc76af
Code review > -> : start/deploy
GalacticHypernova May 6, 2023
e1fb694
start/views UI
GalacticHypernova May 6, 2023
f40b421
Better phrasing start/intro
GalacticHypernova May 6, 2023
7a66f55
Code review start/deploy 404 SSG
GalacticHypernova May 6, 2023
e776b78
Code review start/upgrade bridge
GalacticHypernova May 6, 2023
e21f298
Code review start/config custom scripts
GalacticHypernova May 6, 2023
889f51f
Code review start/testing `setup`
GalacticHypernova May 6, 2023
ba66f68
Merge branch 'main' into patch-3
GalacticHypernova May 7, 2023
b0e10da
Apply suggestions from code review
GalacticHypernova May 7, 2023
077f46d
Apply suggestions from code review
GalacticHypernova May 7, 2023
b21c859
start/transition code review
GalacticHypernova May 7, 2023
3fdb755
start/deploy deploable code review
GalacticHypernova May 7, 2023
a9d9a18
Apply suggestions from code review
GalacticHypernova May 7, 2023
6efff70
start/data code review
GalacticHypernova May 7, 2023
078e26d
Apply suggestions from code review
GalacticHypernova May 7, 2023
d56d59f
start/upgrade review
GalacticHypernova May 7, 2023
05b1c4a
start/data review
GalacticHypernova May 7, 2023
231336f
start/layers review
GalacticHypernova May 7, 2023
61266cb
Apply suggestions from code review
GalacticHypernova May 8, 2023
30f8be2
migration/overview review
GalacticHypernova May 8, 2023
9f191bf
migrate/overview review part 2
GalacticHypernova May 8, 2023
ee01ce5
migrate/server review
GalacticHypernova May 8, 2023
9441549
migrate/runtime review
GalacticHypernova May 8, 2023
dcb9835
Apply suggestions from code review
GalacticHypernova May 8, 2023
7521f3c
Deleted unnecessary part
GalacticHypernova May 8, 2023
fe9a788
Better wording concepts/rendering
GalacticHypernova May 8, 2023
94fa355
Update docs/7.migration/9.bundling.md
GalacticHypernova May 8, 2023
921a954
Update docs/7.migration/7.component-options.md
GalacticHypernova May 8, 2023
e89960e
Update docs/7.migration/7.component-options.md
GalacticHypernova May 8, 2023
03fdc9e
Update 8.runtime-config.md review
GalacticHypernova May 8, 2023
e57b8ad
Update docs/7.migration/7.component-options.md review
GalacticHypernova May 8, 2023
69f4491
Update docs/7.migration/7.component-options.md review
GalacticHypernova May 8, 2023
b9f05e5
Update docs/7.migration/11.module-authors.md review
GalacticHypernova May 8, 2023
19ac856
Update docs/7.migration/7.component-options.md review
GalacticHypernova May 8, 2023
4262cb5
Apply suggestions from code review
GalacticHypernova May 8, 2023
d7a7cdb
Apply suggestions from code review
GalacticHypernova May 8, 2023
43b1754
Update 2.vuejs-development.md rendering
GalacticHypernova May 8, 2023
4142de3
Update 5.seo-meta.md review
GalacticHypernova May 8, 2023
da08a14
Better word start/layers
GalacticHypernova May 8, 2023
d569868
Apply suggestions from code review
GalacticHypernova May 9, 2023
45525eb
Apply suggestions from code review
GalacticHypernova May 9, 2023
2e328ee
Update docs/7.migration/8.runtime-config.md
GalacticHypernova May 9, 2023
6d1b9fa
Update 1.auto-imports.md review
GalacticHypernova May 9, 2023
2ec7426
Update 6.data-fetching.md review
GalacticHypernova May 9, 2023
b8c3933
Update 6.esm.md review
GalacticHypernova May 9, 2023
19a301e
Merge branch 'main' into patch-3
GalacticHypernova May 9, 2023
d051821
[autofix.ci] apply automated fixes
autofix-ci[bot] May 9, 2023
16511dc
Update docs/2.guide/2.directory-structure/1.pages.md
GalacticHypernova May 10, 2023
492b08e
Update 1.pages.md review
GalacticHypernova May 10, 2023
f59bd91
Merge branch 'main' into patch-3
GalacticHypernova May 11, 2023
0116882
New docs data-fetch
GalacticHypernova May 11, 2023
48d62c2
New docs
GalacticHypernova May 11, 2023
c7ac9be
New docs
GalacticHypernova May 11, 2023
ce19ee0
Updated new config part
GalacticHypernova May 11, 2023
eef75d8
Update 2.configuration.md
GalacticHypernova May 11, 2023
f7707db
Grammar start/intro
GalacticHypernova May 11, 2023
504f0e7
Merge branch 'main' into patch-3
GalacticHypernova May 11, 2023
6b609ed
Apply suggestions from code review
GalacticHypernova May 12, 2023
fa19ce5
Update docs/2.guide/3.going-further/1.internals.md
GalacticHypernova May 12, 2023
ed092c9
Update docs/2.guide/2.directory-structure/1.server.md
GalacticHypernova May 12, 2023
607045f
Duplicate sentence
GalacticHypernova May 12, 2023
d438ea4
Merge branch 'main' into patch-3
GalacticHypernova May 12, 2023
af1a581
Update docs/2.guide/2.directory-structure/1.pages.md
GalacticHypernova May 12, 2023
d149243
Update docs/2.guide/3.going-further/1.internals.md
GalacticHypernova May 12, 2023
0a9ba26
Update 6.esm.md
GalacticHypernova May 12, 2023
f352246
Add autoImport to configuration documentation
GalacticHypernova May 12, 2023
1bda655
Update adhoc.ts
GalacticHypernova May 12, 2023
8a7d48b
Update adhoc.ts
GalacticHypernova May 12, 2023
1e50bd6
Update adhoc.ts
GalacticHypernova May 12, 2023
6e16c3a
Update adhoc.ts
GalacticHypernova May 12, 2023
f76639f
Added back, looks like preview is the problem
GalacticHypernova May 12, 2023
c4aae8b
Syncing
GalacticHypernova May 12, 2023
3f35a72
Apply suggestions from code review
GalacticHypernova May 12, 2023
81a7684
Update 3.modules.md
GalacticHypernova May 12, 2023
b6c8fad
Update 3.modules.md
GalacticHypernova May 12, 2023
01831a8
Update 3.modules.md
GalacticHypernova May 12, 2023
ee49909
Update 1.internals.md
GalacticHypernova May 12, 2023
4a5138e
Merge branch 'main' into patch-3
GalacticHypernova May 13, 2023
7035304
Update docs/2.guide/2.directory-structure/1.pages.md
GalacticHypernova May 13, 2023
00b9eea
Update docs/2.guide/3.going-further/3.modules.md
GalacticHypernova May 13, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
46 changes: 23 additions & 23 deletions docs/1.getting-started/1.introduction.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
---
navigation.icon: uil:info-circle
description: Nuxt's goal is to make web development intuitive and performant with a great Developer Experience in mind.
description: Nuxt's goal is to make web development intuitive and performant with an exquisite developer experience in mind.
---

# Introduction

Nuxt is a free and [open-source framework](https://github.com/nuxt/nuxt) with an intuitive and extendable way to create type-safe, performant and production-grade full-stack web applications and websites with [Vue.js](https://vuejs.org).
Nuxt is a free and [open-source framework](https://github.com/nuxt/nuxt) with an intuitive and extendable way to create type-safe, performant, and production-grade full-stack web applications and websites with [Vue.js](https://vuejs.org).

We made everything so you can start writing `.vue` files from the beginning while enjoying hot module replacement in development and a performant application in production with server-side rendering by default.

Expand All @@ -16,13 +16,13 @@ Nuxt has no vendor lock-in, allowing you to deploy your application [**anywhere,
Nuxt uses conventions and an opinionated directory structure to automate repetitive tasks and allow developers to focus on pushing features. The configuration file can still customize and override its default behaviors.

::list{type=success}
- **File-based routing:** define routes based on the structure of your [`pages/` directory](/docs/guide/directory-structure/pages). This can make it easier to organize your application and avoid the need for manual route configuration.
- **File-based routing:** Define routes based on the structure of your [`pages/` directory](/docs/guide/directory-structure/pages). This can make it easier to organize your application and avoid the need for manual route configuration.
- **Code splitting:** Nuxt automatically splits your code into smaller chunks, which can help reduce the initial load time of your application.
- **Server-side rendering out of the box:** Nuxt comes with built-in SSR capabilities, so you don't have to set up a separate server yourself.
- **Auto-imports:** write Vue composables and components in their respective directories and use them without having to import them with the benefits of tree-shaking and optimised JS bundles.
- **Data-fetching utilities:** Nuxt provides composables to handle SSR-compatible data fetching as well as different strategies.
- **Zero-config TypeScript support:** write type-safe code without having to learn TypeScript with our auto-generated types and `tsconfig.json`
- **Configured build tools:** we use [Vite](https://vitejs.dev) by default to support hot module replacement (HMR) in development and bundling your code for production with best-practices baked-in.
- **Server-side rendering out of the box:** Nuxt has built-in SSR capabilities, so you don't have to set up a separate server.
- **Auto-imports:** Write Vue composables and components in their respective directories and use them without having to import them with the benefits of tree-shaking and optimized JS bundles.
- **Data-fetching utilities:** Nuxt provides composables for handling SSR-compatible data fetching and different strategies.
- **Zero-config TypeScript support:** Write type-safe code without learning TypeScript using our auto-generated types and `tsconfig.json`.
- **Configured build tools:** We use [Vite](https://vitejs.dev) by default to support hot module replacement (HMR) in development and bundling your code for production with best practices baked-in.
::

Nuxt takes care of these and provides both frontend and backend functionality so you can focus on what matters: **creating your web application**.
Expand All @@ -32,45 +32,45 @@ Nuxt takes care of these and provides both frontend and backend functionality so
Nuxt comes with built-in server-side rendering (SSR) capabilities by default, without having to configure a server yourself, which has many benefits for web applications:

::list{type=success}
- **Faster initial page load time:** Nuxt sends a fully rendered HTML page to the browser, which can be displayed immediately. This can provide a faster perceived page load time and a better user experience (UX), especially on slower networks or devices.
- **Improved SEO:** search engines can better index SSR pages because the HTML content is available immediately, rather than requiring JavaScript to render the content on the client-side.
- **Better performance on low-powered devices:** it reduces the amount of JavaScript that needs to be downloaded and executed on the client-side, which can be beneficial for low-powered devices that may struggle with processing heavy JavaScript applications.
- **Better accessibility:** the content is immediately available on the initial page load, improving accessibility for users who rely on screen readers or other assistive technologies.
- **Easier caching:** pages can be cached on the server-side, which can further improve performance by reducing the amount of time it takes to generate and send the content to the client.
- **Faster initial page load time:** Nuxt sends a fully rendered HTML page to the browser, which can be displayed immediately. This can provide a faster-perceived page load time and a better user experience (UX), especially on slower networks or devices.
- **Improved SEO:** Search engines better index SSR pages because the HTML content is available immediately, rather than requiring JavaScript to render the content on the client side.
- **Better performance on low-powered devices:** It reduces the amount of JavaScript that needs to be downloaded and executed on the client side, making it potentially beneficial for low-powered devices that may struggle with processing heavy JavaScript applications.
- **Better accessibility:** The content is immediately available on the initial page load, improving accessibility for users who rely on screen readers or other assistive technologies.
- **Easier caching:** Pages are cachable on the server side, which can further improve performance by reducing the time it takes to generate and send the content to the client.
::

Overall, server-side rendering can provide a faster and more efficient user experience, as well as improve search engine optimization and accessibility.
Overall, server-side rendering can provide a faster and more efficient user experience, including improved search engine optimization and accessibility.

As Nuxt is a versatile framework, it gives you the possibility to statically render your whole application to a static hosting with `nuxt generate`,
disable SSR globally with the `ssr: false` option or leverage hybrid rendering by setting up the `routeRules` option.
As Nuxt is a versatile framework, it gives you the possibility to statically render your entire application to a static hosting with `nuxt generate`,
disable SSR globally with the `ssr: false` option, or leverage hybrid rendering by setting up the `routeRules` option.

::alert{type="info"}
Read more about the [Nuxt rendering modes](/docs/guide/concepts/rendering).
::

### Server engine

The Nuxt server engine [Nitro](https://nitro.unjs.io) unlocks new full-stack capabilities.
Nuxt's server engine, [Nitro](https://nitro.unjs.io), unlocks new full-stack capabilities.

In development, it uses Rollup and Node.js workers for your server code and context isolation. It also generates your server API by reading files in `server/api/` and server middleware from `server/middleware/`.

In production, Nitro builds your app and server into one universal `.output` directory. This output is light: minified and removed from any Node.js modules (except polyfills). You can deploy this output on any system supporting JavaScript, from Node.js, Serverless, Workers, Edge-side rendering or purely static.
In production, it builds your app and server into one universal `.output` directory. This output is light: minified and removed from any Node.js modules (except polyfills). You can deploy it on any system supporting JavaScript, including serverless and edge environments, or pre-render for static hosting.

::alert{type="info"}
Read more about [Nuxt server engine](/docs/guide/concepts/server-engine).
::

### Production-ready

A Nuxt application can be deployed on a Node or Deno server, pre-rendered to be hosted in static environments, or deployed to serverless and edge providers.
A Nuxt application is deployable on a Node or Deno server, pre-renderable for static hosting, or deployable to serverless and edge providers.

::alert{type="info"}
Discover more in the [deployment section](/docs/getting-started/deployment).
::

### Modular

A module system allows to extend Nuxt with custom features and integrations with third-party services.
A module system allows extending Nuxt with custom features and integrating it with third-party services.

::alert{type="info"}
Discover more about [modules](/docs/guide/concepts/modules).
Expand All @@ -89,7 +89,7 @@ Nuxt is composed of different [core packages](https://github.com/nuxt/nuxt/tree/
- Nuxt 2 Bridge: [@nuxt/bridge](https://github.com/nuxt/bridge)
::

We recommend reading each concept to have a full vision of Nuxt capabilities and the scope of each package.
We recommend reading each concept for a complete vision of Nuxt's capabilities and the scope of each package.

::card-list
---
Expand All @@ -112,10 +112,10 @@ cardListClass: 'grid grid-cols-1 gap-y-4'
Nuxt is the backbone of your Vue.js project, giving structure to build your project with confidence while keeping flexibility.
<br>
<br>
Extendable with a strong module ecosystem and hooks engine, it makes it easy to connect your REST or GraphQL endpoints, favorite CMS, CSS frameworks and more. PWA and AMP support is only a module away from your Nuxt project.
Extendable with an almighty module ecosystem and hooks engine, it makes it easy to connect your REST or GraphQL endpoints, favorite CMS, CSS frameworks, and more. PWA and AMP support is only a module away from your Nuxt project.
<br>
<br>
Ready to try? Head over to the [Installation section](/docs/getting-started/installation).
Ready to try? Head to the [Installation section](/docs/getting-started/installation).
:::

:::card-item
Expand Down
42 changes: 21 additions & 21 deletions docs/1.getting-started/10.deployment.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
---
navigation.icon: uil:rocket
description: Deploy on a Node.js server, pre-render for static hosting and to serverless or edge environments.
description: Deploy on a Node.js server, pre-render for static hosting, and to serverless or edge environments.
---

# Deployment

A Nuxt application can be deployed on a Node.js server, pre-rendered for static hosting, or deployed to serverless or edge (CDN) environments.
A Nuxt application is deployable on a Node.js server, to serverless or edge (CDN) environments, or pre-rendered for static hosting.

::alert{type=info}
If you are looking for a list of cloud providers that support Nuxt 3, see the [list below](#supported-hosting-providers).
Expand Down Expand Up @@ -42,7 +42,7 @@ This preset will respect the following runtime environment variables:

- `NITRO_PORT` or `PORT` (defaults to `3000`)
- `NITRO_HOST` or `HOST` (defaults to `'0.0.0.0'`)
- `NITRO_SSL_CERT` and `NITRO_SSL_KEY` - if both are present, this will launch the server in HTTPS mode. In the vast majority of cases, this should not be used other than for testing, and the Nitro server should be run behind a reverse proxy like nginx or Cloudflare which terminates SSL.
- `NITRO_SSL_CERT` and `NITRO_SSL_KEY` - If both are present, this will launch the server in HTTPS mode. In most cases, this should be left alone for purposes other than testing, and the Nitro server should run behind a reverse proxy like nginx or Cloudflare, terminating SSL.

#### Using PM2

Expand All @@ -64,24 +64,24 @@ module.exports = {

#### Using Cluster Mode

You can use `NITRO_PRESET=node_cluster` in order to leverage multi-process performance using Node.js [cluster](https://nodejs.org/dist/latest/docs/api/cluster.html) module.
You can use `NITRO_PRESET=node_cluster` to leverage multi-process performance using [Node.js's cluster module](https://nodejs.org/dist/latest/docs/api/cluster.html).

By default, the workload gets distributed to the workers with the round robin strategy.
By default, the workload gets distributed to the workers with the round-robin strategy.

### Learn More

:ReadMore{link="https://nitro.unjs.io/deploy/node" title="the Nitro documentation for node-server preset"}

## Static Hosting

There are two ways to deploy a Nuxt application to any static hosting services:
There are two ways to deploy a Nuxt application to any static hosting service:

- Static site generation (SSG) with `ssr: true` pre-renders routes of your application at build time. (This is the default behaviour when running `nuxi generate`.) It will also generate `/200.html` and `/404.html` single-page app fallback pages, which can render dynamic routes or 404 errors on the client (though you may need to configure this on your static host).
- Alternatively, you can prerender your site with `ssr: false` (static single-page app). This will produce HTML pages with an empty `<div id="__nuxt"></div>` where your Vue app would normally be rendered. You will lose many of the benefits of prerendering your site, so it is suggested instead to use `<ClientOnly>` to wrap the portions of your site that cannot be server rendered (if any).
- Static Site Generation (SSG) with `ssr: true` pre-renders your application's routes at build time. (This is the default behavior when running `nuxi generate`.) It will also generate `/200.html` and `/404.html` fallback pages, which can render dynamic routes or 404 errors on the client (though you may need to configure this on your static host).
- Alternatively, you can pre-render your site with `ssr: false` (static single-page app). This will produce HTML pages with an empty `<div id="__nuxt"></div>` where your Vue app normally would render. You will lose many benefits of pre-rendering your site, so it is suggested instead to use `<ClientOnly>` to wrap the portions of your site that cannot be server-rendered (if any).

### Crawl-based Pre-rendering

Use the [`nuxi generate` command](/docs/api/commands/generate) to build your application. For every page, Nuxt uses a crawler to generate a corresponding HTML and payload files. The built files will be generated in the `.output/public` directory.
Use the [`nuxi generate` command](/docs/api/commands/generate) to build your application. Nuxt uses a crawler to create corresponding HTML and payload files for each page. The files will be output to the `.output/public` directory.

```bash
npx nuxi generate
Expand Down Expand Up @@ -129,7 +129,7 @@ defineNuxtConfig({

### Client-side Only Rendering

If you don't want to pre-render your routes, another way of using static hosting is to set the `ssr` property to `false` in the `nuxt.config` file. The `nuxi generate` command will then output an `.output/public/index.html` entrypoint and JavaScript bundles like a classic client-side Vue.js application.
If you don't want to pre-render your routes, another way of using static hosting is to set the `ssr` property to `false` in the `nuxt.config` file. The `nuxi generate` command will output a `.output/public/index.html` entry point and JavaScript bundles like a classic client-side Vue.js application.

```ts [nuxt.config.ts|js]
defineNuxtConfig({
Expand All @@ -139,9 +139,9 @@ defineNuxtConfig({

## Presets

In addition to Node.js servers and static hosting services, a Nuxt 3 project can be deployed with several well-tested presets and minimal amount of configuration.
In addition to Node.js servers and static hosting services, a Nuxt 3 project is deployable with several well-tested presets and minimal configuration.

You can explicitly set the desired preset in the [`nuxt.config`](/docs/guide/directory-structure/nuxt.config) file:
You can explicitly set the desired preset in the [`nuxt.config` file](/docs/guide/directory-structure/nuxt.config):

```js [nuxt.config.js|ts]
export default {
Expand All @@ -161,12 +161,12 @@ NITRO_PRESET=node-server nuxt build

### Supported Hosting Providers

Nuxt 3 can be deployed to several cloud providers with a minimal amount of configuration:
Nuxt 3 is deployable to several cloud providers with a minimal amount of configuration:

- :icon{name="logos:aws" class="h-5 w-4 inline mb-2"} [AWS](https://nitro.unjs.io/deploy/providers/aws)
- :icon{name="logos:microsoft-azure" class="h-5 w-4 inline mb-2"} [Azure](https://nitro.unjs.io/deploy/providers/azure)
- :icon{name="ph:cloud-duotone" class="h-5 w-4 inline mb-2"} [Cleavr](https://nitro.unjs.io/deploy/providers/cleavr)
- :icon{name="logos:cloudflare" class="h-5 w-4 inline mb-2"} [CloudFlare](https://nitro.unjs.io/deploy/providers/cloudflare)
- :icon{name="logos:cloudflare" class="h-5 w-4 inline mb-2"} [Cloudflare](https://nitro.unjs.io/deploy/providers/cloudflare)
- :icon{name="logos:digital-ocean" class="h-5 w-4 inline mb-2"} [DigitalOcean](https://nitro.unjs.io/deploy/providers/digitalocean)
- :icon{name="ph:cloud-duotone" class="h-5 w-4 inline mb-2"} [Edgio](https://nitro.unjs.io/deploy/providers/edgio)
- :icon{name="logos:firebase" class="h-5 w-4 inline mb-2"} [Firebase](https://nitro.unjs.io/deploy/providers/firebase)
Expand All @@ -179,14 +179,14 @@ Nuxt 3 can be deployed to several cloud providers with a minimal amount of confi

## CDN Proxy

In most cases, Nuxt can work with third-party content that is not generated or created by Nuxt itself. But sometimes such content can cause problems, especially Cloudflare's "Minification and Security Options".
In most cases, Nuxt can work with third-party content not generated or created by it. But sometimes such content can cause problems, especially Cloudflare's "Minification and Security Options".

Accordingly, you should make sure that the following options are unchecked / disabled in Cloudflare. Otherwise, unnecessary re-rendering or hydration errors could impact your production application.
Accordingly, you should ensure the following options are unchecked/disabled in Cloudflare. Otherwise, unnecessary re-rendering or hydration errors could impact your production application.

1. Speed > Optimization > Auto Minify: Uncheck JavaScript, CSS and HTML
2. Speed > Optimization > Disable "Rocket Loaderβ„’"
3. Speed > Optimization > Disable "Mirage"
4. Scrape Shield > Disable "Email Address Obfuscation"
5. Scrape Shield > Disable "Server-side Excludes"
1. Speed > Optimization > Auto Minify: Uncheck JavaScript, CSS, and HTML
2. Speed > Optimization: Disable "Rocket Loaderβ„’"
3. Speed > Optimization: Disable "Mirage"
4. Scrape Shield: Disable "Email Address Obfuscation"
5. Scrape Shield: Disable "Server-side Excludes"

With these settings, you can be sure that Cloudflare won't inject scripts into your Nuxt application that may cause unwanted side effects.