A clean, modern personal portfolio website built with Next.js 14, React, Tailwind CSS, and shadcn/ui.
- 🎨 Modern, responsive design
- 🌓 Dark/Light mode with system preference support
- ✨ Smooth animations with Framer Motion
- 📱 Mobile-friendly
- ⚡ Built with Next.js 14 App Router
- 🎯 TypeScript for type safety
- Node.js 18.17 or later
- npm, yarn, or pnpm
- Clone the repository
- Install dependencies:
npm install
# or
yarn install
# or
pnpm install- Run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev- Open http://localhost:43210 in your browser
personal_website/
├── app/ # Next.js App Router
│ ├── about/ # About page
│ ├── experience/ # Experience page
│ ├── projects/ # Projects page
│ ├── contact/ # Contact page
│ ├── layout.tsx # Root layout
│ └── page.tsx # Home page
├── components/ # React components
│ ├── ui/ # shadcn/ui components
│ ├── Navbar.tsx # Navigation bar
│ ├── Footer.tsx # Footer
│ ├── ProjectCard.tsx # Project card component
│ └── ThemeToggle.tsx # Dark/light mode toggle
├── lib/ # Utility functions
└── public/ # Static assets
- Home Page: Edit
app/page.tsx - About Page: Edit
app/about/page.tsx - Experience: Edit
app/experience/page.tsx - Projects: Edit
app/projects/page.tsx - Contact: Edit
app/contact/page.tsx
Edit the projects array in app/projects/page.tsx:
const projects = [
{
title: "Your Project",
description: "Project description",
image: "/project-image.jpg",
github: "https://github.com/yourusername/project",
demo: "https://your-demo.com"
},
// Add more projects...
]- Push your code to GitHub
- Visit vercel.com
- Import your repository
- Click "Deploy"
Vercel will automatically detect Next.js and configure the build settings.
- Framework: Next.js 14
- Language: TypeScript
- Styling: Tailwind CSS
- UI Components: shadcn/ui
- Animations: Framer Motion
- Theme: next-themes
MIT