Skip to content

hhenson/hg_cpp

Repository files navigation

hg_cpp

A clean-slate, C++-first implementation of the hgraph functional-reactive time-series runtime. The C++ runtime is the source of truth. Python provides wiring compatibility and supports Python-authored nodes running inside that runtime.

Python preview

Preview builds are published under the hg_cpp distribution name:

python -m pip install hg_cpp

The distribution exposes the hgraph import package and the native _hgraph extension. Install it in an isolated environment rather than alongside the main hgraph distribution, since both provide the same Python import namespace. One platform wheel supports CPython 3.12 and later through the CPython stable ABI.

Build & test

cmake -S . -B build                 # configure (fmt + Catch2 fetched if absent)
cmake --build build -j              # build hgraph_core + tests
ctest --test-dir build --output-on-failure

Requires a C++23 compiler and CMake >= 3.25. Python/nanobind are not needed for the default build (bindings are opt-in via -DHGRAPH_BUILD_PYTHON_BINDINGS=ON).

Documentation

Sphinx docs live under docs/source (pip install -r docs/requirements.txt, then sphinx-build -W -b html docs/source docs/_build/html):

  • User guide — start at docs/source/user_guide/quick_start.rst, then the authoring/testing guides for nodes, graphs, and the eval_node harness.
  • Developer guide — the authoritative design records (docs/source/developer_guide/): architecture, data structures, wiring, nested graphs, mesh, services, error handling, operators, roadmap.

Contributing / AI sessions

  • AGENTS.md — canonical project direction: goals, build philosophy, source layout, dependency policy, git hygiene.
  • CLAUDE.md — the operational working guide: the enforced design-first workflow (docs change in the same commit as code), guardrails, architecture map, and current state.
  • The read-only ext/main tree is the canonical Python hgraph reference.

About

A C++ runtime engine for HGraph

Resources

Stars

0 stars

Watchers

1 watching

Forks

Packages

 
 
 

Contributors

Languages