Why code over clicks
| Dashboard (imperative) | Monitoring as Code (declarative) |
|---|---|
| Click through UI forms | Define desired state in a file |
| Changes aren’t tracked | Version-controlled in Git |
| Hard to reproduce across environments | Same config deploys to staging and production |
| Manual reviews and handoffs | Pull request review before deploy |
| One change at a time | Atomic deploys across monitors, channels, and tags |
DevHelm’s two workflows
DevHelm supports both imperative and declarative workflows. They serve different needs.Imperative: “Do this now”
Declarative: “Make it look like this”
Choose your tool
| Tool | Best for | Format |
|---|---|---|
| YAML + CLI | Fast iteration, standalone monitoring configs | devhelm.yml |
| Terraform | Teams managing cloud infra alongside monitors | HCL (.tf) |
| Pulumi | Programmatic control with full language support | TypeScript, Python, Go |
| GitHub Action | Automated CI/CD deploys for any of the above | Workflow YAML |
The deploy lifecycle
Every MaC deployment follows the same pattern:Validate
Check config syntax offline — no API calls. Catches typos, missing required fields, and schema violations.
Plan
Compare your config against the current state. See exactly what will be created, updated, or deleted.
Next steps
YAML file format
Full schema reference for devhelm.yml.
Terraform provider
Manage monitors as Terraform resources.
Deploy workflow
Validate, plan, deploy in detail.
MaC tutorial
Step-by-step guide from scratch.