Repository map

Orientation for contributors: where code and docs live in thundergraph-model (this package root).

Layout

Path

Purpose

tg_model/

Installable library — only this tree ships in the wheel.

tests/unit/, tests/integration/

Pytest suites (see Testing).

examples/

Domain examples (e.g. commercial aircraft, HPC datacenter); composable requirements use Requirement + requirement_package; not on PYTHONPATH unless you add them.

notebooks/

Jupyter walkthroughs; dev dependency in uv optional groups.

docs/user_docs/

Sphinx site sources — this manual (conf.py, user/, developer/, api/, drafts/).

docs/generation_docs/

Internal design / agent context — not the default end-user manual.

A longer file-level breakdown (Phase 2) lives in Repository Map (thundergraph-model).

Suggested reading order (new contributor)

  1. Quickstart (Concrete Example) — default evaluate path vs explicit pipeline (read this before diving into compiler details).

  2. Concept: Requirements — parameter / attribute / constraint (DEFAULT) — composable Requirement packages vs leaf model.requirement, package-level slots, allocate wiring.

  3. What ThunderGraph Model Is

  4. Execution Pipeline (Compile -> Instantiate -> Graph -> Evaluate)

  5. Developer architecture and Extension playbook

  6. Source: tg_model/model/definition_context.pytg_model/model/compile_types.py (requirement-package policy) → tg_model/execution/configured_model.pygraph_compiler.pyevaluator.py