Installation
Install reelkit packages and configure your project.
Package Options
Install only what you use:
| Package | Description | Use Case |
|---|---|---|
@reelkit/core | Framework-agnostic core | Custom integrations |
@reelkit/react | React components | React 18+ applications |
@reelkit/react-reel-player | Full-screen vertical reel player | Instagram/TikTok style player |
@reelkit/react-lightbox | Image gallery lightbox | Full-screen image preview |
@reelkit/react-stories-player | Instagram-style stories player | Stories with auto-advance and gestures |
@reelkit/angular | Angular standalone components | Angular 17+ applications |
@reelkit/angular-reel-player | Full-screen vertical reel player | Instagram/TikTok style player |
@reelkit/angular-lightbox | Image gallery lightbox | Full-screen image preview |
@reelkit/vue | Vue 3 components and composables | Vue 3 applications |
@reelkit/vue-reel-player | Full-screen vertical reel player | Instagram/TikTok style player |
@reelkit/vue-lightbox | Image gallery lightbox | Full-screen image preview |
Bundle Sizes
All packages are optimized for minimal bundle impact:
| Package | JS | JS (gzip) | CSS | CSS (gzip) |
|---|---|---|---|---|
| @reelkit/core | 19.3 kB | 7.4 kB | - | - |
| @reelkit/react | 11.9 kB | 4.4 kB | - | - |
| @reelkit/react-reel-player | 15.9 kB | 5.1 kB | 9.7 kB | 2.1 kB |
| @reelkit/react-lightbox | 9.6 kB | 3.2 kB | 7.7 kB | 1.6 kB |
| @reelkit/react-stories-player | 17.8 kB | 5.6 kB | 7.5 kB | 1.7 kB |
| @reelkit/angular | 63.6 kB | 14.0 kB | - | - |
| @reelkit/angular-reel-player | 122.0 kB | 19.3 kB | - | - |
| @reelkit/angular-lightbox | 75.2 kB | 12.6 kB | - | - |
| @reelkit/vue | 13.5 kB | 4.7 kB | - | - |
| @reelkit/vue-reel-player | 19.1 kB | 5.8 kB | 9.7 kB | 2.1 kB |
| @reelkit/vue-lightbox | 13.3 kB | 4.0 kB | 6.8 kB | 1.4 kB |
Comparison with Other Libraries
ReelKit renders 3 slides to DOM at any time and handles 10,000+ items. Other carousel libraries render all slides, which stalls on large lists.
| Library | JS (gzip) | Virtualization | Notes |
|---|---|---|---|
| ReelKit (core + react) | 11.8 kB | Zero dependencies | |
| ReelKit (core + angular) | 21.3 kB | Zero dependencies | |
| ReelKit (core + vue) | 12.1 kB | Zero dependencies | |
| Swiper | ~25 kB | Plugin | Full bundle; tree-shakeable |
| Embla Carousel | ~7 kB | ✗ | Lightweight, plugin-based |
| keen-slider | ~6 kB | ✗ | Zero dependencies |
Peer Dependencies
Framework packages have peer dependencies that should already be in your project:
lucide-react is only needed for the default control icons. If you provide your own controls via renderControls, you can skip installing it.lucide-angular is only needed for the default control icons. If you provide your own controls via rkPlayerControls, you can skip installing it.TypeScript
All packages ship with TypeScript type definitions. No additional @types packages needed.
Browser Support
reelkit supports all modern browsers:
- Chrome/Edge 88+
- Firefox 78+
- Safari 14+
- iOS Safari 14+
- Android Chrome 88+
Next Steps
- Core Guide - framework-agnostic engine
- Framework Guide - components, demos, and integrationFramework Guide - components, demos, and integrationFramework Guide - components, demos, and integration
- Reel Player - TikTok/Reels-style video playerReel Player - TikTok/Reels-style video playerReel Player - TikTok/Reels-style video player
- Lightbox - image & video galleryLightbox - image & video galleryLightbox - image & video gallery
- Stories Player - Instagram-style stories viewerStories Player - Instagram-style stories viewerStories Player - Instagram-style stories viewer