This project is a portfolio website created using Next.js. Its main purpose is to showcase my skills and projects, as if it were a resume. It uses Terraform to setup AWS resources (ACM, CloudFront, IAM, S3).
The DNS Hosting and the domain registration are done elsewhere due to AWS costs, but these two could easily be done exclusively using AWS Route 53. This means that the infrastructure is not fully managed by Terraform, and there are some manual steps to be done.
You can find the website at guilhermecaz.site.
If you'd like to build a website based on this project, you can clone the repository, modify the Next.js files, build the project, and use terraform to deploy it to AWS.
git clone https://github.com/guilhermecaz/serverless_portfolio.git
cd serverless_portfolio
npm install
cd src/app
npm run build
cd terraform
terraform init
terraform apply
Terraform will then output the CloudFront domain and ACM validation records. These should be used on the domain registrar / DNS provider.