module block instantiates a reusable infrastructure module. Modules are composable units of infrastructure — a VPC module, an EKS cluster module, etc. — that can be sourced locally, from a registry, or from a Git repository.
Syntax
Source types
Local path
Strata registry
npm package
Git
Referencing module outputs
After declaring a module, its outputs are accessible asmoduleName.outputName. Module outputs are Pending (resolved after deploy, not at compile time):
Compile-time behavior
The typechecker registers the module name in scope and validates that properties reference valid names. It does not recursively typecheck the module’s source files. Full module resolution happens at deploy time via Pulumi.Duplicate module names
A module name must be unique across all.xcl files in the stack:

