Modern, responsive personal portfolio built with Next.js and Tailwind CSS. Designed to showcase projects, skills, and personality with smooth interactions and clean visual design.
- Live site: https://d3cjdq9tq2wsde.cloudfront.net/
- Polished hero section with rotating role tagline and subtle animations
- Responsive from mobile to desktop, optimized typography and spacing
- Email-ready contact section (EmailJS setup included)
- Static export compatible for CDN hosting (S3/CloudFront, GitHub Pages, etc.)
- Amazon S3 (static asset hosting)
- Amazon CloudFront (global CDN + OAC to S3 origin)
- AWS IAM (least-privilege deploy role, scoped to S3 + CloudFront invalidation)
- Build:
next build && next export→ generates static assets inout/ - Storage: Amazon S3 bucket for hosting static site (private bucket is recommended)
- CDN: Amazon CloudFront in front of S3 with Origin Access Control (OAC)
# Install
npm install
# Run dev server
npm run dev
# Production build
npm run build
npm start # or: npm run preview if using a static host after export
# Optional: export static site
npm run build && npx next export
# Output will be in the out/ directoryOpen http://localhost:3000 to view.
src/
app/
layout.tsx # Root layout, global metadata
page.tsx # Homepage composition
globals.css # Tailwind base styles
components/
Hero.tsx # Rotating text, smooth scroll actions
About.tsx # Bio and value proposition
Projects.tsx # Projects showcase
Skills.tsx # Tech stack and proficiencies
Contact.tsx # Contact form / links
Navbar.tsx # Top navigation
Footer.tsx # Footer and social links
public/ # Images and static assets
- Static hosting (S3/CloudFront, GitHub Pages):
next build && next export, uploadout/
Automated build and deploy on push to main.
- Check out code and set up Node.js
- Install dependencies and build Next.js
- Export static site to
out/ - Sync
out/to S3 (delete removed files) - Invalidate CloudFront cache for immediate updates




