{"id":25804770,"url":"https://github.com/sergiopichardo/spa-architecture","last_synced_at":"2026-02-05T07:01:47.716Z","repository":{"id":197895173,"uuid":"699599589","full_name":"sergiopichardo/spa-architecture","owner":"sergiopichardo","description":"Single Page Application (SPA) Cloud Infrastructure","archived":false,"fork":false,"pushed_at":"2023-10-16T00:28:35.000Z","size":364,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-18T13:47:57.435Z","etag":null,"topics":["acm-certificate","aws-cdk","cloudfront","cloudfront-functions","s3"],"latest_commit_sha":null,"homepage":"https://sergiopichardo.com/projects/spa-infra-on-aws","language":"HTML","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/sergiopichardo.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}},"created_at":"2023-10-03T00:27:11.000Z","updated_at":"2023-10-15T19:19:01.000Z","dependencies_parsed_at":"2025-02-27T18:59:26.047Z","dependency_job_id":"abd611df-ecde-4a27-8d4e-24acdc57d5ae","html_url":"https://github.com/sergiopichardo/spa-architecture","commit_stats":null,"previous_names":["sergiopichardo/spa-architecture"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sergiopichardo/spa-architecture","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sergiopichardo%2Fspa-architecture","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sergiopichardo%2Fspa-architecture/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sergiopichardo%2Fspa-architecture/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sergiopichardo%2Fspa-architecture/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sergiopichardo","download_url":"https://codeload.github.com/sergiopichardo/spa-architecture/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sergiopichardo%2Fspa-architecture/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29114956,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-05T05:31:32.482Z","status":"ssl_error","status_checked_at":"2026-02-05T05:31:29.075Z","response_time":65,"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":["acm-certificate","aws-cdk","cloudfront","cloudfront-functions","s3"],"created_at":"2025-02-27T18:53:40.793Z","updated_at":"2026-02-05T07:01:47.698Z","avatar_url":"https://github.com/sergiopichardo.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Single Page Application (SPA) Cloud Architecture \n\n![Single Page Application Cloud Architecture](/assets/static-website-infra.png)\n\n### Overview \n\nThis cloud infrastructure is centered around four major components: **Route 53** for DNS management, **CloudFront** to serve static assets, **AWS Certificate Manager** for TLS/SSL certificates, and **Simple Storage Service** (S3) to store these assets.\n\n\n#### Pre-requisites \n1. Register a new domain name with AWS Route 53\n2. Request an ACM Certificate associated with your Route 53 domain name\n3. Create CNAME records for the ACM Certificate through ACM Certificate AWS console\n4. Install and configure the AWS CLI\n5. Install and bootstrap the CDK CLI\n\n\n\u003e NOTE: Requesting an ACM SSL/TLS Certificate can take around 30 minutes or more\n### Exporting environment variables \n\nCreate an `.env` file and add the following environment variables listed in the `.env.example` file:\n```sh\nDOMAIN_NAME='example.com'\nSUBDOMAIN='www'\nROUTE_53_HOSTED_ZONE_ID='example.com hosted zone id'\nCERTIFICATE_ARN='ACM certificate ARN for example.com'\n```\n\n### Deploying the infrastructure \n\nVerify all there are no errors\n```sh\ncdk synth \n```\n\nDeploy CDK infrastructure \n```sh\ncdk deploy \n```\n\nDelete infrastructure \n```sh \ncdk destroy\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsergiopichardo%2Fspa-architecture","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsergiopichardo%2Fspa-architecture","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsergiopichardo%2Fspa-architecture/lists"}