PhotoGallery

Property image gallery with carousel navigation and fullscreen viewer.

Quick Preview

Modern home exterior with large windows
Bright living room with warm finishes
Open-plan kitchen and dining area
Bedroom with natural light
Ensuite bathroom with a walk-in shower
1 / 5

Usage

<PhotoGallery images={images} />

Examples

Default PhotoGallery

Use this as the starting point for PhotoGallery. Keep product data, routing, fetching, and authorization logic in the consuming app.

Modern home exterior with large windows
Bright living room with warm finishes
Open-plan kitchen and dining area
Bedroom with natural light
Ensuite bathroom with a walk-in shower
1 / 5

Fullscreen viewer

Wire onImageClick to open a PhotoGalleryFullscreen lightbox, sharing index / onIndexChange so the inline gallery and the viewer stay in sync. The viewer contains each photo within the available space — never overflowing the chrome and never stretching.

Modern home exterior with large windows
Bright living room with warm finishes
Open-plan kitchen and dining area
Bedroom with natural light
Ensuite bathroom with a walk-in shower
1 / 5

Props

PhotoGallery

Prop/APITypeDefaultDescription
imagesPhotoGalleryImage[]-Gallery images and alt text.
indexnumber-Controlled active image index.
onIndexChange(index) => void-Called when the active image changes.
onImageClick(index) => void-Called when the hero image is activated.
classNamestring-Local layout or spacing overrides.
native/root propsReact component props-Passed through to the underlying root or primitive.

PhotoGalleryFullscreen

Prop/APITypeDefaultDescription
imagesPhotoGalleryImage[]-Gallery images and alt text.
openboolean-Whether the fullscreen viewer is open.
onOpenChange(open) => void-Called when the viewer requests to open or close.
indexnumber-Controlled active image index.
onIndexChange(index) => void-Called when the active image changes.

Accessibility

  • Provide visible labels or accessible names for interactive controls.
  • Preserve the component-provided focus, keyboard, disabled, and invalid-state behavior.
  • Do not communicate state with color alone; include text, icons, or helper copy.

On this page