ページ内ナビ
概要
PhotoSwipeはモバイルとデスクトップ向けのJavaScript画像ギャラリー・lightboxです。Core、Lightbox、CSSを分離した構成で、サムネイルから大きな画像を開き、swipeやzoomを含む閲覧UIをフレームワークに依存せず実装できます。
特徴と向いている用途
公式資料に基づく紹介・実機未検証 · 内容確認日:
主な特徴
LightboxとCoreを分離して必要な時だけgallery本体を読み込む
推奨構成ではPhotoSwipeLightboxがギャラリーのclickを監視し、pswpModuleからCoreをdynamic importします。初期bundleを抑えながらギャラリーを開く時だけ本体を読み込めます。
出典:[2]
既存のlink・thumbnail markupをgallery sourceとして利用する
ギャラリーcontainerとchildren selectorを指定し、各linkへ画像URLとdata-pswp-width・data-pswp-heightを持たせます。サムネイル画像も同じlink内へ配置できます。
出典:[2]
レスポンシブ画像とprogressive enhancementを前提に構成する
公式guideはレスポンシブ画像の利用を推奨し、PhotoSwipeが動かない場合でも画像linkからcontentへ到達できるprogressive enhancementを前提にしています。
出典:[2]
向いている用途
導入前の確認
参考にした公式資料
- [1]PhotoSwipe v5.4.4 README(2026-10-05)
- [2]PhotoSwipe v5.4.4 Getting Started(2026-10-05)
- [3]PhotoSwipe v5.4.4 package metadata(2026-10-05)
- [4]PhotoSwipe v5.4.4 release(2026-10-05)
- [5]PhotoSwipe MIT license(2026-10-05)
編集部からの補足
CoreとLightboxを分離し、利用者がgalleryを開いた時だけCoreをdynamic importできる設計が特徴です。画像のwidth/heightを事前に持たせる必要があるため、CMSやAPIからgallery dataを作る場合は寸法metadataの保持方法まで合わせて設計してください。
3ステップで試す
- 1
PhotoSwipe 5.4.4を導入する
確認対象のv5安定版を固定して導入します。
npm install --save-exact photoswipe@5.4.4 - 2
画像寸法を持つgallery markupを用意する
各linkへ大きな画像のURLと
data-pswp-width・data-pswp-heightを設定します。<div id="my-gallery"><a href="large.jpg" data-pswp-width="1600" data-pswp-height="1200"><img src="thumb.jpg" alt=""></a></div> - 3
Lightboxを初期化する
Lightboxから必要な時だけCoreを読み込み、galleryのlinkを拡大表示できるようにします。
import PhotoSwipeLightbox from 'photoswipe/lightbox'; import 'photoswipe/style.css'; const lightbox = new PhotoSwipeLightbox({ gallery: '#my-gallery', children: 'a', pswpModule: () => import('photoswipe') }); lightbox.init();
成長
成長の推移 · 直近30日
25,270 Stars
推移データを蓄積中です。
開発アクティビティ
直近90日・週次
- Commit(直近30日)
- 0
- Open PR
- 8
開発アクティビティを蓄積中です。
Built with
カテゴリとタグ
カテゴリ
GitHubデータ
GitHubのデータGitHubの詳細データを見る
GitHub Topics
- gallery
- lightbox
- image
- javascript
- Stars
- 25,270
- Forks
- 3,271
- Watchers
- 521
- Open Issues
- 162
- Contributors
- 70
- 所有者種別
- User
- 主要言語
- JavaScript
- ライセンス
- MIT
- リポジトリ最終更新
- 2025/12/04
関連情報
関連記事を投稿するこのOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。
あわせて探訪
- Bootstrap174,991 Stars
共通タグ 4件
responsive grid・utility・componentをCSS/Sassとnative JavaScriptから組み立てるfrontend framework
MDX - Storybook91,200 Stars
共通タグ 4件
UI状態をstoryとして保存し、Docs・interaction test・AI toolへ再利用するfrontend workshop
TypeScript - Expo52,566 Stars
共通タグ 4件
React NativeアプリをAndroid・iOS・Webへ一つのprojectから展開する
TypeScript - Alpine.js31,960 Stars
共通タグ 4件
HTML属性にstate・event・表示制御を記述し、小さなinteractive UIを構築する
HTML - Uppy31,010 Stars
共通タグ 4件
ファイル選択UIと再開可能なアップロードをプラグインで組み合わせ、ローカル・リモートの取得元から送信する
TypeScript - flatpickr16,464 Stars
共通タグ 4件
日付・時刻・期間・複数日を依存なしのpicker UIで入力し、無効日やlocaleも設定する
TypeScript
情報の誤りを報告
掲載内容に誤りや古い情報があればお知らせください。