btree-time-index
v1.2.1
Published
Simple timestamped event index with time-range queries, built on btree-core.
Downloads
1,063,780
Maintainers
Readme
btree-time-index
Simple timestamped event index with time-range queries, built on btree-core.
Install
npm install btree-time-indexUsage
const TimeIndex = require('btree-time-index');
const events = new TimeIndex();
events.push({ type: 'login' }, Date.parse('2026-01-01T10:00:00Z'));
events.push({ type: 'click' }, Date.parse('2026-01-01T10:05:00Z'));
events.push({ type: 'logout' }, Date.parse('2026-01-01T10:10:00Z'));
events.between(
Date.parse('2026-01-01T10:00:00Z'),
Date.parse('2026-01-01T10:05:00Z')
);
// login + click
events.latest(1);
// [{ id, time, data: { type: 'logout' } }]API
| Method | Description |
| --- | --- |
| push(data, time?) | Append event (time defaults to Date.now()) |
| get(id) | Lookup by event id |
| between(from, to) | Events in inclusive time range |
| since(from) | Events at or after time |
| until(to) | Events at or before time |
| latest(limit?) | Newest N events (default 10) |
| delete(id) | Remove event |
| clear() | Remove all |
| toArray() | All events oldest → newest |
| size | Number of events |
License
MIT
