Package Exports
- react-gallery-albums
- react-gallery-albums/dist/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (react-gallery-albums) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
React Gallery Albums 🖼️
A lightweight, modular React library for creating beautiful photo galleries organized into albums.
✨ Features
- Album-based display with customizable covers
- Responsive layout
- Zero dependencies (besides React)
- Fully typed (TypeScript compatible)
- Optimized performance with React.memo
🚀 Installation
npm install react-gallery-albums
# or
yarn add react-gallery-albums
💡 Basic Usage
import { Gallery, AlbumContent } from 'react-gallery-albums';
import { BrowserRouter as Router, Route, Routes } from 'react-router-dom';
const albums = [
{
title: "Vacation",
images: ["/img1.jpg", "/img2.jpg"]
},
{
title: "Wedding",
images: ["/wedding1.jpg", "/img2.jpg"]
}
];
function App() {
return (
<Router>
<Routes>
<Route path="/gallery" element={<Gallery albums={albums} galleryPath="/my-albums"/>} />
<Route path="/gallery/:albumSlug" element={<AlbumContent albums={albums} galleryPath="/my-albums" />} />
</Routes>
</Router>
);
}
⚙️ Props
Gallery
Component
albums
: An array of album objects. Each album object should have atitle
and animages
property (array of image URLs).galleryPath
: (Optional) A string that defines the base path for the album links. Defaults to"/gallery"
. This allows customization of the URL structure for the gallery.
Example:
<Gallery albums={albums} galleryPath="/my-albums" />
If you use the above prop, this will generate links like /my-albums/vacation
and /my-albums/wedding
when you click on an album. The default is /gallery
. The Route path should still be set to /gallery
AlbumContent
Component
albums
: An array of album objects, same as theGallery
component. This is necessary for the component to find the correct album based on the URL.galleryPath
: (Optional) A string that defines the base path for the album links. It should match thegalleryPath
prop used in theGallery
component. Defaults to"/gallery"
.