Collects inputs from multiple sources to ensure builds are deterministic and reproducible.
Persists builds, hashes, and caches between teammates and CI/CD environments.
Automatically downloads and installs explicit versions of Node.js and other tools for consistency.
Runs on common development platforms: Linux, macOS, and Windows.
Generates a project graph for dependency and dependent relationships.
Enforces boundaries to eliminate cycles and reduce indirection.
Works alongside package manager workspaces so that projects have distinct dependency trees.
Declare an owner, maintainers, support channels, and more, for LDAP or another integration.
Generates a dependency graph to increase performance and reduce workloads.
Executes actions in parallel and in order using a thread pool and our dependency graph.
Distributes actions across multiple machines to increase throughput.
With our smart hashing, only rebuild projects that have been touched since the last build.
Reduce flaky builds with automatic retries and passthrough settings.
Receive a webhook for every event in the pipeline. Useful for metrics gathering.
Receives notifications in your chosen terminal when builds are successful... or are not.
And many more features
Configuration & convention
- Use moon the way you want, but with some guard rails.
- Engineered to scale and grow for codebases of any size.
In developmentEnhance your pipeline with our @moonrepo npm packages.
Coming soonInspect and debug failing Node.js processes.
Coming soonGenerate build profiles that can be reviewed in Chrome.
Coming soonUtilize moon extensions in your favorite editor.