A terminal user interface (TUI) for visualizing Terraform runtime progress and output via JSON streams.
Pipeform is a terminal user interface (TUI) tool that visualizes Terraform runtime progress by processing JSON output from Terraform commands. It transforms machine-readable Terraform logs into an interactive display showing real-time operations, progress indicators, and resource status. The tool helps DevOps engineers and infrastructure developers monitor Terraform executions more intuitively than parsing raw JSON.
DevOps engineers, SREs, and infrastructure developers who regularly run Terraform plans and applies and want better visibility into runtime progress. It's particularly useful for teams managing complex Terraform configurations who need to track operation timing and output variables.
Pipeform offers a dedicated TUI for Terraform that provides real-time visual feedback, timing analytics via CSV exports, and clipboard integration for output variables—features not available in Terraform's default output. It enhances workflow efficiency without modifying Terraform itself, acting as a lightweight companion tool.
Terraform runtime TUI 🫧
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides an interactive TUI that displays live updates of Terraform resource operations, making it easier to track long-running applies and plans.
Generates CSV files with start and end timestamps for each resource operation, enabling performance benchmarking and optimization.
Includes a --plain-ui mode for headless environments like GitHub Actions, outputting log-style progress without a TTY.
Allows copying Terraform output values to the clipboard directly from the SUMMARY view, streamlining workflow after successful runs.
Only works with specific Terraform commands (refresh, plan, apply -auto-approve) that must include the -json flag, excluding other commands like destroy or state operations.
Clipboard functionality requires CGO and is only supported on certain platforms, limiting usability on some systems or in constrained environments.
Terminating during operation is complicated due to raw terminal mode; users must manually send signals to Terraform, as described in the FAQ.