Data transfer across every medium
Spout is a data transfer framework designed at making sending data between applications, machines and protocols easy. Spout is a JavaScript/NodeJS framework which is split into libraries targeting each platform. This is the core library that houses the fundamentals.
Run the following to install Spout:
npm install spout --save
The most basic component is pipe
- Pipes are functions that accept data and move it onwards to a target. Targets can be other pipes, components or simple functions. Data is transferred throughout Spout within arrays.
const { pipe } = require("spout");
const p = pipe(console.log);
p([1, 2, 3]);
p([4, 5]);
// Asynchronously logged: [1, 2, 3, 4, 5]
Pipes can be connected to other pipes and components. One such component is transform
, which is essentially a pipe with a constructor more suited for providing a transform function. Each point of data is passed through the transformer.
const { pipe, transform } = require("spout");
const t = transform(x => x * 2, console.log);
t([1, 2]);
// Asynchronously logged: [2, 4]
const p = pipe(t);
p(8); // You can pass a single data point (non-array) as well
// Asynchronously logged: [16]