A modern, responsive portfolio website built with Next.js 14, TypeScript, Tailwind CSS, and Framer Motion.
- Modern Stack: Built with Next.js 14, TypeScript, and Tailwind CSS
- Responsive Design: Looks great on all devices
- Dark Mode: Automatic and manual theme switching
- Animations: Smooth animations using Framer Motion
- Blog Support: MDX-based blog with syntax highlighting
- SEO Optimized: Meta tags and OpenGraph support
- Performance: Optimized for Core Web Vitals
- Type Safe: Full TypeScript support
- Component Library: Built with shadcn/ui components
- Clone the repository:
git clone https://github.com/yourusername/portfolio.git
- Install dependencies:
npm install
- Run the development server:
npm run dev
- Open http://localhost:3000 in your browser.
├── src/
│ ├── app/ # Next.js app directory
│ ├── components/ # React components
│ │ ├── magicui/ # Animation components
│ │ └── ui/ # UI components
│ ├── data/ # Data and content
│ └── lib/ # Utility functions
├── content/ # MDX blog posts
├── public/ # Static assets
└── styles/ # Global styles
- Next.js - React framework
- TypeScript - Type safety
- Tailwind CSS - Styling
- Framer Motion - Animations
- shadcn/ui - UI components
- MDX - Blog content
- Radix UI - Headless UI components
The blog is powered by MDX. To add a new blog post:
- Create a new
.mdx
file in thecontent
directory - Add frontmatter with title, date, and summary
- Write your content in MDX format
Example:
---
title: "My New Post"
publishedAt: "2024-01-01"
summary: "A brief summary of the post"
---
Your content here...
- Update
src/data/resume.tsx
with your information - Modify theme colors in
tailwind.config.ts
- Add your own components in
src/components
- Customize animations in
src/components/magicui
The project includes several reusable components:
BlurFade
: Fade-in animation with blur effectBlurFadeText
: Text animation with character-by-character supportDock
: macOS-style dock componentProjectCard
: Card component for showcasing projectsResumeCard
: Card component for work experience
# Run development server
npm run dev
# Build for production
npm run build
# Start production server
npm start
# Lint code
npm run lint
This project is licensed under the MIT License - see the LICENSE file for details.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
For any questions or feedback, feel free to reach out:
- Twitter: @vedantsx
- Email: [email protected]
- Website: vedant-dev.tech