
# Yet Another React Lightbox
[](https://www.npmjs.com/package/yet-another-react-lightbox)
[](https://github.com/igordanchenko/yet-another-react-lightbox/blob/main/.size-limit.json)
[](https://github.com/igordanchenko/yet-another-react-lightbox/blob/main/LICENSE)
Modern React lightbox component. Performant, easy to use, customizable, and
extendable.
## Overview
- **Built for React:** works with React 19, 18, 17, and 16.8.0+
- **UX:** supports keyboard, mouse, touchpad, and touchscreen navigation
- **Preloading:** never displays partially downloaded images
- **Performance:** preloads limited number of images without compromising
performance or UX
- **Responsive:** responsive images with automatic resolution switching are
supported out of the box
- **Video:** video slides are supported via an optional plugin
- **Zoom:** image zoom is supported via an optional plugin
- **Customization:** customize any UI element or add your own custom slides
- **No bloat:** never bundle rarely used features; add optional features via
plugins
- **TypeScript:** type definitions come built-in with the package
- **RTL:** compatible with RTL layout

## Documentation
[https://yet-another-react-lightbox.com/documentation](https://yet-another-react-lightbox.com/documentation)
## Examples
[https://yet-another-react-lightbox.com/examples](https://yet-another-react-lightbox.com/examples)
## Changelog
[https://github.com/igordanchenko/yet-another-react-lightbox/releases](https://github.com/igordanchenko/yet-another-react-lightbox/releases)
## Installation
```shell
npm install yet-another-react-lightbox
```
## Minimal Setup Example
```jsx
import * as React from "react";
import Lightbox from "yet-another-react-lightbox";
import "yet-another-react-lightbox/styles.css";
export default function App() {
const [open, setOpen] = React.useState(false);
return (
<>