YEHO / ATLAS

Change altitude.
Keep your bearings.

See a project before its details. Follow things, actions, and relationships. Move between visual code, UI, and materials while Yeho source stays authoritative.

01 / CODE ALTITUDE

Projects → files → things → actions → data.

Atlas opens at project level. Select a card or zoom into it to reveal members. A function first shows its inputs, return type, and calls. Primitive operations are an explicit deeper view.

Atlas high-level project view
Actual native Atlas project view. Membership and relationships come from checked compiler facts.
  1. Run python products/atlas/tools/atlas.py run from the current Yeho checkout.
  2. Select a project, then a file, thing/class, or function. Follow call cards to another function.
  3. Use the wheel to zoom, drag empty space to pan, and use Up one level or Backspace to rise again.
  4. Select a parameter or field to inspect its datatype. Scalar byte sizes are labeled for the Windows x64 Kyber contract; dynamic allocations are not guessed.
  5. Choose Primitive operations when you need exact operations and source spans. Pair with the Yeho VS Code extension for shared buffers.

Direct unambiguous calls and named type use are shown. External, indirect, or ambiguous calls remain visible boundaries. Current limits are 2,048 scopes, 1,024 operations per scope, and bounded transport. This is not yet a qualification for arbitrarily large repositories.

02 / VISUAL UI

Arrange a screen. Change its real source.

Atlas YUI drag-and-drop editor
The same YUI design builder is read by Atlas and executed by the standalone application.
  1. Run python products/atlas/tools/atlas.py run --view ui.
  2. Drag a card, label, title, button, toggle, or rule from the palette onto the canvas.
  3. Drag an existing element to change its coordinates. Release commits one compiler-checked edit; Escape cancels.
  4. Use Undo to restore the previous source. An intervening source change cancels a stale gesture.
  5. Use Logic, then Primitive operations, to edit text, dimensions, and theme tone. Run the standalone example to exercise its real actions.
Get the commented YUI examples →

This first editing vocabulary admits straight-line literal YuiDesignElement list builders. Dynamic expressions, nested .yui flow layouts, arbitrary widgets, and full responsive constraints remain code-authored.

03 / VISUAL SHADERS

Explore a material as connected math.

Atlas Dolphin surface graph and material sphere
Previously verified native Mac capture of the Dolphin surface workshop.

Open Shader to inspect the Dolphin surface function. Change a color, roughness, metallic value, or wave input. Atlas compiles the captured source and refreshes its material sphere. Invalid source keeps the last image visibly stale.

The surface preview uses the CPU reference material contract. Yeho’s separate GPU compute lessons run real image kernels; arbitrary graph-to-GPU material export and Studio scene binding are not implied.

Continue to GPU shader lessons →

04 / OBSERVED STATE

See the state your application actually reports.

Atlas state machine and watched runtime values
Actual native state-machine view with explicitly emitted runtime snapshots.

The bundled state-machine example uses the same Yeho transition list for execution and its diagram. Space starts, pauses, and resumes; R resets. Atlas highlights the reported state and shows watched values and observed transitions.

  1. Build products/atlas/examples/state-machine with the explicit CPU reference backend.
  2. Set ATLAS_TRACE_PATH to an owned local snapshot path before running the example.
  3. Launch Atlas with --view debug --trace followed by that same path.
  4. Press Space in the example and watch the state and remaining time change. Pause it, reset it, and close it to see stale-data handling.

This is explicit live-state inspection, not a breakpoint debugger or automatic process-memory capture. The app chooses which values to expose. Missing transition observations are labeled, and old snapshots are marked stale.

One source. Several useful ways to understand it.

Start in the view that answers your question, then move closer only when you need more detail.