Next.js supports IE11 and all modern browsers (Edge, Firefox, Chrome, Safari, Opera, et al) with no required configuration.
We inject widely used polyfills, including:
urlpackage (Node.js API).
If any of your dependencies includes these polyfills, they’ll be eliminated automatically from the production build to avoid duplication.
In addition, to reduce bundle size, Next.js will only load these polyfills for browsers that require them. The majority of the web traffic globally will not download these polyfills.
If your own code or any external npm dependencies require features not supported by your target browsers (such as IE 11), you need to add polyfills yourself.
In this case, you should add a top-level import for the specific polyfill you need in your Custom
<App> or the individual component.
In addition to
fetch() on the client-side, Next.js polyfills
fetch() in the Node.js environment. You can use
fetch() in your server code (such as
getServerSideProps) without using polyfills such as
Next.js has built-in TypeScript support. Learn more here.
You can customize babel configuration. Learn more here.