You are reading Nuxt 2 docs. Head over nuxt.com for Nuxt 3 docs.

nuxt.render(req, res)

You can use Nuxt as a middleware with nuxt.render for your Node.js server.


Example with Express :

const { loadNuxt, build } = require('nuxt')

const app = require('express')()
const isDev = process.env.NODE_ENV !== 'production'
const port = process.env.PORT || 3000

async function start() {
  // We get Nuxt instance
  const nuxt = await loadNuxt(isDev ? 'dev' : 'start')

  // Render every route with Nuxt
  app.use(nuxt.render)

  // Build only in dev mode with hot-reloading
  if (isDev) {
    build(nuxt)
  }
  // Listen the server
  app.listen(port, '0.0.0.0')
  console.log('Server listening on `localhost:' + port + '`.')
}

start()
It's recommended to call nuxt.render at the end of your middlewares since it will handle the rendering of your web application and won't call next()
Edit this page on GitHub Updated at Thu, Feb 9, 2023