From 03943b0e743bbc1b96866b87314dec81732819ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Chopin?= Date: Wed, 16 Nov 2022 11:04:28 +0100 Subject: [PATCH] docs: new website design (#9007) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * docs: implement new website theme * chore: rename dirs * chore: update build * lint fix * chore: update deps * fix: include node_modules in esbuild step * chore: update deps * Update .gitignore * chore: update theme version * up * up * fix: use svg for illustration * chore: update to 0.0.12 * chore: force parse5 resolution * stay with build * feat: always display first home section * Update yarn.lock * chore: update theme * fix lint * docs: update home title * chore: update website theme version * Update docs/content/0.index.md Co-authored-by: pooya parsa * Update docs/content/0.index.md Co-authored-by: pooya parsa * up * chore: bump theme version * up * chore: up * up up and up * chore: generate * fix: boolean value * feat: new images * update again * chore: up * ouep * chore: up Co-authored-by: Daniel Roe Co-authored-by: Clément Ollivier Co-authored-by: pooya parsa --- docs/.env.example | 2 + docs/.gitignore | 1 + docs/content/0.index.md | 337 ++ .../1.getting-started/1.introduction.md | 18 +- .../1.getting-started/10.deployment.md | 6 +- .../10.upgrade-guide/_dir.yml | 0 .../1.getting-started/11.upgrade.md | 6 +- .../1.getting-started/2.installation.md | 2 +- .../1.getting-started/3.configuration.md | 8 +- .../{ => 1.docs}/1.getting-started/3.views.md | 14 +- .../1.getting-started/4.assets.md | 12 +- .../1.getting-started/5.routing.md | 8 +- .../1.getting-started/5.seo-meta.md | 8 +- .../1.getting-started/5.transitions.md | 12 +- .../1.getting-started/6.data-fetching.md | 22 +- .../1.getting-started/7.state-management.md | 10 +- .../1.getting-started/8.error-handling.md | 8 +- .../1.getting-started/9.testing.md | 4 +- .../{ => 1.docs}/1.getting-started/_dir.yml | 0 .../2.guide/1.concepts/1.auto-imports.md | 10 +- .../2.guide/1.concepts/2.vuejs-development.md | 10 +- .../2.guide/1.concepts/3.rendering.md | 12 +- .../2.guide/1.concepts/4.server-engine.md | 6 +- .../2.guide/1.concepts/5.modules.md | 6 +- .../{ => 1.docs}/2.guide/1.concepts/7.esm.md | 2 +- .../2.guide/1.concepts/8.typescript.md | 6 +- .../{ => 1.docs}/2.guide/1.concepts/_dir.yml | 0 .../{ => 1.docs}/2.guide/1.concepts/index.md | 0 .../2.guide/2.directory-structure/0.nuxt.md | 0 .../2.guide/2.directory-structure/0.output.md | 2 +- .../2.guide/2.directory-structure/1.assets.md | 6 +- .../2.directory-structure/1.components.md | 2 +- .../2.directory-structure/1.composables.md | 6 +- .../2.directory-structure/1.content.md | 2 +- .../2.directory-structure/1.layouts.md | 6 +- .../2.directory-structure/1.middleware.md | 8 +- .../2.directory-structure/1.node_modules.md | 0 .../2.guide/2.directory-structure/1.pages.md | 18 +- .../2.directory-structure/1.plugins.md | 6 +- .../2.guide/2.directory-structure/1.public.md | 0 .../2.guide/2.directory-structure/1.server.md | 0 .../2.guide/2.directory-structure/1.utils.md | 4 +- .../2.directory-structure/2.gitignore.md | 0 .../2.directory-structure/2.nuxtignore.md | 2 +- .../2.directory-structure/3.app.config.md | 2 +- .../2.guide/2.directory-structure/3.app.md | 6 +- .../2.directory-structure/3.nuxt.config.md | 2 +- .../2.directory-structure/3.package.md | 0 .../2.directory-structure/3.tsconfig.md | 2 +- .../2.guide/2.directory-structure/_dir.yml | 0 .../2.guide/2.directory-structure/index.md | 0 .../{ => 1.docs}/2.guide/3.deploy/_dir.yml | 0 .../2.guide/3.deploy/providers/_dir.yml | 0 .../2.guide/4.going-further/1.internals.md | 14 +- .../4.going-further/10.runtime-config.md | 2 +- .../4.going-further/11.edge-channel.md | 2 +- .../2.guide/4.going-further/2.hooks.md | 8 +- .../2.guide/4.going-further/3.modules.md | 14 +- .../2.guide/4.going-further/4.kit.md | 6 +- .../2.guide/4.going-further/6.nuxt-app.md | 4 +- .../2.guide/4.going-further/_dir.yml | 0 .../2.guide/4.going-further/index.md | 0 docs/content/{ => 1.docs}/2.guide/index.md | 0 .../{ => 1.docs}/3.api/1.composables/_dir.yml | 0 .../1.composables/on-before-route-leave.md | 0 .../1.composables/on-before-route-update.md | 0 .../3.api/1.composables/use-app-config.md | 2 +- .../3.api/1.composables/use-async-data.md | 2 +- .../3.api/1.composables/use-cookie.md | 2 +- .../3.api/1.composables/use-error.md | 2 +- .../3.api/1.composables/use-fetch.md | 8 +- .../3.api/1.composables/use-head.md | 2 +- .../3.api/1.composables/use-hydration.md | 2 +- .../1.composables/use-lazy-async-data.md | 6 +- .../3.api/1.composables/use-lazy-fetch.md | 6 +- .../3.api/1.composables/use-nuxt-app.md | 4 +- .../3.api/1.composables/use-request-event.md | 0 .../1.composables/use-request-headers.md | 2 +- .../3.api/1.composables/use-route.md | 0 .../3.api/1.composables/use-router.md | 0 .../3.api/1.composables/use-runtime-config.md | 0 .../3.api/1.composables/use-state.md | 2 +- .../3.api/2.components/1.client-only.md | 0 .../3.api/2.components/2.nuxt-page.md | 0 .../3.api/2.components/3.nuxt-layout.md | 0 .../3.api/2.components/4.nuxt-link.md | 2 +- .../2.components/5.nuxt-loading-indicator.md | 0 .../2.components/6.nuxt-error-boundary.md | 2 +- .../3.api/2.components/7.nuxt-welcome.md | 0 .../3.api/2.components/8.teleports.md | 2 +- .../{ => 1.docs}/3.api/2.components/_dir.yml | 0 .../{ => 1.docs}/3.api/2.components/index.md | 0 .../{ => 1.docs}/3.api/3.utils/$fetch.md | 4 +- .../{ => 1.docs}/3.api/3.utils/_dir.yml | 0 .../3.api/3.utils/abort-navigation.md | 2 +- .../3.api/3.utils/add-route-middleware.md | 4 +- .../{ => 1.docs}/3.api/3.utils/clear-error.md | 4 +- .../3.api/3.utils/clear-nuxt-data.md | 0 .../3.api/3.utils/create-error.md | 2 +- .../3.api/3.utils/define-nuxt-component.md | 0 .../3.utils/define-nuxt-route-middleware.md | 4 +- .../3.api/3.utils/define-page-meta.md | 4 +- .../{ => 1.docs}/3.api/3.utils/index.md | 0 .../{ => 1.docs}/3.api/3.utils/navigate-to.md | 0 .../3.api/3.utils/prefetch-components.md | 2 +- .../3.api/3.utils/preload-components.md | 0 .../3.api/3.utils/refresh-nuxt-data.md | 2 +- .../{ => 1.docs}/3.api/3.utils/set-layout.md | 0 .../3.api/3.utils/set-response-status.md | 0 .../{ => 1.docs}/3.api/3.utils/show-error.md | 4 +- .../3.api/3.utils/update-app-config.md | 2 +- .../{ => 1.docs}/3.api/4.advanced/1.hooks.md | 0 .../{ => 1.docs}/3.api/4.advanced/2.kit.md | 0 .../{ => 1.docs}/3.api/4.advanced/_dir.yml | 0 .../{ => 1.docs}/3.api/5.commands/_dir.yml | 0 .../{ => 1.docs}/3.api/5.commands/add.md | 0 .../{ => 1.docs}/3.api/5.commands/analyze.md | 0 .../3.api/5.commands/build-module.md | 0 .../{ => 1.docs}/3.api/5.commands/build.md | 0 .../{ => 1.docs}/3.api/5.commands/cleanup.md | 0 .../{ => 1.docs}/3.api/5.commands/dev.md | 0 .../{ => 1.docs}/3.api/5.commands/generate.md | 0 .../{ => 1.docs}/3.api/5.commands/info.md | 0 .../{ => 1.docs}/3.api/5.commands/init.md | 0 .../{ => 1.docs}/3.api/5.commands/prepare.md | 0 .../{ => 1.docs}/3.api/5.commands/preview.md | 0 .../3.api/5.commands/typecheck.md | 2 +- .../{ => 1.docs}/3.api/5.commands/upgrade.md | 0 .../3.api/6.configuration/_dir.yml | 0 docs/content/{ => 1.docs}/3.api/_dir.yml | 0 docs/content/{ => 1.docs}/3.api/index.md | 0 .../4.examples/0.essentials/hello-world.md | 2 +- .../4.examples/1.app/app-config.md | 0 .../4.examples/1.app/error-handling.md | 2 +- .../{ => 1.docs}/4.examples/1.app/plugins.md | 0 .../{ => 1.docs}/4.examples/1.app/teleport.md | 2 +- .../4.examples/2.auto-imports/components.md | 0 .../4.examples/2.auto-imports/composables.md | 0 .../3.composables/use-async-data.md | 4 +- .../4.examples/3.composables/use-cookie.md | 2 +- .../4.examples/3.composables/use-fetch.md | 4 +- .../4.examples/3.composables/use-head.md | 4 +- .../4.examples/3.composables/use-state.md | 6 +- .../4.examples/4.routing/layouts.md | 0 .../4.examples/4.routing/middleware.md | 0 .../4.examples/4.routing/nuxt-link.md | 2 +- .../4.examples/4.routing/pages.md | 0 .../4.examples/4.routing/universal-router.md | 0 .../4.examples/5.server/routes.md | 0 .../4.examples/6.advanced/config-extends.md | 0 .../{ => 1.docs}/4.examples/6.advanced/jsx.md | 0 .../6.advanced/module-extend-pages.md | 0 .../4.examples/6.advanced/testing.md | 2 +- .../7.experimental/reactivity-transform.md | 0 .../4.examples/7.experimental/wasm.md | 0 .../{ => 1.docs}/4.examples/8.other/locale.md | 0 docs/content/{ => 1.docs}/4.examples/index.md | 0 .../5.community/1.getting-help.md | 2 +- .../5.community/2.reporting-bugs.md | 2 +- .../5.community/3.contribution.md | 12 +- .../5.community/4.framework-contribution.md | 4 +- .../{ => 1.docs}/5.community/5.roadmap.md | 2 +- .../{ => 1.docs}/5.community/6.changelog.md | 0 .../content/{ => 1.docs}/5.community/index.md | 0 .../{ => 1.docs}/6.bridge/1.overview.md | 12 +- .../6.bridge/2.bridge-composition-api.md | 8 +- docs/content/{ => 1.docs}/6.bridge/_dir.yml | 0 docs/content/{ => 1.docs}/6.bridge/index.md | 0 .../{ => 1.docs}/7.migration/1.overview.md | 0 .../{ => 1.docs}/7.migration/10.bundling.md | 2 +- .../{ => 1.docs}/7.migration/11.server.md | 2 +- .../7.migration/2.configuration.md | 8 +- .../7.migration/20.module-authors.md | 12 +- .../7.migration/3.auto-imports.md | 4 +- .../{ => 1.docs}/7.migration/4.meta.md | 6 +- .../7.migration/5.plugins-and-middleware.md | 6 +- .../7.migration/6.pages-and-layouts.md | 14 +- .../7.migration/7.component-options.md | 8 +- .../7.migration/8.runtime-config.md | 2 +- .../content/{ => 1.docs}/7.migration/_dir.yml | 0 .../content/{ => 1.docs}/7.migration/index.md | 0 docs/content/1.docs/_dir.yml | 1 + docs/content/2.modules.md | 15 + docs/content/3.showcase.md | 14 + docs/content/4.support/1.solutions.md | 85 + docs/content/4.support/2.agencies/1.index.md | 24 + .../4.support/2.agencies/2.ship-shape.md | 26 + .../4.support/2.agencies/3.64robots.md | 26 + .../2.agencies/4.passionate-people.md | 29 + .../content/4.support/2.agencies/5.curotec.md | 37 + docs/content/4.support/2.agencies/6.mirahi.md | 33 + .../4.support/2.agencies/7.webreinvent.md | 38 + .../4.support/2.agencies/8.software-things.md | 40 + .../4.support/2.agencies/9.zen-architects.md | 28 + docs/content/4.support/3.us.md | 10 + docs/content/4.support/4.jobs.md | 10 + docs/content/4.support/_dir.yml | 1 + docs/content/_collections/header.md | 18 - docs/content/design-kit.md | 202 + docs/content/index.md | 123 - docs/nuxt.config.ts | 26 +- docs/package.json | 8 +- docs/public/.gitignore | 1 - docs/public/3D/gem.gltf | 233 - docs/public/3D/roughness.webp | Bin 82346 -> 0 bytes docs/public/_redirects | 78 - docs/public/android-chrome-192x192.png | Bin 11176 -> 0 bytes docs/public/android-chrome-512x512.png | Bin 48904 -> 0 bytes docs/public/apple-touch-icon.png | Bin 10325 -> 0 bytes docs/public/assets/brands/adobe.svg | 17 + docs/public/assets/brands/awwwards.svg | 18 + docs/public/assets/brands/backmarket.svg | 3 + docs/public/assets/brands/gitlab.svg | 23 + docs/public/assets/brands/nasa.svg | 12 + docs/public/assets/brands/nintendo.svg | 21 + docs/public/assets/brands/tiktok.svg | 25 + docs/public/assets/brands/unilever.svg | 3 + .../assets/design-kit/hero-designkit-dark.svg | 90 + .../design-kit/hero-designkit-dark.webp | Bin 0 -> 29430 bytes .../design-kit/hero-designkit-light.svg | 90 + .../design-kit/hero-designkit-light.webp | Bin 0 -> 60734 bytes docs/public/assets/design-kit/hero.png | Bin 0 -> 232786 bytes .../design-kit/logo/full-logo-black.png | Bin 0 -> 1825 bytes .../design-kit/logo/full-logo-black.svg | 14 + .../design-kit/logo/full-logo-green-dark.png | Bin 0 -> 1960 bytes .../design-kit/logo/full-logo-green-dark.svg | 14 + .../design-kit/logo/full-logo-green-light.png | Bin 0 -> 1760 bytes .../design-kit/logo/full-logo-green-light.svg | 14 + .../design-kit/logo/full-logo-white.png | Bin 0 -> 1459 bytes .../design-kit/logo/full-logo-white.svg | 14 + .../assets/design-kit/logo/icon-black.png | Bin 0 -> 1244 bytes .../assets/design-kit/logo/icon-black.svg | 3 + .../assets/design-kit/logo/icon-green.png | Bin 0 -> 1139 bytes .../assets/design-kit/logo/icon-green.svg | 3 + .../assets/design-kit/logo/icon-white.png | Bin 0 -> 789 bytes .../assets/design-kit/logo/icon-white.svg | 3 + docs/public/assets/design-kit/nuxt-assets.zip | Bin 0 -> 122859 bytes .../docs}/concepts/rendering/dark/csr.svg | 0 .../docs}/concepts/rendering/dark/ssr.svg | 0 .../docs}/concepts/rendering/light/csr.svg | 0 .../docs}/concepts/rendering/light/ssr.svg | 0 .../docs}/getting-started/views/app.svg | 0 .../getting-started/views/components.svg | 0 .../docs}/getting-started/views/layouts.svg | 0 .../docs}/getting-started/views/pages.svg | 0 docs/public/assets/home/addy.png | Bin 0 -> 5854 bytes docs/public/assets/home/card.svg | 98 + .../public/assets/home/dx-batteries-light.svg | 51 + docs/public/assets/home/dx-batteries.svg | 57 + .../assets/home/dx-effortless-light.svg | 69 + docs/public/assets/home/dx-effortless.svg | 69 + .../assets/home/dx-plug-and-play-light.svg | 134 + docs/public/assets/home/dx-plug-and-play.svg | 122 + docs/public/assets/home/environment_D.hdr | 509 +++ docs/public/assets/home/environment_L.hdr | Bin 0 -> 346333 bytes docs/public/assets/home/evan.png | Bin 0 -> 6708 bytes docs/public/assets/home/gem.glb | Bin 0 -> 600008 bytes docs/public/assets/home/github-card.svg | 4 + docs/public/assets/home/gradient-cta.svg | 81 + .../assets/home/hero-gradient-mobile.svg | 64 + .../assets/home/hero-gradient-tablet.svg | 84 + docs/public/assets/home/hero-gradient.svg | 84 + .../assets/home/home-journey-gradient.svg | 54 + .../home/needs-community-support-light.svg | 32 + .../assets/home/needs-community-support.svg | 14 + .../assets/home/needs-nuxt-expert-light.svg | 31 + docs/public/assets/home/needs-nuxt-expert.svg | 14 + .../home/needs-official-agency-light.svg | 31 + .../assets/home/needs-official-agency.svg | 15 + docs/public/assets/home/network.svg | 14 + docs/public/assets/home/place-holder.png | Bin 0 -> 152757 bytes docs/public/assets/home/projects-image.png | Bin 0 -> 55645 bytes docs/public/assets/home/sarah.png | Bin 0 -> 6389 bytes docs/public/assets/home/templates.svg | 47 + docs/public/assets/home/ux-fast-light.svg | 50 + docs/public/assets/home/ux-fast.png | Bin 0 -> 54596 bytes docs/public/assets/home/ux-fast.svg | 50 + docs/public/assets/home/ux-hybrid-light.svg | 124 + docs/public/assets/home/ux-hybrid.svg | 51 + docs/public/assets/home/ux-seo-light.svg | 47 + docs/public/assets/home/ux-seo.svg | 46 + docs/public/assets/modules/gems.svg | 46 + docs/public/assets/modules/hero-dark.svg | 89 + docs/public/assets/modules/hero-dark.webp | Bin 0 -> 28602 bytes docs/public/assets/modules/hero-light.svg | 89 + docs/public/assets/modules/hero-light.webp | Bin 0 -> 54872 bytes docs/public/assets/showcase/hero-dark.svg | 89 + docs/public/assets/showcase/hero-dark.webp | Bin 0 -> 32148 bytes docs/public/assets/showcase/hero-light.svg | 89 + docs/public/assets/showcase/hero-light.webp | Bin 0 -> 53716 bytes .../support/agencies/full/dark/64robots.png | Bin 0 -> 11734 bytes .../support/agencies/full/dark/curotec.png | Bin 0 -> 11910 bytes .../support/agencies/full/dark/layer0.svg | 1 + .../support/agencies/full/dark/mirahi.png | Bin 0 -> 268479 bytes .../support/agencies/full/dark/netlify.svg | 12 + .../agencies/full/dark/passionate-people.webp | Bin 0 -> 12394 bytes .../support/agencies/full/dark/shipshape.png | Bin 0 -> 2889 bytes .../agencies/full/dark/software-things.svg | 18 + .../support/agencies/full/dark/storyblok.svg | 1 + .../support/agencies/full/dark/strapi.svg | 21 + .../support/agencies/full/dark/supabase.svg | 23 + .../support/agencies/full/dark/swell.svg | 3 + .../support/agencies/full/dark/vercel.png | Bin 0 -> 174116 bytes .../agencies/full/dark/vue-storefront.svg | 17 + .../agencies/full/dark/webreinvent.svg | 175 + .../agencies/full/dark/zen-architects.png | Bin 0 -> 21948 bytes .../support/agencies/full/light/64robots.png | Bin 0 -> 12802 bytes .../support/agencies/full/light/curotec.png | Bin 0 -> 11910 bytes .../support/agencies/full/light/layer0.svg | 1 + .../support/agencies/full/light/mirahi.png | Bin 0 -> 268479 bytes .../support/agencies/full/light/netlify.svg | 10 + .../full/light/passionate-people.webp | Bin 0 -> 12394 bytes .../support/agencies/full/light/shipshape.png | Bin 0 -> 3919 bytes .../agencies/full/light/software-things.svg | 18 + .../support/agencies/full/light/storyblok.svg | 1 + .../support/agencies/full/light/strapi.svg | 21 + .../support/agencies/full/light/supabase.svg | 23 + .../support/agencies/full/light/swell.svg | 3 + .../support/agencies/full/light/vercel.png | Bin 0 -> 161541 bytes .../agencies/full/light/vue-storefront.svg | 17 + .../agencies/full/light/webreinvent.svg | 175 + .../agencies/full/light/zen-architects.png | Bin 0 -> 21948 bytes docs/public/assets/support/agencies/gems.svg | 46 + .../assets/support/agencies/gradient.webp | Bin 0 -> 176220 bytes .../assets/support/agencies/hero-dark.svg | 89 + .../assets/support/agencies/hero-dark.webp | Bin 0 -> 24640 bytes .../assets/support/agencies/hero-light.svg | 89 + .../support/agencies/square/dark/64robots.svg | 12 + .../support/agencies/square/dark/curotec.jpeg | Bin 0 -> 49342 bytes .../support/agencies/square/dark/layer0.svg | 10 + .../support/agencies/square/dark/mirahi.svg | 49 + .../support/agencies/square/dark/netlify.svg | 9 + .../square/dark/passionate-people.jpeg | Bin 0 -> 18937 bytes .../agencies/square/dark/shipshape.webp | Bin 0 -> 2988 bytes .../agencies/square/dark/software-things.svg | 79 + .../agencies/square/dark/storyblok.svg | 12 + .../support/agencies/square/dark/strapi.svg | 18 + .../support/agencies/square/dark/supabase.svg | 15 + .../support/agencies/square/dark/swell.svg | 15 + .../support/agencies/square/dark/vercel.svg | 3 + .../agencies/square/dark/vue-storefront.svg | 4 + .../agencies/square/dark/webreinvent.svg | 19 + .../agencies/square/dark/zen-architects.svg | 6 + .../agencies/square/light/64robots.svg | 12 + .../agencies/square/light/curotec.jpeg | Bin 0 -> 49342 bytes .../support/agencies/square/light/layer0.svg | 10 + .../support/agencies/square/light/mirahi.svg | 49 + .../support/agencies/square/light/netlify.svg | 9 + .../square/light/passionate-people.jpeg | Bin 0 -> 18937 bytes .../agencies/square/light/shipshape.webp | Bin 0 -> 2988 bytes .../agencies/square/light/software-things.svg | 1 + .../agencies/square/light/storyblok.svg | 12 + .../support/agencies/square/light/strapi.svg | 18 + .../agencies/square/light/supabase.svg | 15 + .../support/agencies/square/light/swell.svg | 15 + .../support/agencies/square/light/vercel.svg | 3 + .../agencies/square/light/vue-storefront.svg | 4 + .../agencies/square/light/webreinvent.svg | 19 + .../agencies/square/light/zen-architects.svg | 1 + docs/public/assets/support/jobs/gradient.svg | 81 + docs/public/assets/support/jobs/hero-dark.svg | 89 + .../public/assets/support/jobs/hero-dark.webp | Bin 0 -> 29918 bytes .../public/assets/support/jobs/hero-light.svg | 89 + .../assets/support/jobs/hero-light.webp | Bin 0 -> 60030 bytes .../support/solutions/agency-light.webp | Bin 0 -> 4406 bytes .../assets/support/solutions/agency.webp | Bin 0 -> 2908 bytes .../support/solutions/community-light.webp | Bin 0 -> 4424 bytes .../assets/support/solutions/community.webp | Bin 0 -> 2666 bytes .../solutions/discord-server-light.svg | 4 + .../support/solutions/discord-server.svg | 4 + docs/public/assets/support/solutions/evan.png | Bin 0 -> 19497 bytes .../support/solutions/experts-light.webp | Bin 0 -> 4402 bytes .../assets/support/solutions/experts.webp | Bin 0 -> 2592 bytes docs/public/assets/support/solutions/gems.svg | 16 + .../solutions/github-discussion-light.svg | 4 + .../support/solutions/github-discussion.svg | 4 + .../assets/support/solutions/gradient.svg | 81 + .../assets/support/solutions/hero-dark.webp | Bin 0 -> 29804 bytes .../assets/support/solutions/hero-light.webp | Bin 0 -> 58790 bytes .../solutions/other-platform-light.svg | 4 + .../support/solutions/other-platform.svg | 4 + .../public/assets/support/solutions/quote.svg | 3 + .../assets/support/sponsors/hero-dark.svg | 89 + .../assets/support/sponsors/hero-dark.webp | Bin 0 -> 28122 bytes .../assets/support/sponsors/hero-light.svg | 89 + .../assets/support/sponsors/hero-light.webp | Bin 0 -> 54098 bytes docs/public/assets/toc/jobs-light.svg | 9 + docs/public/assets/toc/jobs.svg | 9 + .../assets/toc/mastering-nuxt-light.svg | 24 + docs/public/assets/toc/mastering-nuxt.svg | 24 + docs/public/favicon-16x16.png | Bin 594 -> 0 bytes docs/public/favicon-32x32.png | Bin 1273 -> 0 bytes docs/public/favicon.ico | Bin 15406 -> 0 bytes docs/public/fonts/RoobertPRO-Bold.woff | Bin 0 -> 57488 bytes docs/public/fonts/RoobertPRO-Bold.woff2 | Bin 0 -> 46572 bytes docs/public/fonts/RoobertPRO-BoldItalic.woff | Bin 0 -> 56304 bytes docs/public/fonts/RoobertPRO-BoldItalic.woff2 | Bin 0 -> 50816 bytes docs/public/fonts/RoobertPRO-Heavy.woff | Bin 0 -> 55788 bytes docs/public/fonts/RoobertPRO-Heavy.woff2 | Bin 0 -> 45252 bytes docs/public/fonts/RoobertPRO-HeavyItalic.woff | Bin 0 -> 53080 bytes .../public/fonts/RoobertPRO-HeavyItalic.woff2 | Bin 0 -> 48316 bytes docs/public/fonts/RoobertPRO-Light.woff | Bin 0 -> 54248 bytes docs/public/fonts/RoobertPRO-Light.woff2 | Bin 0 -> 43468 bytes docs/public/fonts/RoobertPRO-LightItalic.woff | Bin 0 -> 51144 bytes .../public/fonts/RoobertPRO-LightItalic.woff2 | Bin 0 -> 46828 bytes docs/public/fonts/RoobertPRO-Medium.woff | Bin 0 -> 56924 bytes docs/public/fonts/RoobertPRO-Medium.woff2 | Bin 0 -> 45932 bytes .../public/fonts/RoobertPRO-MediumItalic.woff | Bin 0 -> 54948 bytes .../fonts/RoobertPRO-MediumItalic.woff2 | Bin 0 -> 50028 bytes docs/public/fonts/RoobertPRO-Regular.woff | Bin 0 -> 57040 bytes docs/public/fonts/RoobertPRO-Regular.woff2 | Bin 0 -> 46080 bytes .../fonts/RoobertPRO-RegularItalic.woff | Bin 0 -> 55312 bytes .../fonts/RoobertPRO-RegularItalic.woff2 | Bin 0 -> 50432 bytes docs/public/fonts/RoobertPRO-SemiBold.woff | Bin 0 -> 57436 bytes docs/public/fonts/RoobertPRO-SemiBold.woff2 | Bin 0 -> 46436 bytes .../fonts/RoobertPRO-SemiBoldItalic.woff | Bin 0 -> 56016 bytes .../fonts/RoobertPRO-SemiBoldItalic.woff2 | Bin 0 -> 50500 bytes docs/public/icon.png | Bin 1743 -> 1250 bytes docs/public/logo.svg | 3 + docs/public/site.webmanifest | 1 - docs/public/social.png | Bin 0 -> 411899 bytes docs/scripts/gen-docs.ts | 2 +- docs/yarn.lock | 4044 +++++++++++++---- package.json | 4 +- 424 files changed, 8937 insertions(+), 1720 deletions(-) create mode 100644 docs/content/0.index.md rename docs/content/{ => 1.docs}/1.getting-started/1.introduction.md (88%) rename docs/content/{ => 1.docs}/1.getting-started/10.deployment.md (92%) rename docs/content/{ => 1.docs}/1.getting-started/10.upgrade-guide/_dir.yml (100%) rename docs/content/{ => 1.docs}/1.getting-started/11.upgrade.md (91%) rename docs/content/{ => 1.docs}/1.getting-started/2.installation.md (97%) rename docs/content/{ => 1.docs}/1.getting-started/3.configuration.md (92%) rename docs/content/{ => 1.docs}/1.getting-started/3.views.md (81%) rename docs/content/{ => 1.docs}/1.getting-started/4.assets.md (75%) rename docs/content/{ => 1.docs}/1.getting-started/5.routing.md (94%) rename docs/content/{ => 1.docs}/1.getting-started/5.seo-meta.md (95%) rename docs/content/{ => 1.docs}/1.getting-started/5.transitions.md (94%) rename docs/content/{ => 1.docs}/1.getting-started/6.data-fetching.md (93%) rename docs/content/{ => 1.docs}/1.getting-started/7.state-management.md (85%) rename docs/content/{ => 1.docs}/1.getting-started/8.error-handling.md (96%) rename docs/content/{ => 1.docs}/1.getting-started/9.testing.md (95%) rename docs/content/{ => 1.docs}/1.getting-started/_dir.yml (100%) rename docs/content/{ => 1.docs}/2.guide/1.concepts/1.auto-imports.md (77%) rename docs/content/{ => 1.docs}/2.guide/1.concepts/2.vuejs-development.md (89%) rename docs/content/{ => 1.docs}/2.guide/1.concepts/3.rendering.md (91%) rename docs/content/{ => 1.docs}/2.guide/1.concepts/4.server-engine.md (87%) rename docs/content/{ => 1.docs}/2.guide/1.concepts/5.modules.md (91%) rename docs/content/{ => 1.docs}/2.guide/1.concepts/7.esm.md (99%) rename docs/content/{ => 1.docs}/2.guide/1.concepts/8.typescript.md (81%) rename docs/content/{ => 1.docs}/2.guide/1.concepts/_dir.yml (100%) rename docs/content/{ => 1.docs}/2.guide/1.concepts/index.md (100%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/0.nuxt.md (100%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/0.output.md (88%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/1.assets.md (68%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/1.components.md (99%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/1.composables.md (92%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/1.content.md (92%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/1.layouts.md (94%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/1.middleware.md (95%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/1.node_modules.md (100%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/1.pages.md (94%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/1.plugins.md (95%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/1.public.md (100%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/1.server.md (100%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/1.utils.md (71%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/2.gitignore.md (100%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/2.nuxtignore.md (78%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/3.app.config.md (91%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/3.app.md (63%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/3.nuxt.config.md (93%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/3.package.md (100%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/3.tsconfig.md (70%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/_dir.yml (100%) rename docs/content/{ => 1.docs}/2.guide/2.directory-structure/index.md (100%) rename docs/content/{ => 1.docs}/2.guide/3.deploy/_dir.yml (100%) rename docs/content/{ => 1.docs}/2.guide/3.deploy/providers/_dir.yml (100%) rename docs/content/{ => 1.docs}/2.guide/4.going-further/1.internals.md (79%) rename docs/content/{ => 1.docs}/2.guide/4.going-further/10.runtime-config.md (98%) rename docs/content/{ => 1.docs}/2.guide/4.going-further/11.edge-channel.md (96%) rename docs/content/{ => 1.docs}/2.guide/4.going-further/2.hooks.md (76%) rename docs/content/{ => 1.docs}/2.guide/4.going-further/3.modules.md (93%) rename docs/content/{ => 1.docs}/2.guide/4.going-further/4.kit.md (68%) rename docs/content/{ => 1.docs}/2.guide/4.going-further/6.nuxt-app.md (87%) rename docs/content/{ => 1.docs}/2.guide/4.going-further/_dir.yml (100%) rename docs/content/{ => 1.docs}/2.guide/4.going-further/index.md (100%) rename docs/content/{ => 1.docs}/2.guide/index.md (100%) rename docs/content/{ => 1.docs}/3.api/1.composables/_dir.yml (100%) rename docs/content/{ => 1.docs}/3.api/1.composables/on-before-route-leave.md (100%) rename docs/content/{ => 1.docs}/3.api/1.composables/on-before-route-update.md (100%) rename docs/content/{ => 1.docs}/3.api/1.composables/use-app-config.md (60%) rename docs/content/{ => 1.docs}/3.api/1.composables/use-async-data.md (98%) rename docs/content/{ => 1.docs}/3.api/1.composables/use-cookie.md (99%) rename docs/content/{ => 1.docs}/3.api/1.composables/use-error.md (81%) rename docs/content/{ => 1.docs}/3.api/1.composables/use-fetch.md (95%) rename docs/content/{ => 1.docs}/3.api/1.composables/use-head.md (98%) rename docs/content/{ => 1.docs}/3.api/1.composables/use-hydration.md (95%) rename docs/content/{ => 1.docs}/3.api/1.composables/use-lazy-async-data.md (77%) rename docs/content/{ => 1.docs}/3.api/1.composables/use-lazy-fetch.md (79%) rename docs/content/{ => 1.docs}/3.api/1.composables/use-nuxt-app.md (96%) rename docs/content/{ => 1.docs}/3.api/1.composables/use-request-event.md (100%) rename docs/content/{ => 1.docs}/3.api/1.composables/use-request-headers.md (84%) rename docs/content/{ => 1.docs}/3.api/1.composables/use-route.md (100%) rename docs/content/{ => 1.docs}/3.api/1.composables/use-router.md (100%) rename docs/content/{ => 1.docs}/3.api/1.composables/use-runtime-config.md (100%) rename docs/content/{ => 1.docs}/3.api/1.composables/use-state.md (93%) rename docs/content/{ => 1.docs}/3.api/2.components/1.client-only.md (100%) rename docs/content/{ => 1.docs}/3.api/2.components/2.nuxt-page.md (100%) rename docs/content/{ => 1.docs}/3.api/2.components/3.nuxt-layout.md (100%) rename docs/content/{ => 1.docs}/3.api/2.components/4.nuxt-link.md (99%) rename docs/content/{ => 1.docs}/3.api/2.components/5.nuxt-loading-indicator.md (100%) rename docs/content/{ => 1.docs}/3.api/2.components/6.nuxt-error-boundary.md (94%) rename docs/content/{ => 1.docs}/3.api/2.components/7.nuxt-welcome.md (100%) rename docs/content/{ => 1.docs}/3.api/2.components/8.teleports.md (95%) rename docs/content/{ => 1.docs}/3.api/2.components/_dir.yml (100%) rename docs/content/{ => 1.docs}/3.api/2.components/index.md (100%) rename docs/content/{ => 1.docs}/3.api/3.utils/$fetch.md (73%) rename docs/content/{ => 1.docs}/3.api/3.utils/_dir.yml (100%) rename docs/content/{ => 1.docs}/3.api/3.utils/abort-navigation.md (96%) rename docs/content/{ => 1.docs}/3.api/3.utils/add-route-middleware.md (90%) rename docs/content/{ => 1.docs}/3.api/3.utils/clear-error.md (66%) rename docs/content/{ => 1.docs}/3.api/3.utils/clear-nuxt-data.md (100%) rename docs/content/{ => 1.docs}/3.api/3.utils/create-error.md (95%) rename docs/content/{ => 1.docs}/3.api/3.utils/define-nuxt-component.md (100%) rename docs/content/{ => 1.docs}/3.api/3.utils/define-nuxt-route-middleware.md (85%) rename docs/content/{ => 1.docs}/3.api/3.utils/define-page-meta.md (96%) rename docs/content/{ => 1.docs}/3.api/3.utils/index.md (100%) rename docs/content/{ => 1.docs}/3.api/3.utils/navigate-to.md (100%) rename docs/content/{ => 1.docs}/3.api/3.utils/prefetch-components.md (89%) rename docs/content/{ => 1.docs}/3.api/3.utils/preload-components.md (100%) rename docs/content/{ => 1.docs}/3.api/3.utils/refresh-nuxt-data.md (96%) rename docs/content/{ => 1.docs}/3.api/3.utils/set-layout.md (100%) rename docs/content/{ => 1.docs}/3.api/3.utils/set-response-status.md (100%) rename docs/content/{ => 1.docs}/3.api/3.utils/show-error.md (68%) rename docs/content/{ => 1.docs}/3.api/3.utils/update-app-config.md (66%) rename docs/content/{ => 1.docs}/3.api/4.advanced/1.hooks.md (100%) rename docs/content/{ => 1.docs}/3.api/4.advanced/2.kit.md (100%) rename docs/content/{ => 1.docs}/3.api/4.advanced/_dir.yml (100%) rename docs/content/{ => 1.docs}/3.api/5.commands/_dir.yml (100%) rename docs/content/{ => 1.docs}/3.api/5.commands/add.md (100%) rename docs/content/{ => 1.docs}/3.api/5.commands/analyze.md (100%) rename docs/content/{ => 1.docs}/3.api/5.commands/build-module.md (100%) rename docs/content/{ => 1.docs}/3.api/5.commands/build.md (100%) rename docs/content/{ => 1.docs}/3.api/5.commands/cleanup.md (100%) rename docs/content/{ => 1.docs}/3.api/5.commands/dev.md (100%) rename docs/content/{ => 1.docs}/3.api/5.commands/generate.md (100%) rename docs/content/{ => 1.docs}/3.api/5.commands/info.md (100%) rename docs/content/{ => 1.docs}/3.api/5.commands/init.md (100%) rename docs/content/{ => 1.docs}/3.api/5.commands/prepare.md (100%) rename docs/content/{ => 1.docs}/3.api/5.commands/preview.md (100%) rename docs/content/{ => 1.docs}/3.api/5.commands/typecheck.md (93%) rename docs/content/{ => 1.docs}/3.api/5.commands/upgrade.md (100%) rename docs/content/{ => 1.docs}/3.api/6.configuration/_dir.yml (100%) rename docs/content/{ => 1.docs}/3.api/_dir.yml (100%) rename docs/content/{ => 1.docs}/3.api/index.md (100%) rename docs/content/{ => 1.docs}/4.examples/0.essentials/hello-world.md (80%) rename docs/content/{ => 1.docs}/4.examples/1.app/app-config.md (100%) rename docs/content/{ => 1.docs}/4.examples/1.app/error-handling.md (81%) rename docs/content/{ => 1.docs}/4.examples/1.app/plugins.md (100%) rename docs/content/{ => 1.docs}/4.examples/1.app/teleport.md (90%) rename docs/content/{ => 1.docs}/4.examples/2.auto-imports/components.md (100%) rename docs/content/{ => 1.docs}/4.examples/2.auto-imports/composables.md (100%) rename docs/content/{ => 1.docs}/4.examples/3.composables/use-async-data.md (76%) rename docs/content/{ => 1.docs}/4.examples/3.composables/use-cookie.md (83%) rename docs/content/{ => 1.docs}/4.examples/3.composables/use-fetch.md (76%) rename docs/content/{ => 1.docs}/4.examples/3.composables/use-head.md (71%) rename docs/content/{ => 1.docs}/4.examples/3.composables/use-state.md (68%) rename docs/content/{ => 1.docs}/4.examples/4.routing/layouts.md (100%) rename docs/content/{ => 1.docs}/4.examples/4.routing/middleware.md (100%) rename docs/content/{ => 1.docs}/4.examples/4.routing/nuxt-link.md (86%) rename docs/content/{ => 1.docs}/4.examples/4.routing/pages.md (100%) rename docs/content/{ => 1.docs}/4.examples/4.routing/universal-router.md (100%) rename docs/content/{ => 1.docs}/4.examples/5.server/routes.md (100%) rename docs/content/{ => 1.docs}/4.examples/6.advanced/config-extends.md (100%) rename docs/content/{ => 1.docs}/4.examples/6.advanced/jsx.md (100%) rename docs/content/{ => 1.docs}/4.examples/6.advanced/module-extend-pages.md (100%) rename docs/content/{ => 1.docs}/4.examples/6.advanced/testing.md (80%) rename docs/content/{ => 1.docs}/4.examples/7.experimental/reactivity-transform.md (100%) rename docs/content/{ => 1.docs}/4.examples/7.experimental/wasm.md (100%) rename docs/content/{ => 1.docs}/4.examples/8.other/locale.md (100%) rename docs/content/{ => 1.docs}/4.examples/index.md (100%) rename docs/content/{ => 1.docs}/5.community/1.getting-help.md (93%) rename docs/content/{ => 1.docs}/5.community/2.reporting-bugs.md (97%) rename docs/content/{ => 1.docs}/5.community/3.contribution.md (95%) rename docs/content/{ => 1.docs}/5.community/4.framework-contribution.md (94%) rename docs/content/{ => 1.docs}/5.community/5.roadmap.md (98%) rename docs/content/{ => 1.docs}/5.community/6.changelog.md (100%) rename docs/content/{ => 1.docs}/5.community/index.md (100%) rename docs/content/{ => 1.docs}/6.bridge/1.overview.md (93%) rename docs/content/{ => 1.docs}/6.bridge/2.bridge-composition-api.md (95%) rename docs/content/{ => 1.docs}/6.bridge/_dir.yml (100%) rename docs/content/{ => 1.docs}/6.bridge/index.md (100%) rename docs/content/{ => 1.docs}/7.migration/1.overview.md (100%) rename docs/content/{ => 1.docs}/7.migration/10.bundling.md (96%) rename docs/content/{ => 1.docs}/7.migration/11.server.md (90%) rename docs/content/{ => 1.docs}/7.migration/2.configuration.md (87%) rename docs/content/{ => 1.docs}/7.migration/20.module-authors.md (78%) rename docs/content/{ => 1.docs}/7.migration/3.auto-imports.md (82%) rename docs/content/{ => 1.docs}/7.migration/4.meta.md (92%) rename docs/content/{ => 1.docs}/7.migration/5.plugins-and-middleware.md (90%) rename docs/content/{ => 1.docs}/7.migration/6.pages-and-layouts.md (91%) rename docs/content/{ => 1.docs}/7.migration/7.component-options.md (87%) rename docs/content/{ => 1.docs}/7.migration/8.runtime-config.md (95%) rename docs/content/{ => 1.docs}/7.migration/_dir.yml (100%) rename docs/content/{ => 1.docs}/7.migration/index.md (100%) create mode 100644 docs/content/1.docs/_dir.yml create mode 100644 docs/content/2.modules.md create mode 100644 docs/content/3.showcase.md create mode 100644 docs/content/4.support/1.solutions.md create mode 100644 docs/content/4.support/2.agencies/1.index.md create mode 100644 docs/content/4.support/2.agencies/2.ship-shape.md create mode 100644 docs/content/4.support/2.agencies/3.64robots.md create mode 100644 docs/content/4.support/2.agencies/4.passionate-people.md create mode 100644 docs/content/4.support/2.agencies/5.curotec.md create mode 100644 docs/content/4.support/2.agencies/6.mirahi.md create mode 100644 docs/content/4.support/2.agencies/7.webreinvent.md create mode 100644 docs/content/4.support/2.agencies/8.software-things.md create mode 100644 docs/content/4.support/2.agencies/9.zen-architects.md create mode 100644 docs/content/4.support/3.us.md create mode 100644 docs/content/4.support/4.jobs.md create mode 100644 docs/content/4.support/_dir.yml delete mode 100644 docs/content/_collections/header.md create mode 100644 docs/content/design-kit.md delete mode 100644 docs/content/index.md delete mode 100644 docs/public/.gitignore delete mode 100644 docs/public/3D/gem.gltf delete mode 100644 docs/public/3D/roughness.webp delete mode 100644 docs/public/_redirects delete mode 100644 docs/public/android-chrome-192x192.png delete mode 100644 docs/public/android-chrome-512x512.png delete mode 100644 docs/public/apple-touch-icon.png create mode 100644 docs/public/assets/brands/adobe.svg create mode 100644 docs/public/assets/brands/awwwards.svg create mode 100644 docs/public/assets/brands/backmarket.svg create mode 100644 docs/public/assets/brands/gitlab.svg create mode 100644 docs/public/assets/brands/nasa.svg create mode 100644 docs/public/assets/brands/nintendo.svg create mode 100644 docs/public/assets/brands/tiktok.svg create mode 100644 docs/public/assets/brands/unilever.svg create mode 100644 docs/public/assets/design-kit/hero-designkit-dark.svg create mode 100644 docs/public/assets/design-kit/hero-designkit-dark.webp create mode 100644 docs/public/assets/design-kit/hero-designkit-light.svg create mode 100644 docs/public/assets/design-kit/hero-designkit-light.webp create mode 100644 docs/public/assets/design-kit/hero.png create mode 100644 docs/public/assets/design-kit/logo/full-logo-black.png create mode 100644 docs/public/assets/design-kit/logo/full-logo-black.svg create mode 100644 docs/public/assets/design-kit/logo/full-logo-green-dark.png create mode 100644 docs/public/assets/design-kit/logo/full-logo-green-dark.svg create mode 100644 docs/public/assets/design-kit/logo/full-logo-green-light.png create mode 100644 docs/public/assets/design-kit/logo/full-logo-green-light.svg create mode 100644 docs/public/assets/design-kit/logo/full-logo-white.png create mode 100644 docs/public/assets/design-kit/logo/full-logo-white.svg create mode 100644 docs/public/assets/design-kit/logo/icon-black.png create mode 100644 docs/public/assets/design-kit/logo/icon-black.svg create mode 100644 docs/public/assets/design-kit/logo/icon-green.png create mode 100644 docs/public/assets/design-kit/logo/icon-green.svg create mode 100644 docs/public/assets/design-kit/logo/icon-white.png create mode 100644 docs/public/assets/design-kit/logo/icon-white.svg create mode 100644 docs/public/assets/design-kit/nuxt-assets.zip rename docs/public/{img => assets/docs}/concepts/rendering/dark/csr.svg (100%) rename docs/public/{img => assets/docs}/concepts/rendering/dark/ssr.svg (100%) rename docs/public/{img => assets/docs}/concepts/rendering/light/csr.svg (100%) rename docs/public/{img => assets/docs}/concepts/rendering/light/ssr.svg (100%) rename docs/public/{img => assets/docs}/getting-started/views/app.svg (100%) rename docs/public/{img => assets/docs}/getting-started/views/components.svg (100%) rename docs/public/{img => assets/docs}/getting-started/views/layouts.svg (100%) rename docs/public/{img => assets/docs}/getting-started/views/pages.svg (100%) create mode 100644 docs/public/assets/home/addy.png create mode 100644 docs/public/assets/home/card.svg create mode 100644 docs/public/assets/home/dx-batteries-light.svg create mode 100644 docs/public/assets/home/dx-batteries.svg create mode 100644 docs/public/assets/home/dx-effortless-light.svg create mode 100644 docs/public/assets/home/dx-effortless.svg create mode 100644 docs/public/assets/home/dx-plug-and-play-light.svg create mode 100644 docs/public/assets/home/dx-plug-and-play.svg create mode 100644 docs/public/assets/home/environment_D.hdr create mode 100644 docs/public/assets/home/environment_L.hdr create mode 100644 docs/public/assets/home/evan.png create mode 100644 docs/public/assets/home/gem.glb create mode 100644 docs/public/assets/home/github-card.svg create mode 100644 docs/public/assets/home/gradient-cta.svg create mode 100644 docs/public/assets/home/hero-gradient-mobile.svg create mode 100644 docs/public/assets/home/hero-gradient-tablet.svg create mode 100644 docs/public/assets/home/hero-gradient.svg create mode 100644 docs/public/assets/home/home-journey-gradient.svg create mode 100644 docs/public/assets/home/needs-community-support-light.svg create mode 100644 docs/public/assets/home/needs-community-support.svg create mode 100644 docs/public/assets/home/needs-nuxt-expert-light.svg create mode 100644 docs/public/assets/home/needs-nuxt-expert.svg create mode 100644 docs/public/assets/home/needs-official-agency-light.svg create mode 100644 docs/public/assets/home/needs-official-agency.svg create mode 100644 docs/public/assets/home/network.svg create mode 100644 docs/public/assets/home/place-holder.png create mode 100644 docs/public/assets/home/projects-image.png create mode 100644 docs/public/assets/home/sarah.png create mode 100644 docs/public/assets/home/templates.svg create mode 100644 docs/public/assets/home/ux-fast-light.svg create mode 100644 docs/public/assets/home/ux-fast.png create mode 100644 docs/public/assets/home/ux-fast.svg create mode 100644 docs/public/assets/home/ux-hybrid-light.svg create mode 100644 docs/public/assets/home/ux-hybrid.svg create mode 100644 docs/public/assets/home/ux-seo-light.svg create mode 100644 docs/public/assets/home/ux-seo.svg create mode 100644 docs/public/assets/modules/gems.svg create mode 100644 docs/public/assets/modules/hero-dark.svg create mode 100644 docs/public/assets/modules/hero-dark.webp create mode 100644 docs/public/assets/modules/hero-light.svg create mode 100644 docs/public/assets/modules/hero-light.webp create mode 100644 docs/public/assets/showcase/hero-dark.svg create mode 100644 docs/public/assets/showcase/hero-dark.webp create mode 100644 docs/public/assets/showcase/hero-light.svg create mode 100644 docs/public/assets/showcase/hero-light.webp create mode 100644 docs/public/assets/support/agencies/full/dark/64robots.png create mode 100644 docs/public/assets/support/agencies/full/dark/curotec.png create mode 100644 docs/public/assets/support/agencies/full/dark/layer0.svg create mode 100644 docs/public/assets/support/agencies/full/dark/mirahi.png create mode 100644 docs/public/assets/support/agencies/full/dark/netlify.svg create mode 100644 docs/public/assets/support/agencies/full/dark/passionate-people.webp create mode 100644 docs/public/assets/support/agencies/full/dark/shipshape.png create mode 100644 docs/public/assets/support/agencies/full/dark/software-things.svg create mode 100644 docs/public/assets/support/agencies/full/dark/storyblok.svg create mode 100644 docs/public/assets/support/agencies/full/dark/strapi.svg create mode 100644 docs/public/assets/support/agencies/full/dark/supabase.svg create mode 100644 docs/public/assets/support/agencies/full/dark/swell.svg create mode 100644 docs/public/assets/support/agencies/full/dark/vercel.png create mode 100644 docs/public/assets/support/agencies/full/dark/vue-storefront.svg create mode 100644 docs/public/assets/support/agencies/full/dark/webreinvent.svg create mode 100644 docs/public/assets/support/agencies/full/dark/zen-architects.png create mode 100644 docs/public/assets/support/agencies/full/light/64robots.png create mode 100644 docs/public/assets/support/agencies/full/light/curotec.png create mode 100644 docs/public/assets/support/agencies/full/light/layer0.svg create mode 100644 docs/public/assets/support/agencies/full/light/mirahi.png create mode 100644 docs/public/assets/support/agencies/full/light/netlify.svg create mode 100644 docs/public/assets/support/agencies/full/light/passionate-people.webp create mode 100644 docs/public/assets/support/agencies/full/light/shipshape.png create mode 100644 docs/public/assets/support/agencies/full/light/software-things.svg create mode 100644 docs/public/assets/support/agencies/full/light/storyblok.svg create mode 100644 docs/public/assets/support/agencies/full/light/strapi.svg create mode 100644 docs/public/assets/support/agencies/full/light/supabase.svg create mode 100644 docs/public/assets/support/agencies/full/light/swell.svg create mode 100644 docs/public/assets/support/agencies/full/light/vercel.png create mode 100644 docs/public/assets/support/agencies/full/light/vue-storefront.svg create mode 100644 docs/public/assets/support/agencies/full/light/webreinvent.svg create mode 100644 docs/public/assets/support/agencies/full/light/zen-architects.png create mode 100644 docs/public/assets/support/agencies/gems.svg create mode 100644 docs/public/assets/support/agencies/gradient.webp create mode 100644 docs/public/assets/support/agencies/hero-dark.svg create mode 100644 docs/public/assets/support/agencies/hero-dark.webp create mode 100644 docs/public/assets/support/agencies/hero-light.svg create mode 100644 docs/public/assets/support/agencies/square/dark/64robots.svg create mode 100644 docs/public/assets/support/agencies/square/dark/curotec.jpeg create mode 100644 docs/public/assets/support/agencies/square/dark/layer0.svg create mode 100644 docs/public/assets/support/agencies/square/dark/mirahi.svg create mode 100644 docs/public/assets/support/agencies/square/dark/netlify.svg create mode 100644 docs/public/assets/support/agencies/square/dark/passionate-people.jpeg create mode 100644 docs/public/assets/support/agencies/square/dark/shipshape.webp create mode 100644 docs/public/assets/support/agencies/square/dark/software-things.svg create mode 100644 docs/public/assets/support/agencies/square/dark/storyblok.svg create mode 100644 docs/public/assets/support/agencies/square/dark/strapi.svg create mode 100644 docs/public/assets/support/agencies/square/dark/supabase.svg create mode 100644 docs/public/assets/support/agencies/square/dark/swell.svg create mode 100644 docs/public/assets/support/agencies/square/dark/vercel.svg create mode 100644 docs/public/assets/support/agencies/square/dark/vue-storefront.svg create mode 100644 docs/public/assets/support/agencies/square/dark/webreinvent.svg create mode 100644 docs/public/assets/support/agencies/square/dark/zen-architects.svg create mode 100644 docs/public/assets/support/agencies/square/light/64robots.svg create mode 100644 docs/public/assets/support/agencies/square/light/curotec.jpeg create mode 100644 docs/public/assets/support/agencies/square/light/layer0.svg create mode 100644 docs/public/assets/support/agencies/square/light/mirahi.svg create mode 100644 docs/public/assets/support/agencies/square/light/netlify.svg create mode 100644 docs/public/assets/support/agencies/square/light/passionate-people.jpeg create mode 100644 docs/public/assets/support/agencies/square/light/shipshape.webp create mode 100644 docs/public/assets/support/agencies/square/light/software-things.svg create mode 100644 docs/public/assets/support/agencies/square/light/storyblok.svg create mode 100644 docs/public/assets/support/agencies/square/light/strapi.svg create mode 100644 docs/public/assets/support/agencies/square/light/supabase.svg create mode 100644 docs/public/assets/support/agencies/square/light/swell.svg create mode 100644 docs/public/assets/support/agencies/square/light/vercel.svg create mode 100644 docs/public/assets/support/agencies/square/light/vue-storefront.svg create mode 100644 docs/public/assets/support/agencies/square/light/webreinvent.svg create mode 100644 docs/public/assets/support/agencies/square/light/zen-architects.svg create mode 100644 docs/public/assets/support/jobs/gradient.svg create mode 100644 docs/public/assets/support/jobs/hero-dark.svg create mode 100644 docs/public/assets/support/jobs/hero-dark.webp create mode 100644 docs/public/assets/support/jobs/hero-light.svg create mode 100644 docs/public/assets/support/jobs/hero-light.webp create mode 100644 docs/public/assets/support/solutions/agency-light.webp create mode 100644 docs/public/assets/support/solutions/agency.webp create mode 100644 docs/public/assets/support/solutions/community-light.webp create mode 100644 docs/public/assets/support/solutions/community.webp create mode 100644 docs/public/assets/support/solutions/discord-server-light.svg create mode 100644 docs/public/assets/support/solutions/discord-server.svg create mode 100644 docs/public/assets/support/solutions/evan.png create mode 100644 docs/public/assets/support/solutions/experts-light.webp create mode 100644 docs/public/assets/support/solutions/experts.webp create mode 100644 docs/public/assets/support/solutions/gems.svg create mode 100644 docs/public/assets/support/solutions/github-discussion-light.svg create mode 100644 docs/public/assets/support/solutions/github-discussion.svg create mode 100644 docs/public/assets/support/solutions/gradient.svg create mode 100644 docs/public/assets/support/solutions/hero-dark.webp create mode 100644 docs/public/assets/support/solutions/hero-light.webp create mode 100644 docs/public/assets/support/solutions/other-platform-light.svg create mode 100644 docs/public/assets/support/solutions/other-platform.svg create mode 100644 docs/public/assets/support/solutions/quote.svg create mode 100644 docs/public/assets/support/sponsors/hero-dark.svg create mode 100644 docs/public/assets/support/sponsors/hero-dark.webp create mode 100644 docs/public/assets/support/sponsors/hero-light.svg create mode 100644 docs/public/assets/support/sponsors/hero-light.webp create mode 100644 docs/public/assets/toc/jobs-light.svg create mode 100644 docs/public/assets/toc/jobs.svg create mode 100644 docs/public/assets/toc/mastering-nuxt-light.svg create mode 100644 docs/public/assets/toc/mastering-nuxt.svg delete mode 100644 docs/public/favicon-16x16.png delete mode 100644 docs/public/favicon-32x32.png delete mode 100644 docs/public/favicon.ico create mode 100644 docs/public/fonts/RoobertPRO-Bold.woff create mode 100644 docs/public/fonts/RoobertPRO-Bold.woff2 create mode 100644 docs/public/fonts/RoobertPRO-BoldItalic.woff create mode 100644 docs/public/fonts/RoobertPRO-BoldItalic.woff2 create mode 100644 docs/public/fonts/RoobertPRO-Heavy.woff create mode 100644 docs/public/fonts/RoobertPRO-Heavy.woff2 create mode 100644 docs/public/fonts/RoobertPRO-HeavyItalic.woff create mode 100644 docs/public/fonts/RoobertPRO-HeavyItalic.woff2 create mode 100644 docs/public/fonts/RoobertPRO-Light.woff create mode 100644 docs/public/fonts/RoobertPRO-Light.woff2 create mode 100644 docs/public/fonts/RoobertPRO-LightItalic.woff create mode 100644 docs/public/fonts/RoobertPRO-LightItalic.woff2 create mode 100644 docs/public/fonts/RoobertPRO-Medium.woff create mode 100644 docs/public/fonts/RoobertPRO-Medium.woff2 create mode 100644 docs/public/fonts/RoobertPRO-MediumItalic.woff create mode 100644 docs/public/fonts/RoobertPRO-MediumItalic.woff2 create mode 100644 docs/public/fonts/RoobertPRO-Regular.woff create mode 100644 docs/public/fonts/RoobertPRO-Regular.woff2 create mode 100644 docs/public/fonts/RoobertPRO-RegularItalic.woff create mode 100644 docs/public/fonts/RoobertPRO-RegularItalic.woff2 create mode 100644 docs/public/fonts/RoobertPRO-SemiBold.woff create mode 100644 docs/public/fonts/RoobertPRO-SemiBold.woff2 create mode 100644 docs/public/fonts/RoobertPRO-SemiBoldItalic.woff create mode 100644 docs/public/fonts/RoobertPRO-SemiBoldItalic.woff2 create mode 100644 docs/public/logo.svg delete mode 100644 docs/public/site.webmanifest create mode 100644 docs/public/social.png diff --git a/docs/.env.example b/docs/.env.example index 199b17aa3bcf..5609cc808547 100644 --- a/docs/.env.example +++ b/docs/.env.example @@ -1,2 +1,4 @@ # Local version of the website theme WEBSITE_THEME=/my/path/to/website-theme + +OPEN_COLLECTIVE_API_KEY= diff --git a/docs/.gitignore b/docs/.gitignore index f209138dc072..85bf8a594d43 100644 --- a/docs/.gitignore +++ b/docs/.gitignore @@ -6,3 +6,4 @@ static/sw.js .yarn/* !.yarn/releases !yarn.lock +.vercel diff --git a/docs/content/0.index.md b/docs/content/0.index.md new file mode 100644 index 000000000000..ae259260fa95 --- /dev/null +++ b/docs/content/0.index.md @@ -0,0 +1,337 @@ +--- +title: 'The Intuitive Web Framework' +description: 'Build your next Vue.js application with confidence using Nuxt. An open source framework under MIT license that makes web development simple and powerful.' +showcasesListId: 505 +--- + +::home-hero +--- +primaryButtonText: 'Get started' +primaryButtonLink: '/docs/getting-started/introduction' +secondaryButtonText: 'Open on Github' +secondaryButtonLink: 'https://github.com/nuxt/framework' +--- + +#title +The Intuitive Web Framework + +#titleAnimationWord +today. + +#description +Build your next Vue.js application with confidence using Nuxt. An open source framework under MIT license that makes web development simple and powerful. +:: + + +::home-section{visible} +#title +Deliver an optimized [User Experience]{.text-transparent .bg-clip-text .bg-gradient-to-r .from-green-400 .to-teal-400} +#description +How a user interacts with and experiences your website will determine your impact. Utility, ease of use, and efficiency are key. **Nuxt is built with a set of features that make this possible.** +#extra + ::home-card-list + :::home-card-item + --- + image: + light: 'ux-fast-light.svg' + dark: 'ux-fast.svg' + --- + #title + Fast and Furious + #description + Optimized with code-splitting, tree-shaking, optimized cold-start, link prefetching, payload extraction, just to name a few. Fast by default so you can focus on building. + ::: + :::home-card-item + --- + image: + light: 'ux-hybrid-light.svg' + dark: 'ux-hybrid.svg' + --- + #title + On-demand Rendering + #description + Decide what rendering strategy at the route level: SSR, SSG, CSR, ISR, ESR, SWR. + Build any kind of website or web application with optimized performance in mind. + ::: + :::home-card-item + --- + image: + light: 'ux-seo-light.svg' + dark: 'ux-seo.svg' + --- + #title + SEO & Web Vitals + #description + By leveraging server-side rendering, ESM format and optimized images, Nuxt websites are indexable by search engines while giving the feeling of an app to the end-users. + ::: + :: +:: + +::home-section +--- +to: "/showcase" +titleSizeClass: 'text-2xl font-semibold md:text-3xl lg:text-4xl' +--- +#title +Trusted by world-class companies +#description +Explore our selection of websites & applications made with Nuxt. F-500 companies, creative agencies and freelancers all trust us. +#link +Discover our showcase +#extra +:::home-companies-carousel +::: +:: + +::home-section +#title +Discover a new [Developer Experience]{.text-transparent .bg-clip-text .bg-gradient-to-r .from-green-400 .to-teal-400} +#description +Developers deserve solutions as well designed as non-technical people. Our focus is to empower Vue developers to ship great softwares with confidence. +#extra + ::home-dx-section + --- + buttonLink: "/docs/getting-started/installation" + --- + ::home-card-list + :::home-card-item + --- + image: + light: 'dx-plug-and-play-light.svg' + dark: 'dx-plug-and-play.svg' + --- + #title + Plug & Play + #description + Unlock features by creating folders and files with the [most intuitive directory structure]{.font-semibold} made for developers and teams. + ::: + :::home-card-item + --- + image: + light: 'dx-effortless-light.svg' + dark: dx-effortless.svg + --- + #title + Automation + #description + Repetitive tasks are [automated]{.font-semibold}: auto-imports, code-splitting, typings, minification, bundling for production. and more. + ::: + :::home-card-item + --- + image: + light: 'dx-batteries-light.svg' + dark: 'dx-batteries.svg' + --- + #title + Batteries Included + #description + Data fetching, state management, meta tags helpers, route guards, cookies, error handling, bundle analyzer and more. + ::: + :: + :: +:: + +::home-section +--- +titleSizeClass: 'text-2xl font-semibold md:text-3xl lg:text-4xl' +--- +#title +Trusted by the world wide web +#description +Their opinions are valuable and worth sharing to everyone. +#extra + :::home-testimonials-list + #items + ::::home-testimonials-item + --- + authorImg: evan + authorUrl: 'https://twitter.com/youyuxi' + --- + #author + Evan You + #job + Creator of VueJS + #quote + Nuxt offers a compelling solution and a great ecosystem to help you ship fullstack Vue apps that are performant and SEO friendly. The flexibility to choose between SSR and SSG is icing on the cake. + :::: + + ::::home-testimonials-item + --- + authorImg: sarah + authorUrl: 'https://twitter.com/sarah_edo' + --- + #author + Sarah Drasner + #job + Core Team of Vue.js + #quote + Nuxt has outstanding developer productivity, experience, and performance right out of the gate! + There’s so much attention to detail, ensuring teams have everything at their fingertips to productively build all manners of applications. + :::: + + ::::home-testimonials-item + --- + authorImg: addy + authorUrl: 'https://twitter.com/addyosmani' + --- + #author + Addy Osmani + #job + Chief Engineer of Chrome + #quote + Nuxt is a fantastic choice for teams building a production-grade product on the web. It aims to bake in performance best-practices while maintaining excellent Vue.js DX. + :::: + ::: +:: + +::home-section +#title +Ship faster with [Nuxt modules]{.text-transparent .bg-clip-text .bg-gradient-to-r .from-green-400 .to-teal-400} +#description +Nuxt is made with a robust plugin system. Integrate with popular CMS or UI librairies with one line of code. With more than 15M monthly downloads and 1K contributors, Nuxt modules are you day to day companions. +#link +Explore Nuxt modules +#extra + ::home-modules-list + :: +:: + +::home-section +#title +A community of [Web builders]{.text-transparent .bg-clip-text .bg-gradient-to-r .from-green-400 .to-teal-300} +#description +Nuxt is composed of web builders all over the world who like to craft beautiful user experiences with Vue.js. +#extra + ::home-card-list + --- + gridClass: 'lg:grid-cols-4' + --- + :::home-card-item + --- + icon: 'fa-brands:npm' + to: 'https://www.npmjs.com/package/nuxt' + --- + #title + 56M + #description + npm downloads + ::: + :::home-card-item + --- + icon: 'fa-brands:discord' + to: 'https://discord.com/invite/ps2h6QT' + --- + #title + 20k + #description + Discord members + ::: + :::home-card-item + --- + icon: 'fa-brands:github' + to: 'https://github.com/nuxt' + --- + #title + 55k + #description + GitHub stars + ::: + :::home-card-item + --- + icon: 'fa-brands:twitter' + to: 'https://twitter.com/nuxt_js' + --- + #title + 76k + #description + Twitter followers + ::: + :: +:: + +::home-section +#title +A solution to cover [all your needs]{.text-transparent .bg-clip-text .bg-gradient-to-r .from-green-400 .to-teal-400} +#description +Developers deserve solutions as well designed as non-technical people. Our focus is to empower Vue developers to ship great softwares with confidence. +#extra +::home-needs-section +--- +buttonLink: "/support/solutions" +--- +#cards +:::home-card-list + :::home-card-item + --- + headerClass: 'justify-start px-4 pt-4 sm:px-6' + image: + light: 'needs-official-agency-light.svg' + dark: 'needs-official-agency.svg' + imageHeight: '58' + imageWidth: '52' + contentClass: 'gap-y-2' + to: '/support/agencies' + --- + #title + Official agency partners + #description + A careful network of trusted agencies from all over the world! + ::: + :::home-card-item + --- + headerClass: 'justify-start px-4 pt-4 sm:px-6' + image: + light: 'needs-nuxt-expert-light.svg' + dark: 'needs-nuxt-expert.svg' + imageHeight: '58' + imageWidth: '52' + contentClass: 'gap-y-2' + to: '/support/solutions' + --- + #title + Nuxt experts network + #description + A network of freelance from all over the world, certified by the NuxtLabs team ! + ::: + :::home-card-item + --- + headerClass: 'justify-start px-4 pt-4 sm:px-6' + contentClass: 'gap-y-2' + image: + light: 'needs-community-support-light.svg' + dark: 'needs-community-support.svg' + imageHeight: '58' + imageWidth: '52' + to: '/support/solutions' + --- + #title + Community support + #description + More than 2000 active contributors on multiple platforms are here to help ! + ::: +::: +:: +:: + +::home-journey-section +#content + :::home-section + --- + buttons: + - label: 'Get started' + size: 'xl' + variant: 'primary-gradient' + to: '/docs/getting-started/introduction' + - label: 'Explore Examples' + size: 'xl' + variant: 'secondary' + to: '/docs/examples/essentials/hello-world' + --- + #sectionTitle + GETTING STARTED + #title + Start your Nuxt Journey + #description + Learn everything you need to know, from beginner to master. + ::: +:: diff --git a/docs/content/1.getting-started/1.introduction.md b/docs/content/1.docs/1.getting-started/1.introduction.md similarity index 88% rename from docs/content/1.getting-started/1.introduction.md rename to docs/content/1.docs/1.getting-started/1.introduction.md index 51d9217602b9..f3a5b08639af 100644 --- a/docs/content/1.getting-started/1.introduction.md +++ b/docs/content/1.docs/1.getting-started/1.introduction.md @@ -26,7 +26,7 @@ Nuxt takes care of this and provides both frontend and backend functionality so ### View engine -Nuxt uses Vue.js as a view engine. All Vue 3 capabilities are available in Nuxt. You can read about the details of the Vue integration with Nuxt in the [Key Concepts section](/guide/concepts/vuejs-development). +Nuxt uses Vue.js as a view engine. All Vue 3 capabilities are available in Nuxt. You can read about the details of the Vue integration with Nuxt in the [Key Concepts section](/docs/guide/concepts/vuejs-development). ### Automation and conventions @@ -36,12 +36,12 @@ Nuxt uses conventions and an opinionated directory structure to automate repetit - Auto-imports - File-system routing and API layer - Data-fetching utilities -- Zero-config Typescript support +- Zero-config TypeScript support - Configured build tools :: ::alert{type="info"} -Discover more in the [Key concepts section](/guide/concepts/auto-imports). +Discover more in the [Key concepts section](/docs/guide/concepts/auto-imports). :: ### Rendering modes @@ -56,7 +56,7 @@ Nuxt offers different rendering modes to accommodate various use-cases: :: ::alert{type="info"} -Read more about [Nuxt rendering modes](/guide/concepts/rendering). +Read more about [Nuxt rendering modes](/docs/guide/concepts/rendering). :: ### Server engine @@ -68,7 +68,7 @@ In development, it uses Rollup and Node.js workers for your server code and cont 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. ::alert{type="info"} -Read more about [Nuxt server engine](/guide/concepts/server-engine). +Read more about [Nuxt server engine](/docs/guide/concepts/server-engine). :: ### Production-ready @@ -76,7 +76,7 @@ Read more about [Nuxt server engine](/guide/concepts/server-engine). 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. ::alert{type="info"} -Discover more in the [deployment section](/getting-started/deployment). +Discover more in the [deployment section](/docs/getting-started/deployment). :: ### Modular @@ -84,7 +84,7 @@ Discover more in the [deployment section](/getting-started/deployment). A module system allows to extend Nuxt with custom features and integrations with third-party services. ::alert{type="info"} -Discover more about [modules](/guide/concepts/modules). +Discover more about [modules](/docs/guide/concepts/modules). :: ### Architecture @@ -109,9 +109,9 @@ Nuxt is the backbone of your Vue.js project, giving structure to build your proj 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. ::alert{type=info icon=👍} -Ready to try? Head over to the [Installation section](/getting-started/installation). +Ready to try? Head over to the [Installation section](/docs/getting-started/installation). :: ### Contribute -Do you want to get involved in the evolution of Nuxt? [Follow the contribution guide 👉](/community/contribution) +Do you want to get involved in the evolution of Nuxt? [Follow the contribution guide 👉](/docs/community/contribution) diff --git a/docs/content/1.getting-started/10.deployment.md b/docs/content/1.docs/1.getting-started/10.deployment.md similarity index 92% rename from docs/content/1.getting-started/10.deployment.md rename to docs/content/1.docs/1.getting-started/10.deployment.md index 66845b5845c4..8ee9f6a99978 100644 --- a/docs/content/1.getting-started/10.deployment.md +++ b/docs/content/1.docs/1.getting-started/10.deployment.md @@ -81,7 +81,7 @@ There are two ways to deploy a Nuxt application to any static hosting services: ### Crawl-based Pre-rendering -Use the [`nuxi generate` command](/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. 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. ```bash npx nuxi generate @@ -89,7 +89,7 @@ npx nuxi generate ### Manual Pre-rendering -You can manually specify routes that [Nitro](/guide/concepts/server-engine) will fetch and pre-render during the build. +You can manually specify routes that [Nitro](/docs/guide/concepts/server-engine) will fetch and pre-render during the build. ```ts [nuxt.config.ts|js] defineNuxtConfig({ @@ -115,7 +115,7 @@ defineNuxtConfig({ 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. -You can explicitly set the desired preset in the [`nuxt.config`](/guide/directory-structure/nuxt.config) file: +You can explicitly set the desired preset in the [`nuxt.config`](/docs/guide/directory-structure/nuxt.config) file: ```js [nuxt.config.js|ts] export default { diff --git a/docs/content/1.getting-started/10.upgrade-guide/_dir.yml b/docs/content/1.docs/1.getting-started/10.upgrade-guide/_dir.yml similarity index 100% rename from docs/content/1.getting-started/10.upgrade-guide/_dir.yml rename to docs/content/1.docs/1.getting-started/10.upgrade-guide/_dir.yml diff --git a/docs/content/1.getting-started/11.upgrade.md b/docs/content/1.docs/1.getting-started/11.upgrade.md similarity index 91% rename from docs/content/1.getting-started/11.upgrade.md rename to docs/content/1.docs/1.getting-started/11.upgrade.md index 3df6a8a467d3..768e7beb9973 100644 --- a/docs/content/1.getting-started/11.upgrade.md +++ b/docs/content/1.docs/1.getting-started/11.upgrade.md @@ -25,7 +25,7 @@ Options API | ✅ | ✅ | ✅ Components Auto Import | ✅ | ✅ | ✅ ` ``` -:ReadMore{link="/api/composables/use-route"} +:ReadMore{link="/docs/api/composables/use-route"} ## Route Middleware @@ -120,7 +120,7 @@ definePageMeta({ ## Route Validation -Nuxt offers route validation via the `validate` property in [`definePageMeta`](/api/utils/define-page-meta) in each page you wish to validate. +Nuxt offers route validation via the `validate` property in [`definePageMeta`](/docs/api/utils/define-page-meta) in each page you wish to validate. The `validate` property accepts the `route` as an argument. You can return a boolean value to determine whether or not this is a valid route to be rendered with this page. If you return `false`, and another match can't be found, this will cause a 404 error. You can also directly return an object with `statusCode`/`statusMessage` to respond immediately with an error (other matches will not be checked). diff --git a/docs/content/1.getting-started/5.seo-meta.md b/docs/content/1.docs/1.getting-started/5.seo-meta.md similarity index 95% rename from docs/content/1.getting-started/5.seo-meta.md rename to docs/content/1.docs/1.getting-started/5.seo-meta.md index c997658c2993..d79c03c690ea 100644 --- a/docs/content/1.getting-started/5.seo-meta.md +++ b/docs/content/1.docs/1.getting-started/5.seo-meta.md @@ -9,7 +9,7 @@ Improve your Nuxt app's SEO with powerful head config, composables and component ## App Head -Providing an [app.head](/api/configuration/nuxt-config#head) property in your `nuxt.config.ts` allows you to customize the head for your entire app. +Providing an [app.head](/docs/api/configuration/nuxt-config#head) property in your `nuxt.config.ts` allows you to customize the head for your entire app. ::alert{type=info} This method does not allow you to provide reactive data, if you need global reactive data you can use `useHead` in `app.vue`. @@ -42,7 +42,7 @@ export default defineNuxtConfig({ }) ``` -:ReadMore{link="/api/configuration/nuxt-config/#head"} +:ReadMore{link="/docs/api/configuration/nuxt-config/#head"} ## Composable: `useHead` @@ -67,7 +67,7 @@ useHead({ ``` -::ReadMore{link="/api/composables/use-head"} +::ReadMore{link="/docs/api/composables/use-head"} :: ## Components @@ -227,7 +227,7 @@ useHead({ ``` -::LinkExample{link="/examples/composables/use-head"} +::LinkExample{link="/docs/examples/composables/use-head"} :: :ReadMore{link="/guide/directory-structure/pages/#page-metadata"} diff --git a/docs/content/1.getting-started/5.transitions.md b/docs/content/1.docs/1.getting-started/5.transitions.md similarity index 94% rename from docs/content/1.getting-started/5.transitions.md rename to docs/content/1.docs/1.getting-started/5.transitions.md index a21006481f70..5592a22c86c6 100644 --- a/docs/content/1.getting-started/5.transitions.md +++ b/docs/content/1.docs/1.getting-started/5.transitions.md @@ -9,7 +9,7 @@ Nuxt leverages Vue's [``](https://vuejs.org/guide/built-ins/transiti ## Page transitions -You can enable page transitions to apply an automatic transition for all your [pages](/guide/directory-structure/pages). +You can enable page transitions to apply an automatic transition for all your [pages](/docs/guide/directory-structure/pages). ```ts [nuxt.config.ts] export default defineNuxtConfig({ @@ -19,7 +19,7 @@ export default defineNuxtConfig({ }) ``` -To start adding transition between your pages, add the following CSS to your [`app.vue`](/guide/directory-structure/app): +To start adding transition between your pages, add the following CSS to your [`app.vue`](/docs/guide/directory-structure/app): ::code-group @@ -67,7 +67,7 @@ This produces the following result when navigating between pages: -To set a different transition for a page, set the `pageTransition` key in [`definePageMeta`](/api/utils/define-page-meta) of the page: +To set a different transition for a page, set the `pageTransition` key in [`definePageMeta`](/docs/api/utils/define-page-meta) of the page: ::code-group @@ -110,7 +110,7 @@ Moving to the about page will add the 3d rotation effect: ## Layout transitions -You can enable layout transitions to apply an automatic transition for all your [layouts](/guide/directory-structure/layouts). +You can enable layout transitions to apply an automatic transition for all your [layouts](/docs/guide/directory-structure/layouts). ```ts [nuxt.config.ts] export default defineNuxtConfig({ @@ -120,7 +120,7 @@ export default defineNuxtConfig({ }) ``` -To start adding transition between your pages and layouts, add the following CSS to your [`app.vue`](/guide/directory-structure/app): +To start adding transition between your pages and layouts, add the following CSS to your [`app.vue`](/docs/guide/directory-structure/app): ::code-group @@ -310,7 +310,7 @@ Learn more about additional [JavaScript hooks](https://vuejs.org/guide/built-ins ## Dynamic Transitions -To apply dynamic transitions using conditional logic, you can leverage inline [middleware](/guide/directory-structure/middleware) to assign a different transition name to `to.meta.pageTransition`. +To apply dynamic transitions using conditional logic, you can leverage inline [middleware](/docs/guide/directory-structure/middleware) to assign a different transition name to `to.meta.pageTransition`. ::code-group diff --git a/docs/content/1.getting-started/6.data-fetching.md b/docs/content/1.docs/1.getting-started/6.data-fetching.md similarity index 93% rename from docs/content/1.getting-started/6.data-fetching.md rename to docs/content/1.docs/1.getting-started/6.data-fetching.md index 921d71d9ab5e..2569eb7e48b4 100644 --- a/docs/content/1.getting-started/6.data-fetching.md +++ b/docs/content/1.docs/1.getting-started/6.data-fetching.md @@ -17,7 +17,7 @@ Within your pages, components and plugins you can use `useFetch` to universally This composable provides a convenient wrapper around `useAsyncData` and `$fetch`. It automatically generates a key based on URL and fetch options, provides type hints for request url based on server routes, and infers API response type. -::ReadMore{link="/api/composables/use-fetch"} +::ReadMore{link="/docs/api/composables/use-fetch"} :: ### Example @@ -32,14 +32,14 @@ const { data: count } = await useFetch('/api/count') ``` -::LinkExample{link="/examples/composables/use-fetch"} +::LinkExample{link="/docs/examples/composables/use-fetch"} :: ## `useLazyFetch` This composable behaves identically to `useFetch` with the `lazy: true` option set. In other words, the async function does not block navigation. That means you will need to handle the situation where the data is `null` (or whatever value you have provided in a custom `default` factory function). -::ReadMore{link="/api/composables/use-lazy-fetch"} +::ReadMore{link="/docs/api/composables/use-lazy-fetch"} :: ### Example @@ -76,7 +76,7 @@ You might be asking yourself: what is the difference between `useFetch` and `use In brief, `useFetch` receives a URL and gets that data, whereas `useAsyncData` might have more complex logic. `useFetch(url)` is nearly equivalent to `useAsyncData(url, () => $fetch(url))` - it's developer experience sugar for the most common use case. :: -::ReadMore{link="/api/composables/use-async-data"} +::ReadMore{link="/docs/api/composables/use-async-data"} :: ### Example @@ -99,14 +99,14 @@ const { data } = await useAsyncData('count', () => $fetch('/api/count')) ``` -::LinkExample{link="/examples/composables/use-async-data"} +::LinkExample{link="/docs/examples/composables/use-async-data"} :: ## `useLazyAsyncData` This composable behaves identically to `useAsyncData` with the `lazy: true` option set. In other words, the async function does not block navigation. That means you will need to handle the situation where the data is `null` (or whatever value you have provided in a custom `default` factory function). -::ReadMore{link="/api/composables/use-lazy-async-data"} +::ReadMore{link="/docs/api/composables/use-lazy-async-data"} :: ### Example @@ -166,7 +166,7 @@ Invalidate the cache of `useAsyncData`, `useLazyAsyncData`, `useFetch` and `useL This method is useful if you want to refresh all the data fetching for a current page. -::ReadMore{link="/api/utils/refresh-nuxt-data"} +::ReadMore{link="/docs/api/utils/refresh-nuxt-data"} :: #### Example @@ -192,7 +192,7 @@ Delete cached data, error status and pending promises of `useAsyncData` and `use This method is useful if you want to invalidate the data fetching for another page. -::ReadMore{link="/api/utils/clear-nuxt-data"} +::ReadMore{link="/docs/api/utils/clear-nuxt-data"} :: ## Options API support @@ -220,19 +220,19 @@ Options API support for `asyncData` may well change before the stable release of Using ` ``` -::LinkExample{link="/examples/auto-imports/composables"} +::LinkExample{link="/docs/examples/auto-imports/composables"} :: ## Examples @@ -64,7 +64,7 @@ export const useFoo = () => { ### Access plugin injections -You can access [plugin injections](/guide/directory-structure/plugins#automatically-providing-helpers) from composables: +You can access [plugin injections](/docs/guide/directory-structure/plugins#automatically-providing-helpers) from composables: ```js [composables/test.ts] export const useHello = () => { diff --git a/docs/content/2.guide/2.directory-structure/1.content.md b/docs/content/1.docs/2.guide/2.directory-structure/1.content.md similarity index 92% rename from docs/content/2.guide/2.directory-structure/1.content.md rename to docs/content/1.docs/2.guide/2.directory-structure/1.content.md index a5fd6bbf0edd..e20cae4a0af2 100644 --- a/docs/content/2.guide/2.directory-structure/1.content.md +++ b/docs/content/1.docs/2.guide/2.directory-structure/1.content.md @@ -65,7 +65,7 @@ The module automatically loads and parses them. ### Render Pages -To render content pages, add a [catch-all route](/guide/directory-structure/pages/#catch-all-route) using the `ContentDoc` component: +To render content pages, add a [catch-all route](/docs/guide/directory-structure/pages/#catch-all-route) using the `ContentDoc` component: ```vue [pages/[...slug].vue]