serverComponentsExternalPackages

Зависимости, используемые внутри серверных компонентов (Server Components) и обработчиков маршрутов (Route Handlers), автоматически включаются в бандл Next.js.

Если зависимость использует специфичные для Node.js возможности, вы можете исключить определенные зависимости из бандлинга серверных компонентов и использовать нативный Node.js require.

next.config.js
/** @type {import('next').NextConfig} */
const nextConfig = {
  experimental: {
    serverComponentsExternalPackages: ['@acme/ui'],
  },
}

module.exports = nextConfig

Next.js включает короткий список популярных пакетов, которые в настоящее время работают над совместимостью и автоматически исключаются:

  • @aws-sdk/client-s3
  • @aws-sdk/s3-presigned-post
  • @blockfrost/blockfrost-js
  • @libsql/client
  • @jpg-store/lucid-cardano
  • @mikro-orm/core
  • @mikro-orm/knex
  • @prisma/client
  • @sentry/nextjs
  • @sentry/node
  • @swc/core
  • argon2
  • autoprefixer
  • aws-crt
  • bcrypt
  • better-sqlite3
  • canvas
  • cpu-features
  • cypress
  • eslint
  • express
  • firebase-admin
  • jest
  • jsdom
  • libsql
  • lodash
  • mdx-bundler
  • mongodb
  • mongoose
  • next-mdx-remote
  • next-seo
  • payload
  • pg
  • playwright
  • postcss
  • prettier
  • prisma
  • puppeteer
  • rimraf
  • sharp
  • shiki
  • sqlite3
  • tailwindcss
  • ts-node
  • typescript
  • vscode-oniguruma
  • webpack