JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 31
  • Score
    100M100P100Q90244F
  • License MIT

Framework-agnostic, virtualized, single-item slider engine with zero dependencies

Package Exports

  • @reelkit/core
  • @reelkit/core/package.json

Readme

@reelkit/core

npm Bundle size Star on GitHub

Framework-agnostic slider engine with zero dependencies. Provides virtualized rendering, gesture recognition, keyboard/wheel controllers, and a lightweight signal-based reactive system.

Installation

npm install @reelkit/core

Quick Start

import { createSliderController } from '@reelkit/core';

const slider = createSliderController({
  count: 100,
  direction: 'vertical',
});

// Navigate
slider.next();
slider.prev();
slider.goTo(5);

// Read state via signals
console.log(slider.currentIndex.value); // 5

// Subscribe to changes
slider.currentIndex.subscribe((index) => {
  console.log('Slide changed:', index);
});

Features

  • Virtualized — renders only 3 slides at a time, handles 10,000+ items
  • Zero dependencies — ~4.7 kB gzip
  • Controller pattern — factory functions (createSliderController, createGestureController, createKeyboardController, createWheelController)
  • Signal-based reactivity — lightweight Signal, ComputedSignal, and reaction primitives
  • Touch gestures — swipe with momentum, configurable thresholds
  • Keyboard & wheel — full navigation support with debouncing
  • Loop mode — infinite circular scrolling
  • Auto-size — optional ResizeObserver-based sizing
  • TypeScript — full type safety

Documentation

Full API reference and guides at reelkit.dev.

License

MIT