{"id":47623080,"url":"https://github.com/binbashar/le-tf-infra-aws","last_synced_at":"2026-04-01T22:26:42.777Z","repository":{"id":37904307,"uuid":"175842832","full_name":"binbashar/le-tf-infra-aws","owner":"binbashar","description":"Terraform code for Leverage Reference Architecture for AWS, designed under optimal configs for the most popular modern web and mobile applications needs.","archived":false,"fork":false,"pushed_at":"2026-04-01T08:52:42.000Z","size":12542,"stargazers_count":36,"open_issues_count":27,"forks_count":10,"subscribers_count":8,"default_branch":"master","last_synced_at":"2026-04-01T10:30:24.857Z","etag":null,"topics":["bb-le-refarch","binbash-ref-architecture","binbash-refarch","ref-architecture"],"latest_commit_sha":null,"homepage":"https://www.binbash.co/leverage","language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/binbashar.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE-OF-CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"security/config/account.tfvars","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"binbashar"}},"created_at":"2019-03-15T15:10:47.000Z","updated_at":"2026-03-29T00:11:12.000Z","dependencies_parsed_at":"2026-01-09T00:06:42.811Z","dependency_job_id":null,"html_url":"https://github.com/binbashar/le-tf-infra-aws","commit_stats":null,"previous_names":[],"tags_count":268,"template":false,"template_full_name":null,"purl":"pkg:github/binbashar/le-tf-infra-aws","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binbashar%2Fle-tf-infra-aws","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binbashar%2Fle-tf-infra-aws/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binbashar%2Fle-tf-infra-aws/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binbashar%2Fle-tf-infra-aws/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/binbashar","download_url":"https://codeload.github.com/binbashar/le-tf-infra-aws/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binbashar%2Fle-tf-infra-aws/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31292639,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-01T21:15:39.731Z","status":"ssl_error","status_checked_at":"2026-04-01T21:15:34.046Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bb-le-refarch","binbash-ref-architecture","binbash-refarch","ref-architecture"],"created_at":"2026-04-01T22:26:42.042Z","updated_at":"2026-04-01T22:26:42.749Z","avatar_url":"https://github.com/binbashar.png","language":"HCL","funding_links":["https://github.com/sponsors/binbashar"],"categories":[],"sub_categories":[],"readme":"\u003ca href=\"https://github.com/binbashar\"\u003e\n    \u003cimg src=\"https://raw.githubusercontent.com/binbashar/le-ref-architecture-doc/master/docs/assets/images/logos/binbash-leverage-banner.png\" width=\"1032\" align=\"left\" alt=\"Binbash\"/\u003e\n\u003c/a\u003e\n\u003cbr clear=\"left\"/\u003e\n\n\u003ca href=\"https://github.com/binbashar\"\u003e\n    \u003cimg src=\"https://raw.githubusercontent.com/binbashar/.github/master/assets/images/binbash-aws-startups.png\" width=\"1032\" align=\"left\" alt=\"Binbash\"/\u003e\n\u003c/a\u003e\n\u003cbr clear=\"left\"/\u003e\n\n# Leverage Reference Architecture: OpenTofu/Terraform AWS Infrastructure\n\n## Overview\nThis repository contains all OpenTofu/Terraform configuration files used to create the Binbash Leverage Reference AWS Cloud Solutions Architecture.\n\n## Documentation\n- [Binbash Leverage Reference Architecture Official Documentation](https://leverage.binbash.co)\n- [Leverage CLI](https://github.com/binbashar/leverage) ([PyPI](https://pypi.org/project/leverage/))\n- [Binbash Module Library](https://github.com/binbashar/le-dev-tools/blob/master/terraform/Makefile)\n\n---\n\n## Getting Started\n\n### Prerequisites\n- [Leverage CLI](https://leverage.binbash.co/user-guide/leverage-cli/installation/) (v2.2.0+)\n- [OpenTofu](https://opentofu.org/docs/intro/install/) (\u003e= 1.6)\n- AWS SSO access configured for the target accounts\n- [uv](https://docs.astral.sh/uv/) (recommended for Python/Leverage CLI management)\n\n### Installation\n\n#### Option A: Install via pip (stable)\n```bash\npip install leverage\n```\n\n#### Option B: Install via uv (recommended for local development)\n[uv](https://docs.astral.sh/uv/) provides fast, reproducible Python environments without conflicting with system packages.\n\n```bash\n# Create a Python 3.12 virtual environment\nuv venv --python 3.12 .venv\n\n# Install the latest Leverage CLI release (or a specific version/pre-release)\nuv pip install leverage\n# For pre-release/release candidates:\n# uv pip install --pre leverage==2.2.0rc5\n\n# Activate the environment\nsource .venv/bin/activate\n\n# Verify\nleverage --version\n```\n\n\u003e **Note**: Leverage CLI v2.2.0+ runs OpenTofu natively (no Docker required). You need the `tofu` binary installed locally (e.g., `brew install opentofu` on macOS).\n\n### Setup and Workflow\n\n1. Authenticate with AWS SSO:\n   ```bash\n   leverage aws sso login\n   ```\n\n2. Navigate to the layer you want to work with:\n   ```bash\n   cd {account}/{region}/{layer}  # e.g., security/global/base-identities\n   ```\n\n3. Follow the standard workflow:\n   ```bash\n   leverage tofu init\n   leverage tofu plan\n   leverage tofu apply\n   ```\n\n4. Repeat for any desired Reference Architecture layer.\n\n### How it works\n\nThe `backend.tfvars` injects the AWS profile name with the necessary permissions that OpenTofu uses to make changes on AWS. This profile relies on AWS SSO to assume a cross-account role for each corresponding account ([AWS IAM: users, groups, roles \u0026 policies](https://leverage.binbash.co/user-guide/ref-architecture-aws/features/identities/identities/)).\n\nConfiguration files are automatically loaded by the Leverage CLI:\n- `config/common.tfvars` - Project-wide variables (project name, account IDs, SSO config)\n- `{account}/config/account.tfvars` - Account-specific variables (environment, SSO role)\n- `{account}/config/backend.tfvars` - Backend configuration (S3 bucket, profile, DynamoDB table)\n\nFor more details, see the [configuration files documentation](https://leverage.binbash.co/user-guide/ref-architecture-aws/configuration/#configuration-files) and the [standard workflow](https://leverage.binbash.co/user-guide/ref-architecture-aws/workflow/).\n\n## AI Development Configs\n\nThis repository includes pre-configured settings for AI-powered development tools to enhance productivity and maintain consistency across the codebase.\n\n### Supported IDE/AI Tools\n\n- **[Cursor IDE](.cursor/)** - AI-first code editor with project-specific rules\n  - [`.cursor/rules/`](.cursor/rules/) - Markdown rules for OpenTofu/Terraform best practices\n  - [`.cursor/mcp.json`](.cursor/mcp.json) - MCP server configurations for AWS and OpenTofu/Terraform documentation\n\n- **[Kiro IDE](.kiro/)** - AI development environment with steering documents\n  - [`.kiro/steering/`](.kiro/steering/) - Comprehensive documentation about the project structure, tech stack, and best practices\n  - [`.kiro/settings/mcp.json`](.kiro/settings/mcp.json) - MCP configurations for enhanced AWS/OpenTofu/Terraform support\n\n- **[Claude Code](CLAUDE.md)** - Anthropic's AI coding assistant\n  - [`CLAUDE.md`](CLAUDE.md) - Project instructions and context for Claude\n  - [`.claude/agents/`](.claude/agents/) - Specialized agent definitions (architect, security, terraform-layer, etc.)\n  - [`.mcp.json`](.mcp.json) - Root-level MCP server configurations (AWS Core, AWS Documentation, Terraform)\n\n### Usage\n\nThese configurations are automatically loaded when you open the project in the respective IDE/tool. They provide:\n- Context-aware code suggestions aligned with Leverage best practices\n- AWS and OpenTofu/Terraform specific assistance\n- Consistent code formatting and structure guidelines\n- Direct access to AWS documentation and OpenTofu/Terraform registry\n\n### Learn More\n\n- [Cursor Documentation](https://cursor.sh/docs)\n- [Claude Code Documentation](https://docs.anthropic.com/en/docs/claude-code)\n- [MCP Protocol Specification](https://modelcontextprotocol.io/)\n\n## Leverage CLI Reference\n\n### Project-wide commands\n```bash\nleverage --help               # Show all commands\nleverage --version            # Show version\nleverage aws sso login        # Authenticate with AWS SSO\nleverage run \u003ctask\u003e           # Run a build.py task (e.g., layer_dependency, decrypt, encrypt)\n```\n\n### Layer commands (run from a layer directory)\n```bash\nleverage tofu init              # Initialize the layer\nleverage tofu plan              # Preview changes\nleverage tofu apply             # Apply changes\nleverage tofu destroy           # Destroy infrastructure\nleverage tofu fmt               # Format code\nleverage tofu validate          # Validate configuration\nleverage tofu state list        # List resources in state\nleverage tofu state show \u003cres\u003e  # Show a specific resource in state\n```\n\n\u003e `leverage tf` is a shorthand alias for `leverage tofu`. Both run OpenTofu.\n\n## Release Management\n### [Reference Architecture | Releases](https://github.com/binbashar/le-tf-infra-aws/releases)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbinbashar%2Fle-tf-infra-aws","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbinbashar%2Fle-tf-infra-aws","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbinbashar%2Fle-tf-infra-aws/lists"}