SDK
Open-source packages on npm @spherescan.
| Package | Purpose |
|---|---|
@spherescan/model | Parse / serialize / validate SCAN YAML & JSON |
@spherescan/rules | Legal connection pairs + port checks |
@spherescan/viewer | Project model → board graph; SVG/PNG export |
@spherescan/modeler | Command stack: move, connect, create, auto-layout, undo |
@spherescan/cli | validate, export svg, … |
@spherescan/board | Shared React canvas (private in early releases; used by Sphere / whiteboard) |
Install
npm i @spherescan/model @spherescan/rules @spherescan/viewer @spherescan/modeler
npm i -D @spherescan/cli
Validate
npx scan validate ./architecture.scan.yaml
Embed a viewer
import { ScanViewer } from '@spherescan/viewer';
const viewer = new ScanViewer({ container: '#canvas' });
await viewer.importYAML(yamlString);
Modeler adds editing on the same model (command stack, create/connect/move, undo). Prefer public Scan* APIs (ScanModel, ScanViewer, ScanModeler). Legacy Sphere* / sphere: aliases remain for compatibility.
Source and issues: scan-js on GitHub.