{"id":15766996,"url":"https://github.com/mayormaier/andrewmaier.dev","last_synced_at":"2026-05-05T05:33:18.601Z","repository":{"id":37833849,"uuid":"432376539","full_name":"mayormaier/andrewmaier.dev","owner":"mayormaier","description":"Personal Website via NGINX and Docker, also hosted serverlessly via AWS s3.","archived":false,"fork":false,"pushed_at":"2023-06-25T23:11:53.000Z","size":7829,"stargazers_count":1,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-10-11T13:38:52.758Z","etag":null,"topics":["aws-s3","docker","nginx","web"],"latest_commit_sha":null,"homepage":"https://andrewmaier.dev/","language":"Vue","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mayormaier.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2021-11-27T05:27:14.000Z","updated_at":"2023-03-05T07:30:03.000Z","dependencies_parsed_at":"2024-10-25T12:48:26.273Z","dependency_job_id":"b734e0dc-8025-45ab-a753-9b1c4caf398c","html_url":"https://github.com/mayormaier/andrewmaier.dev","commit_stats":{"total_commits":108,"total_committers":2,"mean_commits":54.0,"dds":"0.35185185185185186","last_synced_commit":"ecaedae7dc9d08b1efc01aa31fd3fae4abec8636"},"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mayormaier%2Fandrewmaier.dev","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mayormaier%2Fandrewmaier.dev/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mayormaier%2Fandrewmaier.dev/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mayormaier%2Fandrewmaier.dev/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mayormaier","download_url":"https://codeload.github.com/mayormaier/andrewmaier.dev/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246458000,"owners_count":20780677,"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":["aws-s3","docker","nginx","web"],"created_at":"2024-10-04T13:04:43.310Z","updated_at":"2026-05-05T05:33:13.568Z","avatar_url":"https://github.com/mayormaier.png","language":"Vue","funding_links":[],"categories":[],"sub_categories":[],"readme":"# andrewmaier.dev\n\n## Hosting via AWS\n\nThis was quite a *fun* project to undertake. Up to this point we have utilized CloudFormation to build our infrastructure which consists of the following:\n\n- s3 bucket (for hosting the site)\n- SSL certificate (used to provide HTTPS traffic)\n- CloudFront (acheives CDN caching in the US and Europe as well as providing HTTPS)\n\nThis is a good start, but there is still more to come. Some errors still persist, but they will be fixed in the coming weeks. Here are some of them:\n\n- No \"default\" index document can be explicitly defined for subdirectories\n  - [StackOverflow Article](https://stackoverflow.com/questions/31017105/how-do-you-set-a-default-root-object-for-subdirectories-for-a-statically-hosted)\n  - [AWS Docs: Lambda at Edge](https://aws.amazon.com/blogs/compute/implementing-default-directory-indexes-in-amazon-s3-backed-amazon-cloudfront-origins-using-lambdaedge/)\n- No logging has been implemented yet for the site\n- Somehow Google Domains sucks and doesnt let me add a CNAME alias for the root domain to point to cloudfront [Medium Article](https://medium.com/@sambecker/getting-cloudflare-cloudfront-s3-to-cooperate-over-strict-ssl-f70090ebdec)\n- Making seperate certifiacates for dev and prod sites\n\n[Reference 1 - AWS GitHub](https://github.com/aws-samples/amazon-cloudfront-secure-static-site/blob/master/templates/cloudfront-site.yaml)\n[Reference 2 - Medium](https://medium.com/swlh/aws-website-hosting-with-cloudformation-guide-36cac151d1af)\n[Reference 3 - More GitHub](https://github.com/Al-un/beerworld/tree/develop/aws/cloudformation-static-website)\n\n## Hosting via Docker and nginx\n\nThis configuration leverages docker and nginx to host the site in a portible manner. The site achieves many of the same goals as the AWS hosted site, although becuase we are serving a static site (as opposed to dynamic) it makes more sense to host the site in s3 vs in ECS. Thus, this solition allows a *multicloud* approach to solve my web hosting woes.\n\n- Docker (provides a containerized environment to run the web server *anywhere*)\n- nginx (hahaha no log4j for meeeee) (ok jokes aside, nginx is quite powerful, thus it has been a joy to learn)\n- LetsEncrypt (we utilize CertBot to provide an SSL certificate enabling HTTPS on our site)\n\n### General TODO\n\n- [Configure robots.txt](https://developers.google.com/search/docs/advanced/robots/create-robots-txt)\n- [Add GitHub Workflow to auto deploy new changes to s3 on new release](https://dev.to/johnkevinlosito/deploy-static-website-to-s3-using-github-actions-4a0e) - I may just write my own action\n- Separate CD workflow for prod and dev\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmayormaier%2Fandrewmaier.dev","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmayormaier%2Fandrewmaier.dev","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmayormaier%2Fandrewmaier.dev/lists"}