# OVERVIEW
**What It Does:** Terraform modules allow users to create, reuse, and manage infrastructure configurations efficiently by encapsulating resources and making architecture recommendations.
**Why People Use It:** Users leverage Terraform modules for scalable, reusable, and composable infrastructure management, facilitating collaboration and standardization in infrastructure deployment.
[[Understanding the Value of Terraform Modules]]
# HOW TO USE IT
**Most Common Syntax:**
Modules are often called in a Terraform configuration using the `module` block, usually referencing a source like a GitHub URL or the Terraform Registry.
```hcl
module "example" {
source = "path/to/module/source"
# Additional module arguments
}
```
# COMMON USE CASES
- **Creating Reusable Infrastructure:** Using modules for standard configurations across different environments.
- **Self-Service Infrastructure Provisioning:** Allowing users to provision infrastructure through pre-configured modules.
- **Managing Complex Configurations:** Breaking down complex setups into manageable sub-modules for clarity and reusability.
- **Version Control:** Utilizing versioned modules from Terraform Registry for predictable deployments.
# RESOURCES
[Modules overview | Terraform | HashiCorp Developer](https://developer.hashicorp.com/terraform/tutorials/modules/module)