Next.js image service

Unpic can transform images with Next.js image service using the nextjs provider. It can be used with Unpic framework components, or you can use the base unpic libary to generate image URLs directly.

You can import the nextjs provider from the unpic package using a subpath import:

import { transform } from 'unpic/providers/nextjs';

If using an Unpic component, you can optionally pass custom operations and options to the component using an object with a nextjs key. This is lets you use extra features supported by Next.js image service, or set custom configuration options.

This example uses @unpic/astro, but the same applies to any Unpic component:

---
import { Image } from '@unpic/astro';
---
<Image
  src="image.jpg"
  width={800}
  height={600}
  options={{
      "nextjs": {
      // nextjs options here
      }
  }}
  operations={{
      "nextjs": {
      // nextjs operations here
      }
  }}
/>

In supported frameworks you can also import the base component and pass the transformer to it directly. This lets you create a custom component that doesn’t need to include and other transformer code.

---
import { Image } from '@unpic/astro/base';
import { transform } from 'unpic/providers/nextjs';
---
<Image
  src="image.jpg"
  width={800}
  height={600}
  transformer={transformer}
/>

Types

The nextjs provider supports the following arguments:

Options

baseUrl

Type: string

Operations

w

Type: number

Resize the image to a specified width in pixels. Shorthand for width.

q

Type: number

Image quality for lossy formats like JPEG and WebP. Shorthand for quality.

width

Type: string | number

height

Type: string | number

format

Type: (string & {}) | ImageFormat

quality

Type: string | number

This page is auto-generated from the nextjs provider types. See anything wrong or missing? Suggest a change on GitHub.