Skip to content

Releases: bhuvan-raj/TerraLens

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 18 Jun 05:25

v0.2.0 — AI Capabilities

✦ AI HCL Scaffolding

Click AI Scaffold, describe what you want in plain English ("Create an S3 bucket with versioning"), and get valid Terraform code generated directly into an editable TUI text area — no browser, no copy-paste.

🩺 Context-Aware Error Explanations

When a terraform plan or apply fails, TerraLens now captures the raw terminal logs automatically. Click Explain Error and an AI analyzes the failure, explains what broke, and shows the HCL fix in a dedicated markdown panel.

🔌 Bring Your Own Model

Powered by an async Python AI engine. Plug in an OpenRouter API key (free models like Gemma 2 supported) or point the base URL at a local Ollama instance for complete state-file privacy — your .tfstate never leaves your machine.


Full changelog: https://bhuvan-raj.github.io/TerraLens/#changelog

v0.1.5

Choose a tag to compare

@github-actions github-actions released this 31 Mar 05:11
additional connected changes

v0.1.4

Choose a tag to compare

@github-actions github-actions released this 14 Mar 08:04

v0.1.4 — Infrastructure Blueprints 🏗️

This release introduces the most significant feature addition since launch — Infrastructure Blueprints, a guided wizard that generates complete, production-ready Terraform configurations with multiple interconnected resources in a single file.


What's New

🏗️ Infrastructure Blueprints The ➕ Add Resource button now offers two modes:

  • Build from Blueprint — generate a complete multi-resource infrastructure stack
  • Single Resource — existing flow to add one resource from the 334-resource AWS catalog

8 built-in blueprints available:

Blueprint Resources Generated
🌐 Public Web Server VPC, public subnet, IGW, route table, security group (HTTP/SSH), EC2
🔒 Public + Private with NAT VPC, public + private subnets, IGW, EIP, NAT Gateway, bastion EC2, private app EC2
⚖️ Load Balanced Web Application VPC, 4 subnets, NAT, ALB, target group, launch template, Auto Scaling Group
🏛️ Three-Tier Architecture VPC, 6 subnets (public/app/db), NAT, ALB, 2× EC2 app servers, RDS multi-AZ
☁️ Static Website Hosting S3, CloudFront, OAI, ACM certificate, Route53 zone + A/CNAME records
⚡ Serverless API IAM role, Lambda, API Gateway v2, DynamoDB, S3 assets bucket
☸️ EKS Kubernetes Cluster VPC, 4 subnets with K8s tags, NAT, cluster + node IAM roles, EKS cluster, managed node group
🔑 Lambda + IAM Role IAM execution role, basic policy attachment, Lambda function

Every blueprint generates fully connected HCL — all resources reference each other using Terraform expressions (aws_vpc.main.id, aws_subnet.main_public.id) with no hardcoded IDs.

3-step wizard flow:

  1. Pick a blueprint
  2. Fill in configuration fields (pre-filled with sensible defaults)
  3. Preview the generated HCL, edit the filename, then choose Write File or Write & Apply

Code Refactor

This release also ships the modular refactor of the codebase:

  • state.py — app config, sample state, load_state(), format_value()
  • catalog.py — AWS resource catalog (334 resources), HCL templates, provider list
  • blueprints.py — all 8 blueprint definitions and HCL renderer
  • cli.py — UI only, imports from the three modules above

Installation

# pip
pip install TerraLens==0.1.4

pipx

pipx install TerraLens

Binary — Linux

curl -L https://github.com/bhuvan-raj/TerraLens/releases/download/v0.1.4/insight-tf-linux -o terralens
chmod +x terralens
./terralens


Upgrade from v0.1.3

pip install --upgrade TerraLens

or

pipx upgrade TerraLens

v0.1.3

Choose a tag to compare

@github-actions github-actions released this 28 Feb 16:02

v0.1.3 — Stability Fix 🔧

This release resolves a critical startup crash that prevented the application from launching in all installation methods.


Bug Fixes

Fixed duplicate main() function causing startup crash
The cli.py entry point contained two conflicting main() functions. The first one — placed at the top of the file — called InsightTFApp() which was never defined, causing an immediate NameError on launch. The correct main() at the bottom of the file (which calls the actual InsightTF app with state file support) was never reached.

Removed stale from insight_tf.app import InsightTFApp import
A leftover import from an earlier refactoring attempt was pulling in a non-existent app.py module, causing ModuleNotFoundError on startup for both the pip-installed package and the pre-built binaries.

Rebuilt binaries now launch correctly on all platforms
Both the Linux and Windows binaries have been rebuilt with the fixed entry point. The application now correctly loads terraform.tfstate from the current working directory and launches the full dashboard on startup.


Installation

# pip
pip install TerraLens==0.1.3

# pipx
pipx install TerraLens

# Binary — Linux
curl -L https://github.com/bhuvan-raj/TerraLens/releases/download/v0.1.3/insight-tf-linux -o terralens
chmod +x terralens
./terralens

Upgrade from v0.1.2

pip install --upgrade TerraLens

# or
pipx upgrade TerraLens

v0.1.2

Choose a tag to compare

@github-actions github-actions released this 28 Feb 15:11

v0.1.2

What's included

📊 Overview Tab
High-level snapshot of your infrastructure — Terraform version, state serial, total resource count, provider count, and a full resource summary table.

⚙️ Manage Tab

  • Resource Tree — all managed resources grouped by type; click any leaf to inspect its full attribute map
  • Plan — streams real terraform plan output line-by-line into the terminal
  • Apply Now — runs terraform apply -auto-approve and auto-reloads state on success
  • Cost Estimate — Infracost-powered breakdown with per-resource monthly costs and totals
  • Drift Detection — runs terraform plan -refresh-only and reports exactly which resources have drifted and how
  • Add Resource — 3-step wizard: pick provider → browse 334 AWS resources across 20 categories → configure fields and preview generated HCL → write file or write & apply
  • Destroy — targeted destroy with a confirmation modal before execution
  • State Reload — press r at any time to reload state from disk

Installation

Binary (no Python required):

# Linux
curl -L https://github.com/bhuvan-raj/Insight-Q/releases/latest/download/insight-tf-ubuntu-latest -o terralens
chmod +x terralens
./terralens

PyPI:

pip install insight-tf
terralens

Supported platforms

  • Linux (Ubuntu, Arch, Fedora, and most glibc-based distros)
  • Windows

Known limitations

  • Azure and GCP resource catalogs are not yet available (coming in a future release)
  • macOS binary not included in this release
  • Requires python setup.py to be run once for Infracost authentication

What's next

  • macOS binary support
  • Azure and GCP resource catalogs
  • Multi-workspace support
  • terraform output viewer
  • Remote state backend selector

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 28 Feb 13:34
updated the app version pyproject to v0.1.1

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 28 Feb 13:02
87180eb
Update release.yml