{"id":26163667,"url":"https://github.com/asasmith/cloud-resume-infra","last_synced_at":"2026-04-21T00:32:01.106Z","repository":{"id":281040037,"uuid":"943975891","full_name":"asasmith/cloud-resume-infra","owner":"asasmith","description":null,"archived":false,"fork":false,"pushed_at":"2025-03-06T16:33:07.000Z","size":40,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-06T17:36:25.969Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","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/asasmith.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":"2025-03-06T15:22:01.000Z","updated_at":"2025-03-06T16:33:10.000Z","dependencies_parsed_at":"2025-03-06T17:36:28.790Z","dependency_job_id":"5709b406-8160-4ebc-8af4-146a85542569","html_url":"https://github.com/asasmith/cloud-resume-infra","commit_stats":null,"previous_names":["asasmith/cloud-resume-infra"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asasmith%2Fcloud-resume-infra","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asasmith%2Fcloud-resume-infra/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asasmith%2Fcloud-resume-infra/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asasmith%2Fcloud-resume-infra/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/asasmith","download_url":"https://codeload.github.com/asasmith/cloud-resume-infra/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243053969,"owners_count":20228708,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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-03-11T14:38:01.798Z","updated_at":"2025-12-25T00:33:14.889Z","avatar_url":"https://github.com/asasmith.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Cloud Resume Challenge\n\nThis repo holds all of the infrastructure as code (iac) for my [Cloud Resume Project](https://cloudresumechallenge.dev/docs/the-challenge/aws/). The project reqs are:\n\n- Create a resume static website ([resume.asasmith.dev](https://resume.asasmith.dev))\n- Use a custom domain\n- Implement a visitor counter\n- Automate deployments\n- Utilize aws services (s3, cloudformation, cloudfront, dynamoDB, api gateway, lambda)\n- Leverage aws cdk for all resources\n\n## Goals\nI hope to gain a better understanding of aws services and how to manage those services via infrastructure as code. I would also like to have a more complete mental model of devops and devops best practices. I chose aws cdk because I have experience with js/ts and I've taken a Frontend Masters course that had a cdk portion (that course used Go).\n\n## Todo\n\n- [x] Create resume using html\n    - Repo setup [here](https://github.com/asasmith/cloud-resume-frontend)\n- [x] Add github action workflow to deploy updates to s3 ([workflow.yml](https://github.com/asasmith/cloud-resume-frontend/blob/main/.github/workflows/deploy.yml))\n- [x] Style resume with css\n- [x] Create s3 bucket for static website\n- [x] Add cloudfront distribution and acm cert for https\n- [x] Point custom domain to cloudfront distibution ([resume.asasmith.dev](https://resume.asasmith.dev))\n- [x] Add visitor counter to static web site\n- [x] Set up dynamoDB to track visitor count\n- [x] Add lambda func/api to interact with dynamoDB\n- [ ] Tests \n- [ ] Get cloud practitioner cert\n\n## Useful commands\n\n* `npm run build`   compile typescript to js\n* `npm run watch`   watch for changes and compile\n* `npm run test`    perform the jest unit tests\n* `npx cdk deploy`  deploy this stack to your default AWS account/region\n* `npx cdk diff`    compare deployed stack with current state\n* `npx cdk synth`   emits the synthesized CloudFormation template\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fasasmith%2Fcloud-resume-infra","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fasasmith%2Fcloud-resume-infra","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fasasmith%2Fcloud-resume-infra/lists"}