インストール
reelkit のパッケージをインストールして、プロジェクトを設定します。
パッケージの選び方
使うものだけをインストールしてください:
| パッケージ | 説明 | 用途 |
|---|---|---|
@reelkit/core | フレームワークに依存しないコア | 独自の組み込み |
@reelkit/react | React コンポーネント | React 18 以降のアプリケーション |
@reelkit/react-reel-player | フルスクリーンの縦型動画プレイヤー | Instagram/TikTok 風のプレイヤー |
@reelkit/react-lightbox | 画像ギャラリーのオーバーレイ | フルスクリーンでの画像プレビュー |
@reelkit/react-stories-player | Instagram 風のストーリープレイヤー | 自動送りとジェスチャーのあるストーリー |
@reelkit/angular | Angular のスタンドアロンコンポーネント | Angular 17 以降のアプリケーション |
@reelkit/angular-reel-player | フルスクリーンの縦型動画プレイヤー | Instagram/TikTok 風のプレイヤー |
@reelkit/angular-lightbox | 画像ギャラリーのオーバーレイ | フルスクリーンでの画像プレビュー |
@reelkit/vue | Vue 3 のコンポーネントとコンポーザブル | Vue 3 のアプリケーション |
@reelkit/vue-reel-player | フルスクリーンの縦型動画プレイヤー | Instagram/TikTok 風のプレイヤー |
@reelkit/vue-lightbox | 画像ギャラリーのオーバーレイ | フルスクリーンでの画像プレビュー |
バンドルサイズ
どのパッケージもバンドルへの影響が最小になるよう最適化されています:
| パッケージ | JS | JS (gzip) | CSS | CSS (gzip) |
|---|---|---|---|---|
@reelkit/core | 26.7 kB | 10.1 kB | - | - |
@reelkit/react | 13.4 kB | 4.8 kB | - | - |
@reelkit/react-reel-player | 17.0 kB | 5.4 kB | 9.7 kB | 2.1 kB |
@reelkit/react-lightbox | 10.0 kB | 3.4 kB | 7.7 kB | 1.6 kB |
@reelkit/react-stories-player | 19.1 kB | 5.8 kB | 7.5 kB | 1.7 kB |
@reelkit/angular | 66.7 kB | 15.1 kB | - | - |
@reelkit/angular-reel-player | 149.0 kB | 24.4 kB | - | - |
@reelkit/angular-lightbox | 93.5 kB | 15.4 kB | - | - |
@reelkit/vue | 14.4 kB | 5.0 kB | - | - |
@reelkit/vue-reel-player | 21.1 kB | 6.2 kB | 9.7 kB | 2.1 kB |
@reelkit/vue-lightbox | 14.4 kB | 4.1 kB | 6.8 kB | 1.4 kB |
ほかのライブラリとの比較
ReelKit は常に DOM に 3 枚のスライド しか描画せず、10,000 件を超えるアイテムも扱えます。ほかのカルーセルライブラリはすべてのスライドを描画するため、大きなリストでは動作が止まってしまいます。
| ライブラリ | JS (gzip) | 仮想化 | 備考 |
|---|---|---|---|
| ReelKit (core + react) | 14.9 kB | 依存関係なし | |
| ReelKit (core + angular) | 25.2 kB | 依存関係なし | |
| ReelKit (core + vue) | 15.0 kB | 依存関係なし | |
| Swiper | ~25 kB | プラグイン | フルバンドル。ツリーシェイキング可能 |
| Embla Carousel | ~7 kB | ✗ | 軽量、プラグイン方式 |
| keen-slider | ~6 kB | ✗ | 依存関係なし |
Peer dependencies
フレームワーク向けのパッケージには、すでにプロジェクトに入っているはずの peer dependencies があります:
@reelkit/react
react>= 18.0.0react-dom>= 18.0.0
@reelkit/react-reel-player
@reelkit/reactreact>= 18.0.0react-dom>= 18.0.0lucide-react>= 0.400.0
@reelkit/react-lightbox
@reelkit/reactreact>= 18.0.0react-dom>= 18.0.0lucide-react>= 0.400.0
@reelkit/react-stories-player
@reelkit/reactreact>= 18.0.0react-dom>= 18.0.0lucide-react>= 0.400.0
@reelkit/angular
@angular/core>= 17.0.0@angular/common>= 17.0.0
@reelkit/angular-reel-player
@reelkit/angular@angular/core>= 19.0.0lucide-angular>= 0.460.0
@reelkit/angular-lightbox
@reelkit/angular@angular/core>= 17.0.0lucide-angular>= 0.400.0
lucide-react はデフォルトのコントロールのアイコンにだけ使います。renderControls で独自のコントロールを渡す場合は、インストールを省けます。
lucide-angular はデフォルトのコントロールのアイコンにだけ使います。rkPlayerControls で独自のコントロールを渡す場合は、インストールを省けます。
TypeScript
すべてのパッケージに TypeScript の型定義が同梱されています。追加の @types パッケージは必要ありません。
ブラウザー対応
reelkit はすべてのモダンブラウザーで動作します:
- Chrome/Edge 88+
- Firefox 78+
- Safari 14+
- iOS Safari 14+
- Android Chrome 88+
次のステップ
- Core ガイド - フレームワークに依存しないエンジン
- フレームワークガイド - コンポーネント、デモ、組み込み方フレームワークガイド - コンポーネント、デモ、組み込み方フレームワークガイド - コンポーネント、デモ、組み込み方
- Reel Player - TikTok/Reels 風の動画プレイヤーReel Player - TikTok/Reels 風の動画プレイヤーReel Player - TikTok/Reels 風の動画プレイヤー
- Lightbox - 画像と動画のギャラリーLightbox - 画像と動画のギャラリーLightbox - 画像と動画のギャラリー
- Stories Player - Instagram 風のストーリービューアーStories Player - Instagram 風のストーリービューアーStories Player - Instagram 風のストーリービューアー