Skip to content
Get Plugin >

The Structure view provides a hierarchical outline of your Circom file, making it easy to navigate complex circuits.

ActionmacOSWindows/Linux
Toggle Structure viewCmd+7Alt+7

You can also access it via ViewTool WindowsStructure.

The Structure view shows a tree hierarchy of your file:

File.circom
├── template ComponentA
│ ├── input in1
│ ├── input in2
│ ├── output out1
│ ├── output out2
│ ├── var localVar1
│ └── component subComp
├── template ComponentB
│ ├── input x
│ └── output y
├── template MainCircuit
│ ├── input publicInput
│ ├── input privateInput
│ ├── output publicOutput
│ ├── var intermediateVar
│ ├── component processor
│ └── component validator
├── function helperFunction
└── function anotherHelper
  • Templates with all their members:
    • Input signals
    • Output signals
    • Internal signals
    • Variables
    • Component instances
  • Functions with their parameters
  • Main component declaration

Single-click an element to:

  • Highlight it in the Structure view
  • Scroll the editor to show that element
  • Click the arrow icons to expand or collapse sections
  • Double-click a group header to toggle all children

With the Structure view focused:

ActionKey
Navigate up/downArrow keys
ExpandRight arrow
CollapseLeft arrow
Jump to elementEnter

At the top of the Structure view, you can:

  • Search: Type to filter elements by name
  • Sort: Toggle alphabetical sorting
  • Show/Hide: Filter by element type (templates, functions, etc.)

Open the Structure view to quickly understand:

  • How many templates are in a file
  • What signals each template exposes
  • The overall organization of your circuit

Before refactoring, use Structure view to:

  • Identify all components and their dependencies
  • See which templates have many signals (potential complexity)
  • Plan your changes

During code review, Structure view helps you:

  • Navigate between templates quickly
  • Verify signal naming conventions
  • Check for consistent organization