Overview
Architecture
- SST v4 manages the infrastructure as TypeScript code
- AWS hosts everything: Lambda for server-side rendering, S3 for static assets, CloudFront as the CDN
- Cloudflare manages DNS records (proxy disabled; SSL terminates at CloudFront via ACM)
- SST Secrets manage the GitHub token and analytics ID
- AWS SSM Parameter Store holds the Cloudflare provider credentials that the deployment wrapper passes to SST
Content System
- Blog posts are .mdx files in src/app/blog/posts/
- Project pages are .mdx files in src/app/work/projects/
- All personal info, work history, and skills live in a single content.tsx config file
What Made This Worth Building Properly
Tech Stack
- Next.js 16 (App Router) for the frontend
- React 19 for the component layer
- Once UI component library and design system
- MDX for blog posts and project pages
- SST v4 for infrastructure-as-code deployment
- AWS (Lambda, S3, CloudFront) for hosting
- Cloudflare for DNS management
- Google Analytics via @next/third-parties for lightweight traffic visibility
- GitHub for source control