Skip to content

Package Exports

Published files are under dist/. Import paths below match package.json exports.

Entry points

ImportUse when
velo-circuitCore API: editor, parser, layout, render, grid, plugins, DSL CodeMirror
velo-circuit/coreAlias of main entry (same symbols)
velo-circuit/vanillamountCircuitEditor, mountDslCodeMirror, mountCircuitWorkbench, createCircuitEditorVanilla
velo-circuit/reactuseCircuitEditor, useDslCodeMirror, useCircuitWorkbench, createReactCircuitEditor
velo-circuit/vueuseCircuitEditor, useDslCodeMirror, useCircuitWorkbench, createVueCircuitEditor
velo-circuit/sveltedslCodeMirror, circuitEditor, bindCircuitWorkbench, createSvelteCircuitEditor
velo-circuit/angularcreateAngularCircuitEditorAdapter (mount, mountDsl, mountWorkbench)
velo-circuit/astromountAstroCircuitEditor, mountAstroDslCodeMirror, mountAstroCircuitWorkbench

There is no separate velo-circuit/grid or velo-circuit/plugins subpath — import those from the main entry.

What to import for each task

TaskImport fromSymbols
Full interactive editorAdapter or velo-circuitcreateEditor, resolvePlugins('extended') or adapter preset: 'extended'
Lite embed (no app toolbar)Adapter or velo-circuitpreset: 'lite' or litePlugins()
Read-only schematicvelo-circuitrenderDslPreviewSvg
DSL text fieldvelo-circuitcreateDslCodeMirror
Circuit catalog tablevelo-circuitcreateCircuitGrid, importSpectrozCatalog
Parse / validate DSLvelo-circuitparseBoukamp, validate, createAdapter
Download DSL / SVG filesvelo-circuitbuildDownloadCircuitSvg, serializeAstForExport, sanitizeDslFilename, downloadTextFileExport guide
Custom editor UIvelo-circuitIndividual *Plugin() factories — Plugins API
React appvelo-circuit/reactuseCircuitEditor({ preset: 'lite' })
Vue appvelo-circuit/vueuseCircuitEditor({ preset: 'extended' })

Core export groups

Editor

createEditor, EditorInstance, EditorOptions, EditorPreset, allPlugins, litePlugins, minimalPlugins, resolvePlugins, plugin factories, createDslCodeMirror, buildDownloadCircuitSvg, serializeAstForExport, sanitizeDslFilename, downloadTextFile, copyTextToClipboard

Parser

parseBoukamp, serialize, validate, tokenize, createAdapter, resolveCircuitParams, formatMissingParams, ElementRegistry, StrictOptions

Layout

buildLayout, computeBounds, LayoutOptions, DEFAULT_LAYOUT_OPTIONS

Render

renderDslPreviewSvg, renderCircuit, exportSvgWithStyles, getTheme, ThemeMode, SymbolColorMode, ConnectionStyle

Grid

createCircuitGrid, importSpectrozCatalog, GRID_THEME_CSS, ensureGridThemeStyles

Domain

ElementKind, ELEMENT_KINDS, CircuitNode, CircuitDocument, persistence helpers — see Core API

Adapter preset option

All framework adapters accept:

ts
preset?: 'minimal' | 'lite' | 'extended'  // default: 'extended'

Re-exported as EditorPreset from each adapter package.

Dependencies

Runtime dependencies include @codemirror/* for the DSL field. The canvas and SVG pipeline do not require React/Vue. Framework packages are only needed when using those adapters.