Terraform
Tool for building, changing, and versioning infrastructure.
Contents
Community
+
Get instant guidance on testing strategies, module patterns, CI/CD workflows, and production-ready infrastructure code.
Tools
tools/terraform-bundle
Artificial Intelligence Infrastructure-as-Code Generator
AirIAM is a tool for AWS IAM to least privilege Terraform execution framework.
Astro is a tool for managing multiple Terraform executions as a single command.
Unified workflow for collaborating on Terraform through GitHub.
A universal tool that converts deep merged YAML to module inputs.
automates the importing of existing AWS resources into Terraform and outputs the Terraform HCL code.
A tool to bring existing Azure resources under Terraform's management.
Interactive visualizations of Terraform dependency graphs.
A command line utility to facilitate terraforming your existing Cloudflare resources.
Cfnctl brings the Terraform cli experience to AWS Cloudformation.
Terraform static analysis tool for terraform>=0.12
AWS security auditing CLI with remediation engine that generates Terraform code for fixing misconfigurations.
Systematically manage external modules from Github for use in Terraform (written in Go).
Detect, track, and alert on infrastructure drift
Continuous infrastructure drift detection with historical tracking and notifications.
Systematically manage external modules from Github for use in Terraform (written in Ruby).
Terraform version manager.
A tool for eliminating toil in managing terraform repositories.
Generate terraform configuration from your existing resources within your AWS account.
A fuzzy-finder command-line tool for removing resources from terraform state.
Gaia is a Terraform UI for your modules, and self-service infrastructure .
Convert hcl2 to json.
Dump the HCL (v2) abstract syntax tree.
Go package to edit HCL configuration
A command line editor for HCL.
Syntax based grep for HCL(v2).
command-line HCL processor
Small tool to convert an IAM Policy in JSON format into a Terraform awsiampolicy_document
Cloud cost estimates for Terraform in your CLI and pull requests.
Read your tfstate or HCL to generate a graph specific for each provider, showing only the resources that are most important/relevant.
Convert JSON to HCL and vice versa.
Kubernetes YAML to Terraform HCL converter.
Scans IaC projects for security vulnerabilities, compliance issues, and infrastructure misconfiguration. Currently working with Terraform projects, Kubernetes manifests, Dockerfiles, AWS CloudFormation Templates, and Ansible playbooks.
Layerform helps engineers create reusable environment stacks using plain .tf files. Ideal for multiple "staging" environments.
Infrastructure as code generator from visual diagrams created with Cloudcraft.co to Terraform.
The missing 3rd-party plugin manager and a "Swiss army knife" for Terraform/Terragrunt - just 1 tool to facilitate all workflows.
Pike calculates the permissions or IAM policy required to build your Terraform.
Terraform runtime TUI
pre-commit git hooks to take care of Terraform configurations (auto-format, validate, update docs).
drop-in Terraform wrapper that generates Terraform configuration with Python. See pretf documentation
Prettyplan for TF 0.12+ (available online here) is a small tool to help you view large Terraform plans with ease.
Prettyplan (available online here) is a small tool to help you view large Terraform plans with ease.
The terminal user interface for terraform power users.
pytest terraform plugin with fixtures and offline replay support.
Systematically manage external modules from Github for use in Terraform.
Evaluates Terraform infrastructure-as-code for potential AWS, Azure, and Google Cloud security misconfigurations and compliance violations prior to deployment.
Next-generation red team infrastructure automation tool built on Terraform, supporting multi-cloud deployment (Alibaba Cloud, Tencent Cloud, AWS, etc.) with one-command deployment for creating, configuring, and destroying red team environments.
Sharable Config Presets for Renovatebot, especially useful for DevOps folks.
Interactive Terraform state and configuration explorer.
Simple Ruby wrapper for invoking terraform commands.
Sato helps you convert your legacy Cloudformation into Terraform.
Another Terraform plan output prettifier.
Simple Python tool to help with module development - extract vars from main.tf to generate variables.tf and make module usage stub from variables.tf.
Lightweight static analyzer for Terraform.
Stacks, the Terraform code pre-processor
The power of Ansible and Terraform + the simplicity of Docker Swarm = Infrastructure as Code and DevOps best practices.
Tau is a thin wrapper on top of terraform to manage multiple deployments, dependencies, and secrets.
OpenTofu/Terraform/Terragrunt version manager.
Web dashboard to inspect Terraform States.
DSL to generate a terraform configuration and run it.
Reads from existing Cloud Providers (reverse Terraform) and generates your infrastructure as code on Terraform configuration.
Cloud cost estimation for Terraform in your CLI.
Recursively test a directory tree for Terraform diffs and coverage.
Terraform state repository, based on the default http remote backend. Allows the central administration of tfstates on AWS S3.
Terraform destroy without configuration files.
Easy Terraform wrapper
AI-powered skill for GitHub Copilot, Claude, and ChatGPT that automates bulk Terraform module management — provider upgrades, workflow standardization, and releases across 10–200+ repositories on AWS, GCP, Azure, and DigitalOcean.
Get notified when actions are taken in the AWS Console.
CDK (Cloud Development Kit) for Terraform allows developers to use familiar programming languages to define cloud infrastructure and provision it through HashiCorp Terraform.
Tiny utility which detects unused variables in your terraform modules.
A Terraform "credentials helper" plugin that allows providing credentials for Terraform-native services (private module registries, Terraform Cloud, etc) via environment variables.
Always know where you need to run Terraform plan & apply!
Quick utility to generate docs from terraform modules.
Command line tool allowing to convert the barely usable output of the terraform graph command to something more meaningful and explanatory.
CLI validates AWS IAM Policies in a Terraform template against AWS IAM best practices.
(only 0.11 and earlier) Improve Terraform's plan output to be easier to read and understand.
A Kubernetes CRD to handle Terraform operations.
Command line utility and JavaScript API for parsing stdout from terraform plan and converting it to JSON.
Tool for managing multiple provisions of the same Terraform scripts.
Shared Rake tasks for managing terraform plans.
A terraform console wrapper for a better interactive console experience.
A simple but powerful tool to visualize Terraform plan.
Ansible dynamic inventory script for parsing Terraform state files.
CLI tool to generate terraform files from existing infrastructure. Infrastructure to Code. Supported many providers.
Export existing AWS resources to Terraform style (tf, tfstate). Similar to terraformer.
Apply\Destroy Terraform modules via a simple REST API endpoint.
A wrapper in Bash for easier CLI UX and DRY hierarchical configs
Generate Atlantis config for Terragrunt projects.
Terragrunt is a thin wrapper for Terraform that provides extra tools for keeping your Terraform configurations DRY, working with multiple Terraform modules, and managing remote state.
Command line utility aimed at providing supplementary functionality which can sometimes prove useful when working with Terraform.
TerraHub is terraform automation and orchestration tool. Seamlessly integrated into console.terrahub.io, enterprise friendly GUI to show realtime terraform executions, as well as auditing and reporting capabilities for historical terraform runs.
Wizard tool for create folders and terraform files automated, written in Python !
Tool for managing multiple Terraform stacks that comes with support for change detection and code generation
Terrap - a powerful CLI tool that scans your infrastructure and identifies any required changes.
Terrars is a tool for building Terraform stacks in Rust. This is an alternative to the CDK.
Collection of security and best practice test for static code analysis of terraform templates
Build orchestrator for terraform monorepos.
Visual Studio Code extension to monitor/deploy/destroy Terraform resources in your workspace
Terratag is a CLI tool that enables users of Terraform to automatically create and maintain tags across their entire set of AWS, Azure, and GCP resources.
A Pre-terraform routine that speedups terraform modules download for bulky blueprints.
Profiler for Terraform runs. Generate global stats, resource-level stats or visualizations.
A command-line utility to print the summary of the terraform plan
GitHub Actions collection for Opinionated Terraform Workflow
Generate Terraform moved blocks automatically for painless refactoring
CLI to notify the result of plan and apply as Pull Request comment.
A refactoring tool for Terraform.
Terraform version manager inspired by rbenv.
Terraform code generator for consistent codebase and DRY.
A CLI tool that integrates Terraform with OpenAI's GPT-3.5 Turbo to provide explanations for Terraform commands and concepts.
Utility to read in a Terraform plan file and dump it out in JSON.
A tool for converting Kubernetes YAML manifests to Terraform HCL
Terraform linter for detecting errors that can not be detected by terraform plan
Automating Terraform with the power of make.
Terraform utility to mask select output from terraform plan and terraform apply
A Terraform state migration tool for GitOps.
Go library and CLI to migrate Terraform Configuration and State
Rename Terraform resources and generate moved blocks
tfocus is a super interactive tool for selecting and executing Terraform plan/apply on specific resources. Think of it as an "emergency tool" - not for everyday use.
CLI to prevent malicious Terraform Providers from being executed
Terraform Provider Lint Tool.
A Terraform REPL, giving you a full shell experience. Readline based. No dependencies. Save config changes. History.
A Terraform utility to show Terraform plans with all the secret (sensitive) values revealed.
Framework for controlling multi-environment multi-component terraform-managed AWS infrastructure.
Schema inspector for Terraform providers.
Terraform static analysis tool that supports terraform <0.12 & >=0.12 & directly integrates with HCL parser for better results.
CLI utility to sort Terraform variables and outputs.
CLI Tool to do terraform xxx -target={...} interactively.
Display your Terraform module call stack in your terminal.
A textual user interface for Terraform state.
Update version constraints in your Terraform configurations.
tfvar scans your Terraform configurations or modules and extracts the variables into formats of your choice (tfvar, environment variables, etc.) for editing.
tfvaultenv reads secrets from HashiCorp Vault and outputs environment variables for various Terraform providers with those secrets.
Rubygem providing rake tasks for running Hashicorp Terraform sanely.
A CLI tool that helps you interact with Terraform via the Model Context Protocol (MCP), allowing AI assistants like Claude to manage and operate Terraform environments.
Terragrunt frontend for executing Terragrunt/Terraform through Docker.
Documenting your Threat Models with HCL
OpenTofu version manager inspired by tfenv
A package manager for Terraform providers.
cd inside [mono]repos without fatigue!
Zero-config wrapper that automatically injects Git metadata (commit SHA, branch, repo) into all Terraform-managed resources.
ValidIaC combines the best open-source tools to help ensure Terraform best practices, hygiene & security.
Systematically manage external modules from the module registry, git, or local directories for use in Terraform (written in Go).
CLI - Convert between YAML, TOML, JSON, and HCL. Preserves map order.
Automatically tag and trace infrastructure as code frameworks (Terraform, Cloudformation, and Serverless).
Compare Azure resources deployed in a subscription against resources managed by Terraform Enterprise (HCP & Selfhosted) workspaces when your cloud's resource tagging strategy is insufficient.
serverless.tf is an opinionated open-source framework for developing, building, deploying, and securing serverless applications and infrastructures on AWS using Terraform. Read more.
Terrashine is a terraform provider mirror1 implementation that works by automatically caching dependencies as providers are requested.
HashiCorp plugin for the [asdf](https://github.com/asdf-vm/asdf) version manager
CI
Tutorials and Blog Posts
Community Modules
Terraform modules for automated NIS2 compliance and secure infrastructure deployment.
Rancher server on digitalocean.
Configures production infrastructure with AWS, Docker, and ECS.
This Terraform module allows querying AWS accounts and outputs the accounts in various mappings or as a complete list, with the ability to apply a search filter to the account list and group the accounts by existing tags using a submodule.
Creates Application load-balancer on AWS (verified module).
Creates AWS AppConfig resources on AWS.
Creates Terraform configurations for running Atlantis on AWS Fargate. Github, Gitlab, and BitBucket are supported.
Creates Auto-Scaling Groups and Launch Configurations (verified module).
Creates Customer Gateway on AWS.
Creates resources on AWS to forward logs/metrics to Datadog.
Creates AWS DMS (Database Migration Service) resources on AWS.
Creates DynamoDB table on AWS.
Creates EC2 instances on AWS.
Manages Docker container registries on AWS ECR.
Creates AWS ECS resources on AWS.
Defines an EFS Filesystem.
Creates Elastic Kubernetes Service on AWS (very popular module).
Creates Elastic load-balancer on AWS (verified module).
Creates EventBridge resources on AWS.
EC2 Based Jenkins deployment with HA (spot) agents. Runs on EFS for immutability. Fully customizable, with sensible defaults.
Build a Docker image with Jenkins, saves it to an ECR repo, and deploys it to Elastic Beanstalk running a Docker stack.
Automatically Generate SSH Key Pairs (Public/Private Keys).
A terraform module to define a lambda function which source files are automatically built and packaged for lambda deployment.
Terraform module, which builds dependencies and packages, and also creates AWS Lambda resources in countless combinations.
Creates AWS Managed Service for Prometheus (AMP) resources on AWS.
Creates AWS MSK (Managed Streaming for Kafka) resources on AWS.
Creates SNS topic and Lambda function, which sends notifications to Slack.
Creates PostgreSQL on RDS.
Creates RDS Aurora cluster resources on AWS (verified module).
Creates AWS RDS Proxy resources on AWS.
Creates RDS resources on AWS (verified module).
Creates Redshift resources on AWS.
Creates Route53 resources on AWS.
Creates S3 bucket resources on AWS.
Set up your AWS account with the secure baseline configuration based on CIS Amazon Web Services Foundations.
Creates EC2-VPC security groups on AWS (verified module).
Terraform plan to deploy ssh bastion as a stateless service on AWS.
Creates Transit Gateway resources on AWS.
Creates VPC resources on AWS (verified and very popular module).
Creates VPN gateway resources on AWS.
Create AKS resources on Azure.
Install IIS Server on Azure VM instance.
Create MySql Database on Azure.
Create Redis on Azure.
Create SQl Server Database on Azure.
Module to create a Maintenance Page using Cloudflare Workers.
Provisions Jenkins on AWS ECS using Terraform.
Creates Terraform configurations for running Atlantis on Google Compute Engine.
Opinionated Google Cloud Platform project creation and configuration with Shared VPC, IAM, APIs, etc.
Kubestack is a framework for Kubernetes platform engineering teams to define the entire cloud native stack in one Terraform code base and continuously evolve the platform safely through GitOps.
A set of Terraform modules that are designed to deploy NixOS.
Creates static websites on AWS S3 & Cloudfront based on variables.
Creates bastion hosts on AWS EC2.
Minimal and free Kubernetes distribution with Terraform.
Self-Hosted Registries
Private Terraform registry implementation as an alternative to the official registry.
Private Terraform Module/Provider Registry with API key authentication and blob storage support
Private Terraform Module/Provider Registry
A private Terraform registry with modular store backends.
Private Terraform Registry Manager
Terraform registry to serve arbitrary Terraform provider releases hosted on Github
Private Terraform Registry.
Simple implementation of the Terraform registry protocols.
Terraform module registry.
Open Source terraform provider registry acting as a proxy for gitlab or github releases.
Terraform Private Registry for modules and providers manageable from a REST API.
Providers
Provider for Amazon Web Services.
Provider for Azure.
Provider for Docker.
Provider for Google Cloud Platform.
Provider for Helm.
Provider for Kubernetes.
Provider for VMware vSphere.
Vendor supported providers
Provider for Alibaba Cloud.
Provider for JFrog Artifactory.
Provider for Atlas.
Provider for Azure Resource Manager Rest API
Provider for Azure DevOps (VSTS).
Provider for Buildkite.
Manage Checkly resources for API & E2E monitoring.
Provider for Coder
Provider for Confluent.
Provider for Datadog.
Provider for DigitalOcean.
Provider for Dominos Pizza.
Provider for Elasticsearch and Kibana.
Provider for env0
Provider for GitHub.
Provider for GitLab.
Provider for GraphQL queries and mutations.
Provider for Hetzner Cloud.
Provider to manage healthchecks.io resources.
Provider for Heroku.
Provider for IBM Cloud.
Terraform plugin built with machine learning in mind.
Simple Kubernetes Provider, works with any manifest.
Provider to manage the settings of your Keycloak identity provider server.
Provider for Linode.
Plugin for OpenStack.
Provider for Palo Alto Networks next-generation firewalls.
Terraform provider for Phare.
Provider to manage Pingdom resources.
Provider for Rancher v2.
Provider for Scalr
Provider for SecretHub.
Provider for Signal Sciences.
Provider for Snowflake data warehouse.
Provider for Spinnaker.
Provider for spotinst.
Provider for Stripe.
Provider to manage UCloud resources.
Provider to manage uptimerobot resources.
Encrypted HashiCorp Vault secrets via Terraform that can be stored in SCM such as Git.
Provider for Splunk Cloud Platform.
Community providers
Terraform Docker provider.
Terraform provider for managing MinIO S3 buckets and IAM Users.
Terraform Proxmox provider.
Provider to make managed and unmanaged API calls to your target endpoint.
Uname Provider for Terraform.
Value Provider for Terraform.
Terraform provider for Multipass.
Terraform provider for Azure cost estimation and cost guardrails.
Testing
Community providers
A declarative test framework for Terraform for unit testing.
Provides a set of Test Kitchen plugins which enable a system to use Test Kitchen to converge a Terraform configuration and verify the resulting Terraform state with InSpec controls.
RSpec tests for your Terraform modules.
Assists in the enforcement of user-defined standards in Terraform.
BDD Testing for Terraform Files.
Terratest is a Go library that makes it easier to write automated tests for your infrastructure code.
Libraries
HCL parsing and encoding libraries for rust with serde support
HCL parser in Java
HCL parser plugin for Nushell
HCL parser in Python
HCL2 parser in Python
Pure Ruby HCL parser
HCL grammar for tree-sitter
Self-hosted Terraform Platforms
Fast, Secure and Reliable Terraform Backend. It has a user-friendly dashboard, project and environment management, state versioning, locking and snapshots support.
Open Terraforming Framework, an open source alternative to Terraform Enterprise with full Terraform CLI integration.
Open Source, codify unmanaged resources as Terraform, detect drift, and cloud cost and security analysis, delivered as a Pull Request.
OpenSource solution that defines and manages the complete lifecycle of resources used and provisioned into a cloud.
TACoS Kubernetes Operator - "ArgoCD for Terraform"
Terraform Enterprise Tooling
Terraform Enterprise Command Line Interface.
Terraform Enterprise API Ruby Client and Command Line tool.
Script for migrating Terraform Enterprise environments from Legacy to new version of Terraform Enterprise.
Simple shell for exploring remote terraform enterprise state, with autocomplete.
Editor Plugins
(Terraform Language Server)
(Language Server Protocol for Terraform)
Syntax highlighting for HCL