Repolode
hashicorp

hashicorp/terraform

Infrastructure as code CLI that plans and applies declarative configuration files to create, change, and version cloud and service resources.

Stars
49,978
Forks
10,648
Open issues
1,920
Last commit
17 hours ago

What is it?

Terraform is a command-line tool for building, changing, and versioning infrastructure. You describe resources in a high-level configuration syntax, and Terraform works out how to create or update them through the APIs of cloud and service providers. Because the configuration is plain text, it can be stored in version control, reviewed, shared, and reused like other code.

Before making changes, Terraform generates an execution plan showing what it will create, modify, or destroy, so operators can review the impact before applying. It builds a dependency graph of resources and runs independent operations in parallel. Providers are loaded as plugins and can be downloaded automatically from the Terraform Registry, and custom in-house providers are also supported.

This repository contains only Terraform core: the CLI and the graph engine. Individual providers are maintained separately, by HashiCorp or by other organizations. The project is licensed under the Business Source License 1.1 rather than an OSI-approved open-source license.

Key features

  • 01Declarative configuration files that can be versioned and reviewed like code.
  • 02Execution plans show proposed changes before they are applied.
  • 03Resource dependency graph enables parallel creation and modification.
  • 04Plugin-based providers, downloadable from the Terraform Registry.
  • 05Support for custom in-house providers.

Use cases

  • Provisioning cloud infrastructure such as networks, compute, and databases across providers.
  • Standardizing environments so development, staging, and production are built from the same configuration.
  • Reviewing infrastructure changes through pull requests before they reach production.
  • Managing custom or internal services through a purpose-built provider.

Quick start

  1. 1

    Read the Getting Started guides on the Terraform website

Things to know

  • Licensed under the Business Source License 1.1, not an OSI-approved open-source license, which restricts some commercial uses.
  • This repository contains only Terraform core; providers are separate plugins downloaded from the Terraform Registry.

Topics

FAQ

What is terraform?
Infrastructure as code CLI that plans and applies declarative configuration files to create, change, and version cloud and service resources. Terraform is a command-line tool for building, changing, and versioning infrastructure. You describe resources in a high-level configuration syntax, and Terraform works out how to create or update them through the APIs of cloud and service providers. Because the configuration is plain text, it can be stored in version control, reviewed, shared, and reused like other code.
Is terraform free to use? What license does it have?
terraform is open source under the Other license. Check the license terms before using it in commercial products.
Is terraform still maintained?
Actively maintained. The last commit to terraform was on Oct 19, 2026.
What can I use terraform for?
Provisioning cloud infrastructure such as networks, compute, and databases across providers. Standardizing environments so development, staging, and production are built from the same configuration. Reviewing infrastructure changes through pull requests before they reach production. Managing custom or internal services through a purpose-built provider.
How do I install terraform?
Read the Getting Started guides on the Terraform website
Where can I get terraform?
The source code and installation instructions are on GitHub: https://github.com/hashicorp/terraform

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects