In-memory MessageQueue with compile-time-immutable state.
npm install @lauf/queueA Typescript queue implementation with...
- a Promise-oriented, Generic API to build your own event loops
- queue limits to facilitate backpressure
- immutable queue state to facilitate time-travel debugging
Read the API Reference or the reference usages below.
``typescript
// Create a queue that accepts any values
const queue = createQueue();
// put an event in the queue
queue.send({
kind: "move",
x: 200,
y: 200,
});
// block until next event is available
const action = await queue.receive();
`
`typescript
// define an event type
interface Coordinate {
x: number;
y: number;
}
// Create a queue for typed events
const typedQueue = createQueue
// block until next event is available
const { x, y } = await queue.receive();
`
`javascript`
import { createQueue } from "@lauf/queue"; // for esm
const { createQueue } = require("@lauf/queue"); // for commonjs
`zsh``
npm install @lauf/queue