# Client Lazy Loading

By default, the `Quadrata` entry point component uses Lazy Loading to load the `@quadrata/client-react` and `@quadrata/kyb-react` libraries only when they are needed. This helps bring down the size of the First Load JS bundles.

In order to take advantage of Lazy Loading, you need to be able to serve JS chunks from your server on demand.

You can read more about lazy loading on React's developer reference, <https://react.dev/reference/react/lazy>

{% hint style="info" %}
Lazy loading relies on [dynamic `import()`,](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/import) which might require support from your bundler or framework.
{% endhint %}

## Lazy Loading In Next.js

In Next.js, you can use the following configuration in your `nextjs.config.mjs` file:

```javascript
/** @type {import('next').NextConfig} */
const nextConfig = {
    experimental: {
        optimizePackageImports: [
            '@quadrata/sdk/client',
        ]
    },
};
export default nextConfig;
```

{% hint style="info" %}
You can opt to using [Eager Loading](https://docs.quadrata.com/integration/how-to-integrate/quadrata-sdk/advanced/client-libraries/client-eager-loading) if you cannot or do not want to support Lazy Loading.
{% endhint %}
