A dark, editorial single-page portfolio — built once, configured from one file.
A single-page portfolio for a mobile software engineer & AI solution builder. Cinematic HLS video hero, GitHub-driven project cards, and scroll-driven motion — with all content living in one config file.
- 🎬 Cinematic hero — full-screen HLS video background with a GSAP entrance and a cycling role line.
- 🗂️ GitHub-driven work — project cards and a recent-projects list pull straight from repos; private/unreachable repos fall back gracefully to a placeholder and the GitHub profile.
- ⚙️ One-file config — name, links, copy, projects, and stats all live in
src/lib/content.ts; the browser tab title and favicon are generated from it at runtime. - 🎞️ Motion — Framer Motion scroll reveals, GSAP timelines, and a footer marquee.
- 📱 Responsive, forced-dark — Tailwind design tokens tuned from mobile to desktop.
- 🚀 Zero-touch deploy — push to
mainand GitHub Actions ships it to Pages.
React 18 · Vite 6 · TypeScript · Tailwind CSS v3 · GSAP · Framer Motion · hls.js · React Router
npm install
npm run dev # http://localhost:5173
npm run build # type-check + production build → dist/Edit the config block at the top of src/lib/content.ts — name, location, email, socials, projects, and stats. Everything (including the tab title and favicon) updates from there.
Every push to main triggers .github/workflows/deploy.yml, which builds the app and publishes dist/ to GitHub Pages.
