π§ How I Built My Portfolio
This portfolio was a hands-on learning project where I combined multiple modern frontend technologies to showcase my work and personal brand. I built it using Next.js 13, TypeScript, Tailwind CSS, and MDX, ensuring itβs both beautiful and performance-optimized.
π― Goal
My goal was to create a clean, responsive site that:
- Reflects my skills as a frontend and full-stack developer
- Is optimized for performance and SEO
- Supports dynamic content via MDX
- Is enjoyable to build and maintain
π Features Implemented
- β Modern Tech Stack: Built using App Router from Next.js 13 with TypeScript
- π± Responsive Design: Ensured usability on mobile, tablet, and desktop
- π MDX + Contentlayer: For writing blog posts and project pages in Markdown with React components
- π‘ Framer Motion Animations: Added smooth transitions and scroll effects
- π» Syntax Highlighting: Configured with
rehype-pretty-code
for clean code blocks - β‘ Performance Optimized: Lighthouse score close to 100
- π Dark Mode: Light and dark theme support using Tailwindβs dark class
- π SEO-Ready: Metadata, open graph, and structured content
π οΈ Stack I Used
- Framework:
Next.js 13
(App Router) - Language:
TypeScript
- Styling:
Tailwind CSS
- Content:
Contentlayer + MDX
- Animation:
Framer Motion
- Icons:
Lucide-react
- Formatter:
Rome
(for fast linting/formatting) - Analytics:
Upstash Redis
(basic logging)
ποΈ Folder Structure
βββ app/ # App directory for routing and layout
βββ components/ # Reusable UI components
βββ content/ # MDX files (projects, posts)
βββ public/ # Static images and assets
βββ styles/ # Global Tailwind styles
βββ types/ # Custom TypeScript interfaces
βββ util/ # Helpers and utilities