# Install terraform-docs with Homebrew

Tool to generate documentation from Terraform modules. Version 0.24.0 via Homebrew; verified 2026-05-11.

## Install

```sh
sudo av install brew:terraform-docs
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install terraform-docs
```

  Evidence: provider-native install command

## Package facts

- **Package key:** brew:terraform-docs
- **Package manager:** Homebrew
- **Version:** 0.24.0
- **Source summary:** Tool to generate documentation from Terraform modules
- **Homepage:** <https://terraform-docs.io/>
- **Repository:** <https://github.com/terraform-docs/terraform-docs>
- **Last updated:** 2026-05-11T00:44:30Z
- **Generated:** 2026-08-03T00:40:33+00:00

## Executables

- terraform-docs (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 0.24.0
## Project history and usage

terraform-docs is a Terraform module documentation generator. It reads module inputs, outputs, providers, requirements, and related metadata, then renders that information into Markdown, AsciiDoc, JSON, YAML, XML, TOML, or other output formats for README files and automation workflows.

### Project history

The terraform-docs/terraform-docs repository was created on GitHub in June 2016, during the period when Terraform modules were becoming a common unit of infrastructure reuse. Its own README describes the project as a utility to generate documentation from Terraform modules in various output formats, and the dedicated terraform-docs.io documentation site grew into the primary user guide.

The project published v0.0.1 in June 2016 and continued as a Go CLI distributed through GitHub releases, Homebrew, Scoop, Chocolatey, Docker images, and `go install`. Later releases added a formal YAML configuration file, recursive module support, output injection, and richer formatter behavior, turning the tool from a README helper into a standard module-maintenance step.

### Adoption history

terraform-docs became widely adopted because Terraform modules need documentation that stays synchronized with code. The official README documents direct binary use, Docker use, a GitHub Action, and a pre-commit hook, which reflects its common adoption path in teams that gate infrastructure pull requests on generated README changes.

The package-manager footprint is broad for a Terraform adjunct CLI: the input package facts list Homebrew, Chocolatey, MacPorts, Nix, Scoop, and winget packaging. That breadth is consistent with a tool used by both local developers and CI systems rather than only by one language ecosystem.

### How it is used

The usual workflow is to run `terraform-docs` against a module directory and write or inject generated documentation into README.md. The README example uses `terraform-docs markdown table --output-file README.md --output-mode inject /path/to/module`, while the configuration guide documents `.terraform-docs.yml` discovery from the module root, `.config` subdirectories, the current directory, and `$HOME/.tfdocs.d/`.

In package-manager culture, terraform-docs is often installed as a single binary and pinned in pre-commit or CI. Its value is not only the rendered docs, but the reproducibility: maintainers can regenerate module docs from source and detect drift during review.

### Why package nerds care

terraform-docs is significant because it sits at the boundary between infrastructure-as-code and documentation-as-build-artifact. It gives Terraform module authors the kind of generated reference material that language package maintainers expect from API-doc tools, but in a standalone CLI that system package managers can distribute.

For Homebrew and other package-manager users, it is a classic small Go tool with high leverage: one executable, no service dependency, and obvious CI/pre-commit use. That makes it a common companion to Terraform, tflint, checkov, and other infrastructure review tools.

### Timeline

- 2016: GitHub repository created.
- 2016: v0.0.1 released.
- 2017: v0.1.0 and v0.3.0 released.
- 2020: Configuration options documented as available since v0.10.0.
- 2021: `.config` lookup paths documented as available since v0.15.0.
- 2026: v0.24.0 listed as the latest GitHub release during research.

### Related projects

- The official README documents a companion terraform-docs GitHub Action and pre-commit hook integration. It also fits into the wider Terraform module ecosystem, where generated README sections are commonly checked alongside Terraform source.

### Sources

- <https://api.github.com/repos/terraform-docs/terraform-docs>
- <https://github.com/terraform-docs/terraform-docs#readme>
- <https://github.com/terraform-docs/terraform-docs/releases>
- <https://terraform-docs.io/>
- <https://terraform-docs.io/user-guide/configuration/>
- source_facts.package-manager


## Security Notes

No matching local secret-handling manifest was found for terraform-docs. Nucleus package metadata is still published here so future coverage has a stable package URL.



## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: <module-root>/.terraform-docs.yml, <module-root>/.config/.terraform-docs.yml, ./.terraform-docs.yml, ./.config/.terraform-docs.yml, ~/.tfdocs.d/.terraform-docs.yml

## Combined YAML source

View the package source record on GitHub. [combined/terraform-docs.yml](https://github.com/automic-vault/db/blob/main/combined/terraform-docs.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- curated configuration and credential file locations
- curated package history
- pkgdb category and tag curation
