Skip to main content
VhyxChart

JavaScript API

Pipeline

import { parse, layout, renderSvg, compileTimeline, frameAt, renderAnimatedSvg, render } from '@vhyxchart/core';

const { diagram, diagnostics } = parse(source);   // never throws; parseStrict() does
const l = layout(diagram);                        // deterministic
const tl = compileTimeline(diagram, 0);           // scenario → timed actions
const svg = renderSvg(diagram, l, { frame: frameAt(tl, 1200) });   // any instant
const animated = renderAnimatedSvg(diagram);      // SMIL, no JS
const { svg: quick } = render(source, { animated: true });

Player

import { createPlayer } from '@vhyxchart/core/browser';

const player = createPlayer(element, source, { theme: 'auto', autoplay: true });
player.play(); player.pause(); player.step(1); player.seek(1500);
player.setScenario(1); player.setSpeed(2); player.setSource(next);
player.on('frame', (f) => …); player.toSvg(true); player.destroy();