@grida/refig

Headless Figma renderer — render Figma documents to PNG, JPEG, WebP, PDF, or SVG in Node.js (no browser required) or directly in the browser.

Demo video

Key Features

  • Node.js and browser entrypoints
  • CLI and library API
  • Offline rendering from .fig files
  • REST API JSON input
  • Deterministic, CI-friendly exports

Quick start (Node.js)

import { writeFileSync } from "node:fs";
import { FigmaDocument, FigmaRenderer } from "@grida/refig";

const doc = FigmaDocument.fromFile("./design.fig");
const renderer = new FigmaRenderer(doc);

const { data } = await renderer.render("1:23", { format: "png", scale: 2 });
writeFileSync("out.png", data);
renderer.dispose();

Quick start (CLI)

# Render a single node
npx @grida/refig ./design.fig --node "1:23" --out ./out.png

# Export everything with Figma export presets
npx @grida/refig ./design.fig --export-all --out ./exports

For full documentation, API reference, and demo video, see the refig docs.