{"id":29019623,"url":"https://github.com/senora-dev/terraform-aws-vpc","last_synced_at":"2026-02-02T02:04:21.010Z","repository":{"id":301182131,"uuid":"1000670533","full_name":"Senora-dev/terraform-aws-vpc","owner":"Senora-dev","description":"This Terraform module creates a VPC with a customizable network topology in AWS.","archived":false,"fork":false,"pushed_at":"2025-06-25T14:50:10.000Z","size":7,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-25T15:36:54.574Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Senora-dev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-12T06:33:58.000Z","updated_at":"2025-06-25T14:37:21.000Z","dependencies_parsed_at":"2025-06-25T15:36:57.540Z","dependency_job_id":"ed133788-9e90-4197-ac93-3a377339720e","html_url":"https://github.com/Senora-dev/terraform-aws-vpc","commit_stats":null,"previous_names":["senora-dev/terraform-aws-vpc"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/Senora-dev/terraform-aws-vpc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Senora-dev%2Fterraform-aws-vpc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Senora-dev%2Fterraform-aws-vpc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Senora-dev%2Fterraform-aws-vpc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Senora-dev%2Fterraform-aws-vpc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Senora-dev","download_url":"https://codeload.github.com/Senora-dev/terraform-aws-vpc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Senora-dev%2Fterraform-aws-vpc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29001541,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-02T01:32:03.847Z","status":"online","status_checked_at":"2026-02-02T02:00:07.448Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2025-06-26T00:31:22.984Z","updated_at":"2026-02-02T02:04:20.993Z","avatar_url":"https://github.com/Senora-dev.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AWS VPC Terraform Module\n\nThis Terraform module creates a VPC with a customizable network topology in AWS.\n\n## Features\n\n- VPC with custom CIDR block\n- Public, private, and database subnets across multiple Availability Zones\n- Internet Gateway for public subnets\n- NAT Gateway(s) with Elastic IPs for private subnets (configurable as single NAT or one per AZ)\n- Route tables for all subnet types\n- VPC Flow Logs support with CloudWatch or S3 destination\n- Flexible tagging system for all resources\n\n## Usage\n\n### Basic VPC with Public and Private Subnets\n\n```hcl\nmodule \"vpc\" {\n  source = \"Senora-dev/vpc/aws\"\n\n  name = \"my-vpc\"\n  vpc_cidr = \"10.0.0.0/16\"\n\n  azs             = [\"us-west-2a\", \"us-west-2b\", \"us-west-2c\"]\n  private_subnets = [\"10.0.1.0/24\", \"10.0.2.0/24\", \"10.0.3.0/24\"]\n  public_subnets  = [\"10.0.101.0/24\", \"10.0.102.0/24\", \"10.0.103.0/24\"]\n\n  enable_nat_gateway = true\n  single_nat_gateway = true\n\n  tags = {\n    Environment = \"dev\"\n    Terraform   = \"true\"\n  }\n}\n```\n\n### VPC with Public, Private, and Database Subnets\n\n```hcl\nmodule \"vpc\" {\n  source = \"path/to/terraform-aws-vpc\"\n\n  name = \"complete-vpc\"\n  vpc_cidr = \"10.0.0.0/16\"\n\n  azs              = [\"us-west-2a\", \"us-west-2b\", \"us-west-2c\"]\n  private_subnets  = [\"10.0.1.0/24\", \"10.0.2.0/24\", \"10.0.3.0/24\"]\n  public_subnets   = [\"10.0.101.0/24\", \"10.0.102.0/24\", \"10.0.103.0/24\"]\n  database_subnets = [\"10.0.201.0/24\", \"10.0.202.0/24\", \"10.0.203.0/24\"]\n\n  enable_nat_gateway = true\n  single_nat_gateway = false # One NAT Gateway per AZ\n\n  enable_flow_log = true\n  flow_log_destination_type = \"cloud-watch-logs\"\n\n  tags = {\n    Environment = \"prod\"\n    Terraform   = \"true\"\n  }\n}\n```\n\n## Requirements\n\n| Name | Version |\n|------|---------|\n| terraform | \u003e= 1.0 |\n| aws | \u003e= 4.0 |\n\n## Providers\n\n| Name | Version |\n|------|---------|\n| aws | \u003e= 4.0 |\n\n## Inputs\n\n| Name | Description | Type | Default | Required |\n|------|-------------|------|---------|:--------:|\n| name | Name to be used on all the resources as identifier | `string` | n/a | yes |\n| vpc_cidr | The CIDR block for the VPC | `string` | n/a | yes |\n| azs | A list of availability zones names or ids in the region | `list(string)` | n/a | yes |\n| public_subnets | A list of public subnets inside the VPC | `list(string)` | `[]` | no |\n| private_subnets | A list of private subnets inside the VPC | `list(string)` | `[]` | no |\n| database_subnets | A list of database subnets inside the VPC | `list(string)` | `[]` | no |\n| enable_nat_gateway | Should be true if you want to provision NAT Gateways | `bool` | `false` | no |\n| single_nat_gateway | Should be true if you want to provision a single shared NAT Gateway across all private networks | `bool` | `false` | no |\n| enable_flow_log | Whether or not to enable VPC Flow Logs | `bool` | `false` | no |\n| tags | A map of tags to add to all resources | `map(string)` | `{}` | no |\n\n## Outputs\n\n| Name | Description |\n|------|-------------|\n| vpc_id | The ID of the VPC |\n| vpc_arn | The ARN of the VPC |\n| vpc_cidr_block | The CIDR block of the VPC |\n| private_subnets | List of IDs of private subnets |\n| public_subnets | List of IDs of public subnets |\n| database_subnets | List of IDs of database subnets |\n| nat_ids | List of allocation ID of Elastic IPs created for AWS NAT Gateway |\n| natgw_ids | List of NAT Gateway IDs |\n| igw_id | The ID of the Internet Gateway |\n\n## Authors\n\nModule is maintained by Your Organization\n\n## License\n\nApache 2 Licensed. See LICENSE for full details.\n\n## Maintainers\n\nThis module is maintained by [Senora.dev](https://senora.dev). ","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsenora-dev%2Fterraform-aws-vpc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsenora-dev%2Fterraform-aws-vpc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsenora-dev%2Fterraform-aws-vpc/lists"}