Skip to content

Notebook demo: RGB PWM design, SVG export from Python, tinyrocket split - #25

Merged
xtofalex merged 1 commit into
mainfrom
notebook-demo-svg-export
Oct 4, 2026
Merged

xtofalex merged 1 commit into
mainfrom
notebook-demo-svg-export

Conversation

@xtofalex

@xtofalex xtofalex commented Oct 4, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Schematic.export_svg(path=None, callback=None): the notebook can now get the schematic as SVG (what File > Export Schematic as SVG... saves). New export_svg push → the viewer answers with an svg_exported notification once its schematic shows something (AppState::svgExportRequested). ViewerSession keeps it in svg and calls one-shot callbacks. A pending export is asked again after each root_response, so an export requested before the view rendered isn't lost.
  • colab_test.ipynb → getting_started.ipynb, rewritten as a walkthrough around an RGB LED dimmer in SystemVerilog (shared 8-bit counter + 3 PWM channels, ~250 gates). "Trace to Driver" on a channel flop's D pin draws the 8-bit comparator cone across the hierarchy. New SVG export section.
  • tinyrocket.ipynb: tinyrocket moved to its own notebook. najaeda holds one design at a time, so with Run all every view showed tinyrocket.
  • Bump to 0.1.8.

Test plan

  • pytest python/tests: 107 passed, including both notebooks run by nbclient and new export tests
  • Native and WASM module builds
  • Ran the notebook in JupyterLab with the local bundle: with Run all, the SVG appears under the export cell and the file is written
  • RGB design loads with najaeda 0.7.25 (oldest supported) and latest
  • reuse lint passes
  • The colab job fails until 0.1.8 is on PyPI: the notebook uses the new export_svg API. Expected; it passes after the v0.1.8 tag.

🤖 Generated with Claude Code

- Schematic.export_svg(path, callback): an export_svg push; the viewer
  answers with an svg_exported notification once its schematic shows
  something. A pending export is asked again after each root load, so it
  survives a view that wasn't rendered yet.
- Rename colab_test.ipynb to getting_started.ipynb and turn it into a
  walkthrough around an RGB LED dimmer in SystemVerilog, with an SVG
  export section.
- Move tinyrocket into its own notebook (najaeda holds one design, so
  Run all would show it in every view).
- Bump to 0.1.8.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@xtofalex
xtofalex merged commit c8f7dd6 into main Oct 4, 2026
14 of 15 checks passed
@xtofalex
xtofalex deleted the notebook-demo-svg-export branch October 4, 2026 23:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant