About This Project
            This project involved hosting a fully responsive static portfolio website using AWS S3 for static hosting, integrated with CloudFront for global content delivery and caching optimization.
            I configured a custom domain through Route 53 and secured it using an AWS Certificate Manager (ACM) SSL certificate for HTTPS.
            A CI/CD pipeline was established using GitHub Actions to automate deployment — every push to the main branch instantly syncs updates to the live site, ensuring zero manual uploads and real-time updates.
          
Key Features
- Automated GitHub → S3 → CloudFront CI/CD pipeline
 - Custom domain via Route 53 with SSL from AWS ACM
 - CloudFront caching for performance & low latency
 - Automatic HTTPS redirection
 - Zero-downtime deployments
 - Cost-effective, fully serverless architecture
 
Challenges & Solutions
            The biggest challenge was configuring CloudFront with a custom SSL certificate. At first, the certificate validation via AWS Certificate Manager failed multiple times because I was using Route 53 alongside Cloudflare DNS, and CNAME validation records were not propagating properly. I resolved this by switching DNS management entirely to Route 53, which allowed automatic validation within minutes.
            Another challenge was setting the correct CloudFront behaviors and S3 bucket policies. Initially, CloudFront couldn’t access the bucket due to restrictive permissions. I fixed it by creating an Origin Access Control (OAC) policy that granted CloudFront read-only access while keeping the bucket private.
            The CI/CD pipeline setup also took longer than expected. The deployment failed initially because of missing IAM permissions for GitHub Actions. I fixed it by generating an IAM user with limited S3 and CloudFront access keys and updating the workflow YAML to run the aws s3 sync and aws cloudfront create-invalidation commands.
            Overall, the process that I initially thought would take one day ended up taking around 3 to 4 days — mainly due to CloudFront propagation, SSL validation, and debugging IAM permissions.
          
Why I Chose This Approach
            I chose the S3 + CloudFront + Route 53 + GitHub Actions approach because it’s the most scalable, secure, and cost-efficient way to host static sites on AWS.
            While using simpler options like Netlify or Vercel would have been easier, this AWS-native setup gave me full control, taught me about IAM, DNS management, SSL configuration, and CI/CD pipelines all essential cloud skills for a future Cloud Practitioner.