DigitalJS Schematic Viewer for VSCodeA VSCode extension that synthesises your Verilog / SystemVerilog files using the DigitalJS server and renders the full interactive circuit simulator directly inside a VSCode panel. Why this existsThe published DigitalJS VSCode extension bundles an old, frozen version of This extension uses the live server-side synthesis API from digitaljs.tilk.eu — so it stays up to date automatically — while rendering the circuit using the DigitalJS JavaScript library locally inside a VSCode webview. You get the full simulator experience without ever leaving your editor. Features
Requirements
InstallationFrom the
|
| Button | Action |
|---|---|
| ▶ | Start simulation |
| ⏸ | Pause simulation |
| ⏩ | Fast-forward (100 gate updates, no re-render) |
| → | Single step |
N (tick counter) |
Current simulation tick |
| − / + | Zoom circuit out / in |
| ⊡ | Fit circuit to panel |
Waveform toolbar:
| Control | Action |
|---|---|
| + / − | Zoom waveform in / out |
scale N |
Current pixels-per-tick |
| ◀ / ▶ | Scroll waveform left / right |
| Live | Jump to live (latest tick) |
range X – Y |
Currently visible tick range |
How it works
VSCode extension host (Node.js)
└─ HTTPS POST → digitaljs.tilk.eu/api/yosys2digitaljs
└─ receives circuit JSON
└─ postMessage → Webview
└─ new digitaljs.Circuit(json) ← CDN library, runs locally
└─ circuit.displayOn($('#paper')) ← JointJS diagram
└─ new digitaljs.MonitorView(…) ← waveform panel
Synthesis runs server-side (Yosys + yosys2digitaljs on the DigitalJS server). Everything else — rendering, simulation, interaction — runs locally in the VSCode webview using the DigitalJS npm package loaded from jsDelivr CDN. No binaries are bundled.
Known limitations
- Requires an internet connection for both synthesis and CDN libraries
- Synthesis is subject to the DigitalJS server's availability and supported constructs
- Very large designs may be slow to render (JointJS lays out all gates in the browser)
Credits
- DigitalJS by Marek Materzok (tilk) — the circuit simulator
- yosys2digitaljs — the synthesis backend
- Yosys — the open-source synthesis framework powering it all
License
MIT — see LICENSE