leumas-delta-sdk
v1.0.0
Published
High-performance reactive delta tracking for Node.js and the Web. Track change, velocity, and trends in real-time signals.
Maintainers
Readme
Delta SDK
A high-performance, developer-friendly Node.js and Browser SDK for tracking delta variables.
Perfect for systems that need to react to how much a value changed and how fast, such as reactive music visuals, game loops, sensor streams, and financial tickers.
🚀 Features
- Blazing Fast: Designed for high-frequency updates (up to 1,000,000+ per second).
- Reactive: Subscribe to updates or set custom thresholds.
- Smart Metrics: Instant access to delta, absolute delta, percent change, direction, and velocity.
- Signal Processing: Built-in exponential smoothing for noisy sensor data.
- History & Snapshots: Optional history buffers for time-series analysis.
- Zero Dependencies: Pure JavaScript, ESM-first, and tiny footprint.
📦 Installation
npm install delta-sdk🛠 Quick Start
Basic Tracking
import { createDeltaVariable } from 'delta-sdk';
const speed = createDeltaVariable({ name: 'speed', initialValue: 0 });
speed.update(10);
speed.update(15);
console.log(speed.delta()); // 5
console.log(speed.direction()); // 'up'
console.log(speed.snapshot()); Managing Multiple Streams
import { createDeltaManager } from 'delta-sdk';
const deltas = createDeltaManager();
deltas.create('volume', 0.2);
deltas.create('bass', 0.1);
deltas.batchUpdate({ volume: 0.8, bass: 0.9 });
console.log(deltas.snapshotAll());🎨 Interactive Demo
Check out the /examples/web-visualizer folder for a real-time Music Visualizer.
- Open
index.html. - Drop an MP3 file.
- Watch the
Delta SDKdrive the visuals in real-time based on volume jumps and bass hits.
📖 Documentation
Full documentation is available in the /docs folder:
🔧 Configuration Options
| Option | Type | Default | Description |
|---|---|---|---|
| name | string | 'unnamed' | Label for the variable. |
| initialValue | number | 0 | Starting baseline. |
| smoothing | boolean | false | Enable exponential moving average. |
| smoothingFactor | number | 0.2 | 0-1 range (lower = smoother). |
| keepHistory | boolean | false | Store previous snapshots in a buffer. |
| historyLimit | number | 100 | Max snapshots to keep. |
| thresholds | object | {} | Define trigger points for absDelta, delta, etc. |
🧪 Testing
npm test📈 Benchmarks
npm run bench📄 License
MIT © Leumas Tech
