
Security News
The Hidden Blast Radius of the Axios Compromise
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.
@stheine/ringbufferjs
Advanced tools
A ring buffer data structure for Node.js and the browser, extended with some functions for numeric data (sum, min, max, avg).
A ring buffer data structure for Node.js and the browser, extended with
some functions for numeric data (sum, min, max, avg).
This module is based on ringbufferjs by janogonzalez.
As component for the browser:
$ component install stheine/ringbufferjs
As npm for Node.js:
$ npm install @stheine/ringbufferjs
var RingBuffer = require('ringbufferjs');
var ring = new RingBuffer(2);
ring.enq(10);
ring.enq(5);
ring.enq(1); // 10 will be discarded
ring.size(); // 2
ring.peek(); // 5
ring.deq(); // 5
ring.size(); // 1
Initializes a new empty RingBuffer with the default capacity (50).
Initializes a new empty RingBuffer with the given capacity.
Returns the capacity of the ring buffer.
Dequeues the top element of the ring buffer.
Throws an Error when the buffer is empty.
Enqueues the element at the end of the ring buffer and returns its new size.
When the buffer is full the oldest element is discarded.
Returns whether the ring buffer is empty or not.
Returns whether the ring buffer is full or not.
Peeks at the top element of the ring buffer.
Throws an Error when the buffer is empty.
Returns the size of the ring buffer.
Returns all elements of the queue.
Throws an Error when the buffer is empty.
Returns the sum of all elements of the queue.
Throws an Error when the buffer is empty.
Returns the minimum of all elements of the queue.
Throws an Error when the buffer is empty.
Returns the maximum of all elements of the queue.
Throws an Error when the buffer is empty.
Returns the average of all elements of the queue.
Throws an Error when the buffer is empty.
As component in the browser, open test/test.html in your browser:
$ make
$ open test/test.html
As npm package:
$ npm test
MIT
FAQs
A ring buffer data structure for Node.js and the browser, extended with some functions for numeric data (sum, min, max, avg).
We found that @stheine/ringbufferjs demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.

Research
A supply chain attack on Axios introduced a malicious dependency, plain-crypto-js@4.2.1, published minutes earlier and absent from the project’s GitHub releases.

Research
Malicious versions of the Telnyx Python SDK on PyPI delivered credential-stealing malware via a multi-stage supply chain attack.