The simulator is built using TypeScript (and a little Svelte). It renders the editor on an HTML5 canvas, with exception of the menu elements which are made using HTML and CSS. The editor is fully interactive, allowing you to drag and drop nodes, connect them together with wires, and simulate the circuit.