Nitro · NITRO0002

Do not use useNuxtApp in Nitro routes

Nitro handlers run outside the Nuxt app runtime, so useNuxtApp() is unavailable.
NITRO0002vite-doctor/nitroservererrorSuggestion
nitro/context/no-usenuxtapp-in-nitrosrc/rule-packs/nitro/rules/no-use-nuxt-app-in-nitro.ts

Run this rule

pnpm vite-doctor . --framework nitro --rules nitro/context/no-usenuxtapp-in-nitro

Why it matters

Nitro request handlers execute in the server runtime with an event object, not inside Vue or Nuxt app setup. App composables rely on Nuxt app instance state that does not exist there.

Use event-aware Nitro, h3, or server utilities that receive the request event.

Example

Avoid useNuxtApp in Nitro

Before

export default defineEventHandler(() => {
  const nuxtApp = useNuxtApp()
  return nuxtApp.payload
})

After

export default defineEventHandler((event) => {
  return useRuntimeConfig(event).public
})
Copyright © 2026