Introduction
This page covers the same ground as What chant is, with paths for what to do next.
chant is a TypeScript-first infrastructure tool. You define cloud resources as plain TypeScript objects; chant type-checks them against a provider lexicon and writes deployment-ready output such as CloudFormation or Kubernetes YAML. It can also deploy that output and then watch it for drift or reconcile it. You write no YAML or string templates and keep no authoritative state file.
TypeScript source → chant build → provider-specific outputThe build is deterministic. Lexicons plug in on the input side, and you choose what runs after the build, per environment. The two sides differ today: lexicons are a shipped plugin contract, while a lifecycle is something you compose from Ops (plugging in a foreign backend is planned, not shipped). See What chant is for the whole design, or Lifecycle Models for the dial in depth.
“No state to manage” means no authoritative state file to host, lock or trust. chant still computes a precise create/update/delete plan against the live system, from ownership markers on the cloud resources (State and Governance). When an apply needs an approval that waits on a person, a rollback or a cadence, declare it as an Op. An Op runs in-process by default and on a hosted runtime when you ask.
You get real import/export, editor autocompletion and semantic lint rules that catch misconfigurations before deployment, in one local pass.
Choose Your Path
Section titled “Choose Your Path”- With a coding agent, hand it the copy-paste prompt. It installs chant, runs
chant init, and reads the generated skills before writing anything. - To learn hands-on, work through the getting-started example. It teaches chant in levels, starting with typed resources,
chant buildand the YAML it writes, and building up to deployment. Run it alongside Quick Start. - For deployments with phase visibility, gate steps and rollback, declare phases in
*.op.ts.chant runexecutes them in-process or on a steward. Start with Quick Start, then the Ops guide. Choosing Your Deployment Model helps you decide whether Ops fits. - To track drift and reconcile it, pick a position per environment on the
observe → reconcile → authoritativedial: report drift, opencloud → codePRs, or applycode → cloudbehind a gate. See Lifecycle Models and the Reconciling Lifecycle guide. - If you have many deployable units (services, tables, clusters, libraries), declare them in
*.component.ts. One orchestrator builds, publishes, signs, applies and rolls back each, with no pipeline per unit. See Components and Supply-Chain Attestations. - If you already have CI, ArgoCD, Terraform or another deploy tool, chant writes typed, linted artifacts for it and you skip the lifecycle stages. Quick Start covers this path. Lexicons are available for AWS, Azure, GCP, Kubernetes, Helm, k3d, k3s, Docker, GitHub Actions, GitLab CI, Forgejo, Fly Machines, Fountain, E2B, Render, Control Plane, and Cedar.
- Lexicon authors read Philosophy for the design rationale, then Lexicon Authoring to build a plugin.
- Contributors start with Development Setup, then the Architecture Overview.