farplotzy
v1.0.2
Published
Server-rendered plots for React
Maintainers
Readme
Farplotzy
Server-rendered plots for React.
The browser never draws anything. You describe the plot, the component posts that
description to the render backend, and the backend sends back a finished image.
A 200,000-point scatter plot costs the client exactly what a bar chart costs: one
request and one <img>.
Farplotzy is commercial software. See LICENSE.
Install
npm install farplotzyActivate
The package ships inactive. One binary turns it on:
/bin/cli-http-linux
There is no account, no signup, and no password. Activation generates a random UUID for this install, posts it to the activation service, and gets a render token back. The CLI prints the exact request body before sending it:
That is everything that leaves your machine. The install id is random — it is not derived from your hostname, username, or hardware, so it says nothing about the machine it came from. Nothing else on disk is read.
<Plot /> shows a placeholder while the image renders, aborts the request if the
spec changes mid-flight, and revokes the object URL on unmount. Any extra props
go straight to the <img>.
Outside React, or on the server:
const { renderPlot } = require('farplotzy');
const url = await renderPlot(
{ type: 'bar', data: { x: ['a', 'b'], y: [3, 7] } },
{ token: process.env.FARPLOTZY_TOKEN }
);API
<Plot />
| Prop | Type | Description |
| --- | --- | --- |
| type | string | line, bar, scatter, heatmap |
| data | object | Series data, shape depends on type |
| options | object | Title, size, axes, theme |
| token | string | Overrides FARPLOTZY_TOKEN |
| endpoint | string | Overrides the default render backend |
| alt | string | Alt text; defaults to "<type> plot" |
renderPlot(spec, opts)
Returns a Promise<string> — an object URL for the rendered image. Revoke it
yourself when you're done. Accepts {endpoint, token, signal}.
Self-hosting
Point both services at your own infrastructure:
FARPLOTZY_ACTIVATION_URL=https://licence.internal/v1/activate npx farplotzy activate<Plot endpoint="https://plots.internal/v1/render" ... />Development
npm testLicense
Commercial. See LICENSE.
