@arbitrage/feather
v0.1.2
Published
Feather durable execution platform — Node.js SDK
Readme
@arbitrage/feather
Node.js SDK for Feather — enqueue tasks, run embedded workers, and optionally serve the monitoring UI.
Install
Published to npm:
npm install @arbitrage/featherRequires a running Feather server (FEATHER_ADDRESS, default localhost:50051).
Celery-style (embedded — recommended)
import { FeatherApp } from "@arbitrage/feather";
const app = new FeatherApp({
ui: { enabled: true, port: 3001 },
});
app.task("send-email", async (ctx) => {
const { to } = JSON.parse(ctx.payload.toString());
await sendEmail(to);
});
await app.startEmbedded(); // worker + UI at http://127.0.0.1:3001
await app.delay("send-email", { to: "[email protected]" });Dedicated worker (optional)
import { Worker } from "@arbitrage/feather";
const worker = new Worker({ queues: ["default"] });
worker.task("send-email", handler);
await worker.start();Publish
./scripts/bundle-protos.sh
./scripts/bundle-ui.sh
cd packages/sdk-node && npm publish --access publicDocs: https://docs.feather.dev
