Skip to content

projectParamsObject

The projectParams object defines properties for project types, typically pre-declared via a define in the domain parameter file. A projectObject’s type references a projectParams key. It currently carries only the Helix extension block.

key string
Unique identifier for the project type (a project’s `type` references this).
clone projectParamsKey
Inherit values from another project type.
helix helixObject
Helix-specific project configuration (see below).

The helix block is a Helix addition to projectParams (ignored by Spiral itself). It defines the project type’s lead stop and its server-side lifecycle hooks. onCreate / onComplete are "fnName()" specs resolved against the client crud module — see Backend hooks.

{
"onCreate": spec | null,
"onComplete": spec | null,
}
root stopParamsKey
The lead (root) stop type the project is built around. Creating a project from a customer template seeds its root stop with this type.
onCreate spec default null
Function called when a project of this type is created live (after scheduling has started), with `this` = the project — e.g. "stampCreated()". Runs before the write, so a stamped field persists.
onComplete spec default null
Function called once when every stop of the project has reached the DONE state, with `this` = the project.