A dynamic, modern portfolio website built with Next.js, React, TypeScript, Tailwind CSS, and Framer Motion.
- 🎨 Dynamic Animations: Smooth scroll animations and interactive elements powered by Framer Motion
- 🎯 Modern UI: Beautiful glass-morphism effects, gradient backgrounds, and responsive design
- 📱 Fully Responsive: Optimized for all screen sizes from mobile to desktop
- ⚡ Performance: Built with Next.js for optimal performance and SEO
- 🎨 Custom Color Palette:
- Primary Black:
#000000 - Purple:
#9929EA - Pink:
#FF5FCF - Yellow:
#FAEB92
- Primary Black:
- Framework: Next.js 16
- Language: TypeScript
- Styling: Tailwind CSS
- Animations: Framer Motion
- Icons: Lucide React
- Node.js 20.9.0 or higher (required for Next.js 16)
- npm or yarn
⚠️ Important: This project requires Node.js 20.9.0 or higher. If you're using an older version, please upgrade using nvm or download from nodejs.org.
- Install dependencies:
npm install- Run the development server:
npm run dev- Open http://localhost:3000 in your browser.
npm run build
npm startportfolio-website/
├── app/
│ ├── globals.css # Global styles and Tailwind directives
│ ├── layout.tsx # Root layout component
│ └── page.tsx # Main page component
├── components/
│ ├── Navigation.tsx # Navigation bar with smooth scrolling
│ ├── Hero.tsx # Hero section with animations
│ ├── About.tsx # About me section
│ ├── Experience.tsx # Experience timeline
│ ├── Skills.tsx # Skills with animated progress bars
│ ├── Projects.tsx # Projects grid with modals
│ ├── Certifications.tsx # Certifications display
│ ├── Blogs.tsx # Blog posts section
│ ├── Contact.tsx # Contact form
│ └── FloatingParticles.tsx # Animated background particles
├── public/ # Static assets
└── package.json # Dependencies and scripts
Edit the data in each component file to update:
- Personal details in
components/Hero.tsxandcomponents/About.tsx - Experience in
components/Experience.tsx - Skills in
components/Skills.tsx - Projects in
components/Projects.tsx - Certifications in
components/Certifications.tsx - Blog posts in
components/Blogs.tsx - Social links throughout the components
The color palette is defined in tailwind.config.js and can be customized:
colors: {
primary: {
black: '#000000',
purple: '#9929EA',
pink: '#FF5FCF',
yellow: '#FAEB92',
},
}The easiest way to deploy is using Vercel:
- Push your code to GitHub
- Import your repository to Vercel
- Vercel will automatically detect Next.js and deploy
This Next.js app can be deployed to any platform that supports Node.js:
- Netlify
- AWS Amplify
- Railway
- Render
ISC
Vishnu Ram Murali