@tsai-pe/board-core
v0.1.4
Published
Pipeline Editor — board state store, geometry and A* edge routing.
Maintainers
Readme
@tsai-pe/board-core
Framework-light state and logic for the
Pipeline Editor board —
pure TypeScript + Angular signals, no templates. Consumed by
@tsai-pe/board; usable standalone (headless) too.
Install
npm i @tsai-pe/board-corePeer deps: @angular/core ^21, @tsai-pe/nodes. @tsai-pe/models is a regular
dependency (installed automatically).
Exports
BoardStore— signal document store: nodes, edges, selection, history (undo/redo), clipboard, viewport; live validationissues,edgeGeometries(routed),ancestorsOf(id), and connection rules (canConnect: output→input, no cycle, fan-in allowed).Viewport— pan/zoom,screen ↔ world,zoomAround,fitTo.geometry— grid math,nodeRect,portAnchor, rect intersection, bezier edge path,GRID_CELL.routing— orthogonal A* edge routing on the 16-unit subgrid (avoids nodes and other edges; bezier fallback).
import { BoardStore } from '@tsai-pe/board-core';
const store = new BoardStore();
const id = store.addNode({ kind: 'trigger', title: 'Telegram', pos: { col: 0, row: 0 } });License
MIT © Mikhail Tsai
