Hosting a Professional Portfolio Website on AWS with Hugo

I built and deployed this portfolio website to showcase my projects and experience as a data analyst and cloud enthusiast. The site is powered by Hugo (a fast static site generator) and hosted entirely on AWS. It features a professional contact form, clean layout, dark/light theme support, and fully automated deployment. πŸš€ What I Did πŸ—οΈ Site Setup with Hugo Used the PaperMod theme for a clean and responsive design Created pages for blog posts, project case studies, and an about page Customized the config file for metadata, theme options, and menu items 🌐 AWS Hosting S3 Buckets: www.brianmwaura.com (main bucket with website files) brianmwaura.com (redirect bucket) brians-portfolio-site (legacy/test bucket) Route 53: Managed domain registration and DNS records CloudFront: Delivered content globally with HTTPS (SSL via ACM) Handled root redirects and caching πŸ” GitHub Actions for CI/CD Set up GitHub repo: Bnjenga1/hugo-portfolio Created a workflow to: Build site with Hugo Upload public/ directory to S3 Invalidate CloudFront cache πŸ“¬ Contact Page + Email Built a custom contact form using Formspree with JavaScript for UX improvements Set up a professional email alias info@brianmwaura.com via Google Workspace Ensured form styling adapts to both light and dark themes πŸ“Š SEO, Analytics & Monitoring Connected the site to Google Analytics 4 Submitted sitemap.xml to Google Search Console Added Open Graph and meta tags for better sharing and visibility 🧰 Tools & Services Used Static Generator: Hugo Hosting: AWS S3 + CloudFront CI/CD: GitHub Actions Domain Management: Route 53 Email: Google Workspace + Formspree Analytics: GA4 + Search Console πŸ’‘ Key Takeaways Learned to configure static hosting and CDN on AWS Set up secure and scalable infrastructure for a real-world personal project Practiced debugging Hugo layouts and customizing themes Automated deployments and version control with GitHub Improved UX with clean forms, responsive design, and reliable email contact πŸ”— Live Demo πŸ‘‰ www.brianmwaura.com ...

June 26, 2025 Β· 2 min Β· Brian Njenga Mwaura
AWS S3 Static Website

🌐 Hosting a Static Website on AWS S3

πŸ“ Project Overview In this project, I deployed a fully functional static website using Amazon S3 (Simple Storage Service). This task introduced me to cloud-based storage, object permissions, and static site hostingβ€”core skills for cloud computing and web deployment. 🎯 Objectives Learn how to create and configure an S3 bucket Upload and serve static content (HTML, CSS) Set object-level permissions for public access Enable static website hosting on S3 πŸ› οΈ Tools & Technologies ...

May 10, 2025 Β· 2 min Β· Brian Njenga Mwaura