Understand the build model

Updated Aug 05, 2026

Netsuke is a build-system compiler. A build moves through six stages:

  1. Read the manifest.
  2. Parse YAML 1.2.
  3. Expand manifest-time foreach and when expressions.
  4. Deserialize the typed manifest and render string fields.
  5. Build and validate a static intermediate representation (IR).
  6. Generate Ninja and, for build or clean, run Ninja.

All manifest-time decisions finish before Ninja starts. The generated graph is therefore static and inspectable.

A Netsukefile is executable build configuration, not passive data. Commands, scripts, and impure template helpers can access the host. Review an untrusted manifest with the same care as an untrusted Makefile.