A brief walkthrough of the architecture, tooling, and design decisions behind harshavemula.com — a fully serverless, cost-optimized portfolio with a resume-aware chatbot.


The short version

Every part of this site is serverless and runs entirely on AWS. The static content is served from a private S3 bucket through CloudFront over HTTPS on a custom domain. The chatbot at the bottom-right is an AWS Lambda function that calls Amazon Bedrock (Claude Haiku 4.5) with the resume injected into the system prompt, wrapped in Bedrock Guardrails for content and prompt-injection protection. Total operating cost is under one dollar per month, on top of the ~$12/year domain fee.


Architecture at a glance

Browser  ──HTTPS──▶  CloudFront (edge cache + TLS)  ──OAC──▶  Private S3 bucket (static site)
                     │
                     └──▶ chatbot.js in bundle  ──POST /chat──▶  API Gateway (HTTP API v2)
                                                                       │
                                                                       ▼
                                                                    Lambda (Python)
                                                                       │
                                                                       ▼
                                                              Bedrock Converse API
                                                              • Claude Haiku 4.5
                                                              • Guardrail attached

Static site

Custom domain

Chatbot