About This Project
This project showcases a cloud-based website architecture built and deployed on AWS.
It combines static hosting, global content delivery, HTTPS, custom domain configuration, and a serverless backend for the visitor counter.
The goal is to document an evolving production-style setup that reflects real cloud engineering practices, deployment workflows, and infrastructure design decisions.
AWS Services Used
Amazon S3
Object storage used to host the static website files (HTML and CSS).
CloudFront
CDN used to distribute the website globally and improve performance.
AWS Certificate Manager
SSL/TLS certificate for secure HTTPS delivery via CloudFront.
Route 53 / Custom Domain
Custom domain aggeliki.dev configured and connected to CloudFront.
AWS Lambda
Serverless Python function that handles visitor count logic without any server management.
Amazon DynamoDB
NoSQL database storing the visitor counter value, updated on every page visit.
API Gateway
HTTPS endpoint that connects the frontend to the Lambda function.
GitHub Actions
CI/CD pipeline that automatically validates and deploys on every push to main.
Deployment Workflow
VS Code
HTML Validation
+ CloudFront Invalidation
aggeliki.dev
Cloud Architecture
Static Delivery
Dynamic Counter
Future Improvements
Infrastructure as Code using Terraform
Security hardening with AWS WAF and CloudFront security headers
CloudWatch monitoring dashboard and SNS alerts
S3 bucket policy audit using Bash security scripts