See it as a diagram
Everything below, as a diagram you can edit. Describe yours and see it in seconds.
No account needed · Editable canvas, not a picture
The AWS-specific parts of a good Terraform diagram
Icons carry AWS diagrams. An aws_eks_cluster should render with the EKS mark, aws_s3_bucket with the S3 mark, and a resource type the catalog does not know should still render with the Terraform mark rather than an anonymous box. Datadef maps the common AWS resource types to their icons and falls back honestly.
IAM is the hairball generator on AWS. Roles, policies, and attachments frequently outnumber the real infrastructure. They are classified as wiring: counted in a note, never drawn as boxes, so the diagram stays about the platform.
Containment is the AWS idiom: VPC contains subnets, subnets contain compute. Where the source declares those relationships, they render as nesting and placement instead of arrows.
Registry modules are half of real AWS repos
A typical production repo declares module "vpc" from terraform-aws-modules/vpc/aws and module "eks" from terraform-aws-modules/eks/aws rather than raw resources. Datadef recognizes those calls, draws each as one component with its source and version, and wires them through their references: module.eks consuming module.vpc.vpc_id becomes an edge from eks to vpc labelled vpc_id.
The hashicorp learn repo for EKS provisioning, three registry modules and almost no raw resources, comes out as exactly the three-node diagram a human would sketch: vpc, eks, and the IRSA role, with the real wiring. Repos that mix raw resources with registry calls get both, each drawn appropriately.
From connection to current diagram
Connect the GitHub, GitLab, or Azure DevOps repo read-only, pick the branch, and the first diagram generates immediately: no state file, no init, no AWS credentials. The daily sync keeps it matching the branch; unchanged commits are skipped.
The companion doc includes a generated module reference table, and the diagram embeds in your README or Confluence page as a live image that updates when the canvas does.
FAQ
Which AWS resource types get their own icons?
How is IAM handled?
Does it need AWS credentials or a state file?
What happens with terraform-aws-modules registry modules?
Can I edit the generated diagram?